跳到主要内容
版本:4.x

私网连接

私网连接(PrivateLink) 能够帮助你在 VPC 环境中,通过私网安全稳定地访问部署在其他 VPC 中的服务,大幅简化网络架构,同时避免通过公网访问服务所带来的安全风险。

适用范围:本章节中的「私有网络访问 SelectDB」与「SelectDB 访问私有网络」两节仅适用于 SaaS 仓库 这两节描述的用户侧私网连接(PrivateLink)针对 SaaS 仓库——SaaS 仓库运行在 SelectDB 托管的 VPC 中,需由您创建/登记 Endpoint 或 Endpoint Service 与您的私有网络互通。BYOC 仓库部署在您自己的 VPC 内,与您的应用、数据源天然同处一个私有网络,私网互通无需额外配置,因此无需进行上述两节的私网连接操作。 本章节的 公网连接访问控制白名单 同时适用于 SaaS 仓库和 BYOC 仓库。

SelectDB Cloud 仓库创建并运行在 SelectDB VPC 中,用户 VPC 内的应用系统或客户端,可通过 PrivateLink 跨 VPC 访问 SelectDB Cloud 仓库。用户也可以通过 PrivateLink 让 SelectDB Cloud 仓库连接自己的 VPC,集成其中的数据源(如 Hive Megastore、MySQL、Elasticsearch 等),做联邦分析或查询加速。PrivateLink 包括终端节点服务(Endpoint Service)与终端节点(Endpoint)两部分。

当用户需要在自己的私有网络中访问 SelectDB 时,SelectDB Cloud 会创建和管理 Endpoint Service,用户创建和管理 Endpoint。

说明 SelectDB Cloud 服务侧无额外费用,但用户需要向云厂商支付终端节点实例和流量费用。

当用户需要使用 SelectDB 访问自己的私有网络时,用户需要创建 Endpoint Service 并在 SelectDB Cloud 登记,随后 SelectDB Cloud 会创建 Endpoint 连接用户的 Endpoint Service。

说明 Endpoint Service 无额外费用,但用户需要向云厂商支付 Endpoint Service 后端挂载的负载均衡实例费用。

私有网络访问 SelectDB

私有网络访问 SelectDB 架构(VPC 应用 → 终端节点 → 终端节点服务 → SelectDB)

私有网络访问 SelectDB 架构(VPC 应用 → 终端节点 → 终端节点服务 → SelectDB)

新建终端节点(Endpoint),让你的私有网络中的数据应用(如报表、画像、日志分析)访问 SelectDB 云数据仓库。

同可用区连接

私网连接 · 私有网络访问 SelectDB

私网连接 · 私有网络访问 SelectDB

注意 由于云厂商限制 Endpoint 和 Endpoint Service 必须部署在一个可用区内才可以建立连接,你需要前往 Endpoint Service 所在的地域,通过服务 ID 或 服务名称找到 Endpoint Service,选择相同的可用区,创建 Endpoint。

跨可用区连接

私网连接 · SelectDB 访问私有网络

私网连接 · SelectDB 访问私有网络

注意 如果在创建 SelectDB Cloud 仓库时,没有用户业务所在的可用区可选,则可通过如下方案解决:用户可选择其中任意一个可用区(如可用区 1)创建 SelectDB Cloud 仓库,然后在用户 VPC 中新建一个位于可用区 1 的子网,并在其中创建连接 SelectDB Cloud 服务的终端节点。由于同一个 VPC 下的所有子网是免费互通的,因此用户在另一个可用区(如可用区 2)的应用系统/客户端,可以放心地通过可用区 1 的终端节点访问 SelectDB Cloud 服务。

通过私有网络访问 SelectDB 时,新建终端节点(Endpoint)在各朵云上略有不同,具体介绍如下。

