import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
网络设置
私网连接(PrivateLink)用于通过私有网络连接不同 VPC 中的服务,包含终端节点(Endpoint)与终端节点服务(Endpoint Service)两部分。
SaaS 仓库部署在 SelectDB Cloud 管理的 VPC 中。你可以在自己的 VPC 中创建终端节点,连接仓库的终端节点服务;也可以创建自己的终端节点服务,让仓库访问 VPC 内的数据源,例如 Hive Metastore、MySQL 和 Elasticsearch。
| 连接方向 | 资源管理方式 | 费用说明 |
|---|---|---|
| 私有网络访问 SelectDB | SelectDB Cloud 管理终端节点服务;你在自己的 VPC 中创建终端节点。 | SelectDB Cloud 不额外收费;终端节点实例和流量费用由云厂商收取。 |
| SelectDB 访问私有网络 | 你创建终端节点服务,并授权 SelectDB Cloud 创建终端节点与之连接。 | 需要承担云侧负载均衡等后端资源费用;该方向的终端节点实例和流量费用目前暂不由 SelectDB Cloud 向你收取。 |
登录 SelectDB Cloud 控制台,选择目标仓库,单击左侧导航栏的 连接。SaaS 仓库提供 公网连接 和 私网连接;BYOC 仓库的网络资源位于你的云账号中,需要结合部署时的 VPC、子网、安全组和访问控制配置使用连接页提供的地址。
私有网络访问 SelectDB
在自己的 VPC 中创建终端节点,让报表、画像、日志分析等应用通过私网访问仓库。
地域与可用区要求
终端节点应与目标终端节点服务位于同一地域,并选择服务支持的可用区及该可用区中的子网或交换机。创建时核对控制台提供的地域、服务名或服务 ID,以及云厂商展示的服务可用区。
如果业务所在的可用区不在服务支持范围内,可以在同一 VPC 内、服务支持的可用区中创建子网和终端节点,再通过 VPC 内网访问。需要确保子网之间的路由、网络 ACL 和安全组允许相应流量。跨可用区流量的计费规则由云厂商决定。
跨账号配置亚马逊云科技资源时,应核对可用区 ID,而不是仅比较可用区名称;不同账号中的可用区名称可能对应不同物理可用区。
阿里云
- 在 连接 > 私网连接 > 私有网络访问 SelectDB 中,单击 新建连接。
- 在 参数信息 中复制 终端节点服务名 和 地域。如页面展示 仓库私有域名,同时记录该域名,用于后续 DNS 配置。
- 使用表单中的 创建一个或多个终端节点 链接,进入阿里云 PrivateLink 控制台,在相同地域单击 创建终端节点,配置以下参数。
| 参数 | 说明 |
|---|---|
| 节点名称 | 设置便于识别用途的名称。 |
| 终端节点类型 | 选择接口终端节点。 |
| 终端节点服务 | 使用 SelectDB Cloud 提供的服务名或对应服务 ID 查找目标服务。 |
| 专有网络 | 选择应用程序或客户端所在的 VPC。 |
| 安全组 | 允许客户端访问仓库使用的协议和端口。Stream Load 还需要放行目标集群端口。 |
| 可用区与交换机 | 选择终端节点服务支持的可用区,以及该可用区中的交换机。 |
- 创建后,等待终端节点变为“可用”,连接状态变为“已连接”。
- 返回 SelectDB Cloud 的 新建连接 表单,在 终端节点信息 中填写 终端节点 ID,按需填写 描述,单击 保存。
- 刷新私网连接列表,查看 域名 / IP 以及对应的连接方式。开启 TLS 或 HTTPS 时,按下文配置内网 DNS 后再连接。
配置内网 DNS
- 在阿里云控制台进入 云解析 DNS > 内网域名解析(Private Zone 和自建 DNS),单击 添加域名(Zone)。
- 创建连接域名所属的内网 Zone。例如,连接域名以
.selectdb.com结尾时,Zone 为selectdb.com;在生效范围中选择终端节点所在 VPC。 - 进入该 Zone 的 解析设置,单击 添加记录,类型选择
CNAME。 - 主机记录填写控制台 仓库私有域名 中相对该 Zone 的前缀;记录值填写阿里云终端节点详情中的服务域名。确认最终完整记录名与 SelectDB Cloud 提供的私网域名一致。
- 在客户端所在网络验证该域名可以解析到终端节点,并使用私网连接弹窗生成的命令或 URL 连接。
腾讯云
- 在 连接 > 私网连接 > 私有网络访问 SelectDB 中,单击 新建连接。
- 在云账号授权步骤中填写腾讯云 主账号 ID 和 APPID,单击 确认 添加允许连接的云账号。已有授权账号时,单击 下一步。
- 复制 参数信息 中的 终端节点服务 ID、地域 和 账户 UIN;如展示 仓库私有域名,同时记录该域名。
- 进入腾讯云私有连接控制台,在相同地域新建终端节点,配置以下参数。
| 参数 | 说明 |
|---|---|
| 名称 | 设置便于识别用途的名称。 |
| 所属网络、所属子网 | 选择客户端所在的 VPC,以及服务支持的可用区中的子网。 |
| IP 地址 | 可自动分配,或手动指定子网内可用地址。 |
| 对端账户类型 | 跨账号访问时选择其他账户。 |
| 对端账户 UIN | 填写 SelectDB Cloud 参数信息 中提供的账户 UIN。 |
| 终端节点服务 ID | 填写 SelectDB Cloud 提供的服务 ID,并完成服务验证。 |
- 等待终端节点变为“可用”。返回 SelectDB Cloud 表单,填写 终端节点 ID 和可选的 描述,单击 保存。
- 刷新私网连接列表,查看终端节点连接信息。开启 TLS 或 HTTPS 时,按下文配置内网 DNS。
配置内网 DNS
- 在腾讯云控制台进入 腾讯云解析 DNSPod > 私有域解析 Private DNS > 内网解析,单击 新建私有域。
- 创建连接域名所属的私有域。例如,连接域名以
.selectdb.com结尾时,填写selectdb.com,并关联终端节点所在 VPC。 - 进入该域名的 解析 页面,单击 添加记录,类型选择
A。 - 主机记录填写 SelectDB Cloud 私网域名中相对该私有域的前缀,记录值填写腾讯云终端节点的 IP 地址。该 IP 可在 私有网络 > 私有连接 > 终端节点 详情中查看。
- 确认最终完整记录名与 SelectDB Cloud 提供的私网域名一致,并在客户端网络验证解析。
华为云
- 在 连接 > 私网连接 > 私有网络访问 SelectDB 中,单击 新建连接。
- 复制 参数信息 中的 终端节点服务名 和 地域;如展示 仓库私有域名,同时记录该域名。
- 在华为云 VPC 终端节点控制台切换到相同地域,单击 购买终端节点,配置以下参数。
| 参数 | 说明 |
|---|---|
| 区域 | 与仓库终端节点服务所在地域一致。 |
| 服务类别 | 选择按名称查找服务。 |
| 服务名称 | 填写 SelectDB Cloud 提供的终端节点服务名并验证。创建内网域名后可获得终端节点内网域名。 |
| 虚拟私有云、子网 | 选择客户端所在 VPC,以及服务支持的可用区中的子网。 |
| 节点 IP | 自动分配或手动指定子网内可用 IP。 |
| 访问控制、白名单 | 根据业务需要配置。开启访问控制时,仅允许白名单中的来源访问;白名单支持至多 20 条记录。 |
- 等待终端节点连接被接受。返回 SelectDB Cloud 表单,填写 终端节点 ID 和可选的 描述,单击 保存。
- 刷新私网连接列表,查看终端节点连接信息。开启 TLS 或 HTTPS 时,按下文配置内网 DNS。
配置内网 DNS
- 进入华为云 云解析服务 DNS > 内网域名,单击 创建内网域名,选择终端节点所在区域和 VPC。
- 域名填写 SelectDB Cloud 私网连接域名所属的后缀。例如,连接域名以
.selectdb.cloud结尾时,填写selectdb.cloud。 - 创建完成后单击 管理解析 > 添加记录集,记录类型选择
CNAME。 - 主机记录填写 SelectDB Cloud 私网域名中相对该内网域名的前缀;记录值填写华为云终端节点详情中的内网域名。
- 确认最终完整记录名与 SelectDB Cloud 提供的私网域名一致,并在客户端网络验证解析。
亚马逊云科技
- 在 连接 > 私网连接 > 私有网络访问 SelectDB 中,单击 新建连接,复制 终端节点服务名 和 地域。
- 使用创建终端节点链接进入亚马逊云科技 VPC 控制台,切换到相同地域,单击 创建终端节点。
- 配置以下参数并验证服务。
| 参数 | 说明 |
|---|---|
| 名称标签 | 按需设置 Name 标签。 |
| 服务类别 | 选择使用 NLB 和 GWLB 的端点服务。 |
| 服务名称 | 填写 SelectDB Cloud 提供的终端节点服务名,验证目标服务。 |
| VPC | 选择客户端所在的 VPC。 |
| 子网 | 选择服务支持的可用区中的子网。跨账号时使用可用区 ID 核对实际可用区。 |
| 安全组 | 允许客户端访问仓库所需协议和端口,Stream Load 还需要访问目标集群端口。 |
| 标签 | 按需添加资源标签。 |
- 创建终端节点,等待其状态变为“可用”。如果服务验证或连接未通过,检查地域、服务名、可用区和服务侧允许访问的主体。
- 返回 SelectDB Cloud 表单,填写 终端节点 ID 和可选的 描述,单击 保存。
- 刷新私网连接列表,核对 终端节点 DNS 名称。需要查找 DNS 名称时,在亚马逊云科技终端节点详情中获取。
- 在目标终端节点所在行选择 MySQL、JDBC 或 Stream Load,使用弹窗生成的连接信息访问仓库。开启 TLS 或 HTTPS 时,使用弹窗提供的私网域名,并配置其到终端节点 DNS 名称的内网解析。
注意
- 如果终端节点服务只允许指定 IAM 用户或角色的 ARN,权限不会自动扩展到整个亚马逊云科技账号。创建终端节点时需要使用已获允许的主体。
- 不要把公网地址用于私网连接,也不要在启用 TLS 时直接将连接域名替换为 IP 地址。
私网连接验证
完成云侧终端节点创建和 SelectDB Cloud 信息保存后,刷新 私有网络访问 SelectDB 列表,在目标行单击 MySQL、JDBC 或 Stream Load 获取连接示例。具体客户端操作参见连接方式。
开启 TLS 或 HTTPS 的仓库需要确保客户端能解析并访问控制台提供的私网域名。TLS 从 26.0.x 系列的 26.0.5、26.1.x 系列的 26.1.2 开始支持;低于对应版本且未启用加密访问的仓库,无需为 TLS 配置上述记录。
数据库用户凭证与控制台登录凭证相互独立。客户端所在网络必须连通终端节点 VPC;位于其他网络时,需要配置 VPN、专线或其他私网互通方式。
SelectDB 访问私有网络
在自己的 VPC 中创建终端节点服务,将数据源暴露给 SelectDB Cloud 仓库,用于联邦分析或查询加速。
阿里云
- 在 连接 > 私网连接 > SelectDB 访问私有网络 中,单击 新建连接,复制 参数信息 中的 SelectDB 云账号 ID。
- 登录阿里云终端节点服务控制台,在与当前仓库相同的地域创建终端节点服务,配置目标 VPC、后端服务及端口。
- 在终端节点服务的访问白名单中添加上一步获取的 SelectDB 云账号 ID。
- 返回 SelectDB Cloud 表单,在 终端节点服务信息 中填写 终端节点服务 ID、终端节点服务名 和 描述,单击 授权。
- 刷新连接列表,核对终端节点、终端节点 DNS 名称和连接状态。云侧要求接受连接请求时,在终端节点服务中接受请求后再验证。
阿里云 Elasticsearch 等云服务也可能提供针对该服务的终端节点服务创建入口,可使用该入口创建后再授权仓库访问。
腾讯云
- 在 连接 > 私网连接 > SelectDB 访问私有网络 中,单击 新建连接,复制 SelectDB 云账号 ID。
- 登录腾讯云私有连接控制台,选择与当前仓库相同的地域,新建终端节点服务。
- 配置以下参数。
| 参数 | 说明 |
|---|---|
| 服务名称 | 不超过 80 个字符,可使用中文、英文、数字、下划线、连字符(-)和小数点。 |
| 所在地域 | 与当前仓库的地域一致。 |
| 所属网络 | 选择数据源所在的 VPC。 |
| 服务类型 | 根据数据源选择负载均衡(应用型内网四层 CLB)、MySQL 或 Redis。 |
| 后端服务 | 选择后端服务实例。 |
| 自动接受 | 默认不自动接受。关闭时需要手动接受连接请求;开启时会自动接受获准连接的终端节点请求。 |
- 在终端节点服务的白名单中添加 SelectDB 云账号 ID。
- 返回 SelectDB Cloud,填写 终端节点服务 ID、终端节点服务名、服务所属腾讯云 账户 UIN 和 描述,单击 授权。
- 如果未开启自动接受,在腾讯云控制台接受连接请求。刷新 SelectDB Cloud 列表,核对连接状态。
华为云
- 在 连接 > 私网连接 > SelectDB 访问私有网络 中,单击 新建连接,复制 SelectDB 云账号 ID。
- 登录华为云 VPC 终端节点控制台,选择与当前仓库相同的地域,在 终端节点服务 中单击 创建终端节点服务。
- 选择数据源所在的 VPC,配置后端资源与端口映射。
- 在终端节点服务的 权限管理 中,将 SelectDB 云账号 ID 添加到白名单。
- 返回 SelectDB Cloud,填写 终端节点服务 ID、终端节点服务名 和 描述,单击 授权。
- 如需人工接受连接请求,在华为云控制台接受请求,然后刷新 SelectDB Cloud 列表,核对连接状态。
华为云 Elasticsearch 等云服务也可能提供针对该服务的终端节点服务创建入口。
亚马逊云科技
- 在 连接 > 私网连接 > SelectDB 访问私有网络 中,单击 新建连接,复制 参数信息 中的 SelectDB ARN。中国区域与其他区域的 ARN 分区不同,请复制页面实际提供的完整值。
- 进入亚马逊云科技 VPC 控制台,在与当前仓库相同的地域创建终端节点服务。
- 选择网络负载均衡器(NLB)。如果尚未创建,先创建目标组、注册数据源目标,再创建 NLB 并配置监听器和目标组。
- 配置终端节点服务的可用区、连接接受方式等参数,并创建服务。
- 在终端节点服务的 允许委托人 中添加 SelectDB ARN。
- 返回 SelectDB Cloud 的 终端节点服务信息,填写 终端节点服务名 和 描述,单击 授权。当前亚马逊云科技表单无需单独填写终端节点服务 ID。
- 如果服务要求人工接受连接,在亚马逊云科技终端节点服务的 终端节点连接 中选择对应请求,执行 接受终端节点连接请求。
- 刷新 SelectDB Cloud 列表,等待连接状态变为“已连接”,再配置数据源访问。
公网连接
在 连接 页选择 公网连接,查看主机地址、端口及对应连接方式的示例。公网访问策略在 仓库设置 中管理。
配置公网 IP 白名单
- 单击左侧导航栏的 仓库设置。
- 在 安全 > 公网 IP 白名单 中,单击 编辑 IP 白名单。
- 选择允许的访问来源。
| 选项 | 说明 |
|---|---|
| 任意地址 | 允许任意公网 IP 地址通过公网端点连接仓库,数据库访问仍需身份认证。 |
| 禁止所有地址 | 禁止通过公网端点访问仓库。 |
| 指定地址 | 仅允许列表中的 IP 地址或 CIDR 网段访问。单击 新增 IP 填写地址和描述,或单击 添加本机 IP 添加当前出口 IP。 |
- 核对访问范围,单击 保存更改。白名单策略通常在 30 秒内生效。
- 返回 连接 > 公网连接,使用 MySQL CLI 或其他工具验证连接。
建议使用 指定地址,仅允许业务所需的可信出口 IP 或网段。应用经 NAT 网关或代理访问公网时,填写实际出口公网 IP,而不是客户端的内网地址。不要在尚未准备好替代访问方式时,将策略改为禁止所有地址。
将集群端口添加到访问控制白名单
使用 Stream Load 时,客户端不仅需要访问仓库 HTTP 端点,还需要访问重定向后的目标集群地址和端口。
- 在 连接 页选择所需的公网连接,或在私网终端节点所在行选择 Stream Load。
- 查看 网络要求 中的 HTTP 协议端口 和各集群对应的端口。
- 在客户端网络的出站访问控制、防火墙以及相关云侧安全组中,放行到目标地址和这些端口的访问。
- 使用实际导入请求验证重定向前后的网络连通性。
集群增删或网络配置变化后,应重新核对端口列表。不要只放行 MySQL 协议端口,或仅放行 Stream Load 的初始 HTTP 端口。