ClickHouse Cloud 支持从以下区域进行跨区域 PrivateLink连接:
- sa-east-1
- il-central-1
- me-south-1
- eu-central-2
- eu-north-1
- eu-south-2
- eu-west-3
- eu-south-1
- eu-west-2
- eu-west-1
- eu-central-1
- ca-west-1
- ca-central-1
- ap-northeast-1
- ap-southeast-2
- ap-southeast-1
- ap-northeast-2
- ap-northeast-3
- ap-south-1
- ap-southeast-4
- ap-southeast-3
- ap-south-2
- ap-east-1
- af-south-1
- us-west-2
- us-west-1
- us-east-2
- us-east-1 价格注意事项:AWS 将对跨区域数据传输收费,定价请参见此处。
- 获取 Endpoint “Service name”。
- 创建 AWS Endpoint。
- 将 “Endpoint ID” 添加到 ClickHouse Cloud 组织。
- 将 “Endpoint ID” 添加到 ClickHouse 服务允许列表。
重要注意事项
此流程的前置条件
- 您的 AWS 账户。
- 具备在 ClickHouse 端创建和管理专用终结点所需权限的 ClickHouse API key。
步骤
获取端点“Service name”信息
选项 1:ClickHouse Cloud 控制台
Service name 和 DNS name,然后进入下一步。
选项 2:API
INSTANCE_ID:
endpointServiceId 和 privateDnsHostname:
endpointServiceId 和 privateDnsHostname,然后进入下一步。
创建 AWS endpoint
选项 1:AWS 控制台
Service nameconsole 或 endpointServiceIdAPI。点击 Verify service:
如果您想通过 PrivateLink 建立跨区域连接,请勾选 “Cross region endpoint” 复选框,并指定服务所在区域。服务所在区域即 ClickHouse 实例运行的区域。
如果出现 “Service name couldn’t be verified.” 错误,请联系 Customer Support,申请将新区域添加到 supported regions 列表中。
接下来,选择您的 VPC 和子网:
作为可选步骤,分配安全组 (Security Group) /标签:
请确保安全组中已放行端口
443、8443、9440、3306。Endpoint ID 的值;后续步骤中会用到它。
选项 2:AWS CloudFormation
Service name控制台 或 endpointServiceIdAPI 创建 VPC 端点。
请务必使用正确的子网 ID、安全组 (Security Group) 和 VPC ID。
Endpoint ID 的值;后续步骤中会用到它。
选项 3:Terraform
service_name 是你在获取端点“Service name”信息步骤中获取到的 Service name控制台 或 endpointServiceIdAPI
Endpoint ID 的值;后续步骤会用到它。
为端点设置私有 DNS 名称
DNS 有多种配置方式。请根据你的具体使用场景进行设置。
将“Endpoint ID”添加到 ClickHouse 服务的允许列表中
选项 1:ClickHouse Cloud 控制台
Endpoint ID。点击“Create endpoint”。
如果你想允许来自现有 PrivateLink 连接的访问,请使用现有端点下拉菜单。
选项 2:API
ENDPOINT_ID 环境变量。
在运行任何命令之前,请先设置以下环境变量:
使用 PrivateLink 访问实例
privateDnsHostnameAPI 或 DNS Name控制台。
获取私有 DNS 主机名
选项 1:ClickHouse Cloud 控制台
选项 2:API
INSTANCE_ID。
privateDnsHostname 的主机名值建立的连接会通过 PrivateLink 路由,而使用 endpointServiceId 主机名建立的连接则会经由互联网路由。
故障排查
一个区域内的多个 PrivateLinks
连接到专用终结点超时
- 请将安全组 (Security Group) 关联到 VPC 端点。
- 请检查关联到该端点的安全组 (Security Group) 的
inbound规则,并确保已放行 ClickHouse 端口。 - 请检查关联到用于连通性测试的 VM 的安全组 (Security Group) 的
outbound规则,并确保允许连接到 ClickHouse 端口。
私有主机名:找不到主机地址
- 请检查您的 DNS 配置
连接被对端重置
- 很可能是因为未将 Endpoint ID 添加到服务的允许列表中,请参阅此步骤
检查端点过滤器
INSTANCE_ID。
连接到远程数据库
当你采用客户端/服务器架构,并希望允许一个或多个消费者 VPC 单向访问服务提供商 VPC 中的特定服务或一组实例时,请使用 AWS PrivateLink。只有消费者 VPC 中的客户端才能发起到服务提供商 VPC 中服务的连接。为此,请配置你的 AWS 安全组 (Security Group) ,允许来自 ClickHouse Cloud 的连接访问你的内部/私有数据库服务。请查看 ClickHouse Cloud 各区域的默认 egress IP 地址 以及 可用的静态 IP 地址。