阿里云

  1. 切换到目标仓库,单击导航栏的 连接,进入 私网连接 > 私有网络访问 SelectDB,单击 新建连接。弹窗中会显示在阿里云控制台创建终端节点所需的 终端节点服务名地域,请先复制备用。

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在阿里云控制台创建终端节点

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在阿里云控制台创建终端节点

  1. 登录阿里云 专有网络 VPC > 私网连接 > 终端节点 控制台,单击 创建终端节点服务资源类型 选择 其他终端节点服务,在 终端节点服务名称 中粘贴上一步的服务名并单击 验证(提示绿勾即表示可用)。再选择 专有网络(要连接仓库的应用系统/客户端所在的 VPC)、与仓库终端节点服务相同的 可用区 及该可用区下的 交换机安全组,单击 确定创建

阿里云 · 创建终端节点:服务资源类型选「其他终端节点服务」,填入服务名验证(绿勾),选专有网络、可用区 L 交换机与安全组

阿里云 · 创建终端节点:服务资源类型选「其他终端节点服务」,填入服务名验证(绿勾),选专有网络、可用区 L 交换机与安全组

  1. 终端节点创建完成后,状态 变为 可用连接状态 变为 已连接,表示已与仓库的终端节点服务连接成功。复制该终端节点的 实例 ID

阿里云 · 终端节点创建完成:状态「可用」、连接状态「已连接」,复制终端节点实例 ID

阿里云 · 终端节点创建完成:状态「可用」、连接状态「已连接」,复制终端节点实例 ID

  1. 返回 SelectDB Cloud 的 新建连接 弹窗,将上一步的终端节点实例 ID 填入 终端节点 ID 字段,单击 保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

  1. 保存成功后,私有网络访问 SelectDB 的连接信息列表会显示该终端节点的 域名/IP 及 MySQL、HTTP、集群端口。应用程序/客户端即可通过该域名从私网访问 SelectDB Cloud 仓库。

私有网络访问SelectDB · 连接信息:显示终端节点的域名/IP 与 MySQL/HTTP/集群端口

私有网络访问SelectDB · 连接信息:显示终端节点的域名/IP 与 MySQL/HTTP/集群端口

注意

  1. 你所在网络需要连通该终端节点所在的 VPC(例如使用 VPN、代理服务、专线等),才可以通过私网 WebUI 登录仓库。如果无法连通,建议改用公网 WebUI 登录仓库。
  2. SelectDB Cloud 产品中包含两套独立的账号,一套用于连接 SelectDB Cloud 仓库,即本文使用的账号。另一套用于登录控制台,请参考注册和登录章节。

腾讯云

  1. 切到目标仓库,单击导航栏的 连接 ,在 私网连接 > 私有网络访问 SelectDB 中单击 新建连接,将用户的云主账号 ID 以及 APPID 添加到 SelectDB Cloud 仓库的 Endpoint Service 的白名单内。

image

  1. 云主账号添加白名单成功后,表示此账号已获得连接访问 SelectDB Cloud 仓库的 Endpoint Service 的权限。SelectDB Cloud 仓库的 Endpoint Service 在等待用户的 Endpoint 连接过来。用户可以单击 下一步 ,进入到前往创建列表,列表会显示终端节点服务的信息,单击列表右下角的 前往创建 ,跳转到云厂商的 PrivateLink 产品控制台去创建 Endpoint。

image

  1. 在云厂商的 PrivateLink 产品控制台,用户需要确认当前地域与 SelectDB Cloud 仓库的 Endpoint Service 的地域相同(云厂商的 PrivateLink 产品限制),然后单击 新建

image

image

参数说明
名称必填项。建议命名能够见名知意。
所属网络必选项。选择 VPC,也就是要连接 SelectDB Cloud 仓库的应用系统或客户端所在的 VPC。
所属子网必选项。选择终端节点所属的子网。
IP 地址必选项。默认是自动分配,可选择手动填写。
对端账户类型必选项。选择待连接的终端节点服务所属账户,这里是跨账号 VPC 间访问,因此应选择其他账户。
对端账户 UIN必填项。当对端账户类型选择其他账户时,请填写对端账户 UIN(也就是 SelectDB Cloud 服务侧账户 UIN,可在终端节点服务信息列表那一键复制后,粘贴到这里)、终端节点服务 ID(可在 SelectDB Cloud 终端节点服务信息列表那一键复制后,粘贴到这里),然后点击 验证。提示打勾了即表示可成功连接。
  1. 终端节点创建完成后,状态变为“可用”,则表示该终端节点已经和 SelectDB Cloud 仓库的 Endpoint Service 连接成功了。

image

  1. 刷新 SelectDB Cloud 仓库的连接页面后,终端节点列表会出现该 Endpoint 的连接信息。

image

  1. 设置数据库账号 admin 的密码后,可以使用 WebUI 登录或其他方式(MySQL、JDBC、HTTP 等)连接 SelectDB Cloud 仓库。

注意

  1. 你所在网络需要连通该 Endpoint 所在的 VPC(例如使用 VPN、代理服务、专线等),才可以通过私网 WebUI 登录仓库。如果无法连通,建议改用公网 WebUI 登录仓库。
  2. SelectDB Cloud 产品中包含两套独立的账号,一套用于连接 SelectDB Cloud 仓库,即本文使用的账号。另一套用于登录控制台,请参考注册和登录章节。

华为云

  1. 切换到目标仓库,单击导航栏的 连接,进入 私网连接 > 私有网络访问 SelectDB,单击 新建连接。弹窗中会显示在华为云控制台创建终端节点所需的 终端节点服务名地域,请先复制备用。

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在华为云控制台创建终端节点

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在华为云控制台创建终端节点

  1. 登录华为云 VPC 终端节点(VPCEP)控制台,单击 购买终端节点服务类别 选择 按名称查找服务,在 服务名称 中粘贴上一步的终端节点服务名并单击 验证,确认提示「已找到服务」。再选择 虚拟私有云(要连接仓库的应用系统/客户端所在的 VPC)与 子网,单击 立即购买

华为云 · 购买终端节点:服务类别选「按名称查找服务」,填入服务名验证(已找到服务·接口),选 VPC 与子网

华为云 · 购买终端节点:服务类别选「按名称查找服务」,填入服务名验证(已找到服务·接口),选 VPC 与子网

  1. 终端节点创建完成后,状态变为 已接受,表示已与仓库的终端节点服务连接成功。复制该终端节点的 ID

华为云 · 终端节点创建完成:状态「已接受」,复制终端节点 ID

华为云 · 终端节点创建完成:状态「已接受」,复制终端节点 ID

  1. 返回 SelectDB Cloud 的 新建连接 弹窗,将上一步的终端节点 ID 填入 终端节点 ID 字段,单击 保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

  1. 保存成功后,私有网络访问 SelectDB 的连接信息列表会显示该终端节点的 域名/IP(私网 DNS)及 MySQL、HTTP、集群端口。应用程序/客户端即可通过该域名从私网访问 SelectDB Cloud 仓库。

私有网络访问SelectDB · 连接信息:显示终端节点的域名/IP(私网 DNS)与 MySQL/HTTP/集群端口

私有网络访问SelectDB · 连接信息:显示终端节点的域名/IP(私网 DNS)与 MySQL/HTTP/集群端口

注意

  1. 你所在网络需要连通该终端节点所在的 VPC(例如使用 VPN、代理服务、专线等),才可以通过私网 WebUI 登录仓库。如果无法连通,建议改用公网 WebUI 登录仓库。
  2. SelectDB Cloud 产品中包含两套独立的账号,一套用于连接 SelectDB Cloud 仓库,即本文使用的账号。另一套用于登录控制台,请参考注册和登录章节。

亚马逊云科技

  1. 切换到目标仓库,单击导航栏的 连接,进入 私网连接 > 私有网络访问 SelectDB,单击 新建连接。弹窗中会显示在云厂商控制台创建终端节点所需的 终端节点服务名地域,请先复制备用。

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在云厂商控制台创建终端节点

私有网络访问SelectDB · 新建连接弹窗:复制终端节点服务名与地域,用于在云厂商控制台创建终端节点

  1. 登录亚马逊云科技控制台,进入 VPC > 终端节点,单击 创建终端节点。在 类型 中选择 使用 NLB 和 GWLB 的端点服务,在 服务名称 中粘贴上一步复制的终端节点服务名,单击 验证服务,确认提示「服务名称已验证」。

亚马逊云科技 · 创建 VPC 终端节点:类型选「使用 NLB 和 GWLB 的端点服务」,填入服务名并验证(服务名称已验证)

亚马逊云科技 · 创建 VPC 终端节点:类型选「使用 NLB 和 GWLB 的端点服务」,填入服务名并验证(服务名称已验证)

  1. 网络设置 中选择 VPC,并勾选与 SelectDB Cloud 仓库端点服务 相同可用区 的子网(受 PrivateLink 产品限制),再选择安全组(安全规则需允许仓库使用的协议端口,以及应用程序/客户端连接仓库的来源 IP),单击 创建终端节点

亚马逊云科技 · 终端节点网络设置:选择 VPC、与仓库端点服务相同可用区的子网、安全组

亚马逊云科技 · 终端节点网络设置:选择 VPC、与仓库端点服务相同可用区的子网、安全组

注意:「启用私有 DNS 名称」无需勾选——SelectDB 端点服务不提供私有 DNS 名称,勾选会导致创建失败;可用区必须与仓库端点服务一致,否则没有可选子网。

  1. 终端节点创建完成后,等待几分钟,其状态会由 待处理 变为 可用,表示已与仓库的端点服务建立连接。复制该终端节点的 终端节点 ID

亚马逊云科技 · 终端节点创建完成:状态待处理→可用,复制终端节点 ID

亚马逊云科技 · 终端节点创建完成:状态待处理→可用,复制终端节点 ID

  1. 返回 SelectDB Cloud 的 新建连接 弹窗,将上一步的终端节点 ID 填入 终端节点 ID 字段,单击 保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

私有网络访问SelectDB · 新建连接弹窗:填入上一步的终端节点 ID 并保存

  1. 保存成功后,私有网络访问 SelectDB 的连接信息列表会显示该终端节点的 DNS 名称 及 MySQL、HTTP、集群端口。应用程序/客户端即可通过该 DNS 名称,经 MySQL 或 HTTP 协议从私网访问 SelectDB Cloud 仓库。

私有网络访问SelectDB · 连接信息:显示终端节点的 DNS 名称与 MySQL/HTTP/集群端口

私有网络访问SelectDB · 连接信息:显示终端节点的 DNS 名称与 MySQL/HTTP/集群端口

SelectDB 访问私有网络

SelectDB 访问私有网络架构(SelectDB → 终端节点 → 终端节点服务 → Hive/MySQL/Elasticsearch)

SelectDB 访问私有网络架构(SelectDB → 终端节点 → 终端节点服务 → Hive/MySQL/Elasticsearch)

新建终端节点服务(Endpoint Service),让 SelectDB 访问你的私有网络中的数据库服务(如 Hive Metastore、MySQL、Elasticsearch)。

说明 SelectDB 访问私有网络产生的终端节点实例和流量费用,目前暂不对用户收取。

阿里云

  1. 在 SelectDB Cloud 中,单击导航栏的 连接,进入 私网连接 > SelectDB 访问私有网络,单击 新建连接。弹窗中会显示 SelectDB 云账号 ID,请先复制备用(用于加入终端节点服务的白名单)。

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 云账号 ID,用于加入终端节点服务白名单

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 云账号 ID,用于加入终端节点服务白名单

  1. 登录阿里云 专有网络 VPC > 私网连接 > 终端节点服务 控制台,单击 创建终端节点服务,选择与当前仓库相同的地域。服务资源类型 选择你数据服务所用的负载均衡类型(如 传统型负载均衡 CLB),并在 服务资源 中选择与仓库终端节点服务相同 可用区 下的负载均衡实例(若尚无负载均衡,需先在负载均衡控制台创建一个)。

阿里云 · 创建终端节点服务:服务资源类型选负载均衡(如传统型 CLB),选可用区 L 下的负载均衡实例作为服务资源

阿里云 · 创建终端节点服务:服务资源类型选负载均衡(如传统型 CLB),选可用区 L 下的负载均衡实例作为服务资源

  1. 进入终端节点服务详情的 服务白名单 页,单击 添加白名单,将 SelectDB 的云账号 ID 填入并确定。

阿里云 · 终端节点服务「服务白名单」添加 SelectDB 云账号 ID(账号自身 UID 已打码)

阿里云 · 终端节点服务「服务白名单」添加 SelectDB 云账号 ID(账号自身 UID 已打码)

  1. 返回 SelectDB Cloud 的 新建连接 弹窗,填写终端节点服务的 ID名称,单击 授权。授权后 SelectDB Cloud 将自动建立终端节点,连接信息中连通性显示 可连通 即表示 SelectDB 已可私网访问你的数据库服务。

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与名称,点击授权(授权后连通性显示「可连通」)

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与名称,点击授权(授权后连通性显示「可连通」)

华为云

  1. 在 SelectDB Cloud 中,单击导航栏的 连接,进入 私网连接 > SelectDB 访问私有网络,单击 新建连接。弹窗中会显示 SelectDB 云账号 ID,请先复制备用(用于加入终端节点服务的白名单)。

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 云账号 ID,用于加入终端节点服务白名单

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 云账号 ID,用于加入终端节点服务白名单

  1. 登录华为云 VPC 终端节点(VPCEP)控制台,单击 创建终端节点服务,选择与当前仓库相同的地域。后端资源类型 选择 弹性负载均衡,选择 VPC 内的 ELB 并配置 端口映射(若 VPC 内尚无 ELB,需先在弹性负载均衡控制台创建一个)。

华为云 · 创建终端节点服务:选 VPC、后端资源类型「弹性负载均衡」选 ELB、配置端口映射(VPC 内无 ELB 时需先建一个)

华为云 · 创建终端节点服务:选 VPC、后端资源类型「弹性负载均衡」选 ELB、配置端口映射(VPC 内无 ELB 时需先建一个)

  1. 进入终端节点服务详情,在 权限管理 > 添加白名单记录 中,将 SelectDB 的云账号 IDiam:domain::<云账号 ID> 格式添加到白名单。

华为云 · 终端节点服务「权限管理」添加白名单:iam:domain::

华为云 · 终端节点服务「权限管理」添加白名单:iam:domain::

  1. 返回 SelectDB Cloud 的 新建连接 弹窗,填写终端节点服务的 ID名称,单击 授权。授权后 SelectDB Cloud 将自动建立终端节点,即可访问你私有网络中的数据库服务。

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与名称,点击授权

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与名称,点击授权

腾讯云

  1. 登录 私有连接控制台
  2. 在左侧导航栏单击私有连接 - 终端节点服务 ,选择与当前仓库同地域创建终端节点服务。

image

  1. 在弹出的 新建终端节点服务 对话框中,配置相关参数。

image

参数名称描述
服务名称自定义终端节点服务的名称,不能超过 80 个字符,只能使用中文、英文、数字、下划线、分隔符"-"、小数点。
所在地域终端节点服务所在地域。与当前仓库同地域。
所属网络选择所属 VPC。
服务类型终端节点服务的类型,目前支持负载均衡(应用型内网 4 层 CLB)、MySQL 和 Redis。
后端服务后端服务的实例 ID。
自动接受指定终端节点服务是否自动接受终端节点发起的连接请求,默认为否:当选择是自动接受时,终端节点服务默认接受所有连接的终端节点的请求,终端节点创建成功后,状态即为可用。当选择否不接受自动连接时,终端节点初始连接状态将为待接受,需要终端节点服务手动执行接受连接才能将状态从待接受变为可用。
  1. 进入终端节点服务详情,添加 SelectDB 的云账号 ID 为白名单。

image

注意 可参考第 5 步获取 SelectDB 的云账号 ID 。

  1. 在 SelectDB Cloud 中 ,单击导航栏的 连接 ,在 私网连接 > SelectDB 访问私有网络 中单击 新建连接,填写终端节点服务的 ID、名称,以及你的腾讯云账户 UIN,并点击 登记

image

image

亚马逊云科技

  1. 切换到目标仓库,单击导航栏的 连接,进入 私网连接 > SelectDB 访问私有网络,单击 新建连接。弹窗中会显示 SelectDB 的 ARN地域,请先复制 SelectDB ARN 备用(稍后在云厂商控制台将其加入终端节点服务的允许委托人)。

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 的 ARN,用于加入终端节点服务的允许委托人

SelectDB访问私有网络 · 新建连接弹窗:复制 SelectDB 的 ARN,用于加入终端节点服务的允许委托人

  1. 登录亚马逊云科技控制台,进入 VPC > 终端节点服务,单击 创建终端节点服务。负载均衡器类型选择 网络,在 可用的负载均衡器 中选择一个网络负载均衡器(NLB)。

亚马逊云科技 · 创建终端节点服务:负载均衡器类型「网络」,选择 NLB(无可用 NLB 时需先在 EC2 建内部 NLB + 目标组)

亚马逊云科技 · 创建终端节点服务:负载均衡器类型「网络」,选择 NLB(无可用 NLB 时需先在 EC2 建内部 NLB + 目标组)

提示:若当前区域没有可用的 NLB,需先在 EC2 控制台创建一个 内部(Internal) 网络负载均衡器,并为其 TCP 侦听器绑定一个目标组;目标组指向你私有网络中的数据服务(如 Hive Metastore、MySQL、Elasticsearch)。NLB、目标组需与数据服务位于同一区域。

  1. 勾选 需要接受以使用终端节点支持的 IP 地址类型 选择 IPv4,单击 创建。终端节点服务创建完成后,进入其 允许委托人 标签页,单击 允许委托人,将第 1 步复制的 SelectDB ARN 填入并提交。
  2. 在终端节点服务详情页复制 服务 ID服务名称,返回 SelectDB Cloud 的 新建连接 弹窗,分别填入 终端节点服务 ID终端节点服务名,单击 授权

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与服务名,点击授权

SelectDB访问私有网络 · 新建连接弹窗:填入终端节点服务 ID 与服务名,点击授权

  1. 授权后 SelectDB Cloud 会自动在你的终端节点服务上发起一个终端节点连接。回到亚马逊云科技控制台终端节点服务的 终端节点连接 标签页,选中该连接(拥有者为 SelectDB 账号,状态为 Pending acceptance),单击 操作 > 接受终端节点连接请求,在确认框中键入「接受」并确认。
  2. 刷新 SelectDB Cloud 的 SelectDB 访问私有网络 页面,连接信息中该终端节点服务的 连通性 显示为 可连通,即表示 SelectDB 已可通过私网访问你私有网络中的数据服务。

SelectDB访问私有网络 · 连接信息:连通性显示「可连通」,SelectDB 已可私网访问你的数据服务

SelectDB访问私有网络 · 连接信息:连通性显示「可连通」,SelectDB 已可私网访问你的数据服务