跳至主要内容
跳至主要内容
编辑此页

AWS PrivateLink for ClickPipes

您可以使用 AWS PrivateLink 在 VPC、AWS 服务、您的本地系统和 ClickHouse Cloud 之间建立安全连接,而无需将流量暴露到公共互联网。

本文档概述了 ClickPipes 反向私有端点功能,该功能允许设置 AWS PrivateLink VPC 端点。

支持的 ClickPipes 数据源

ClickPipes 反向私有端点功能仅限于以下数据源类型

  • Kafka
  • Postgres
  • MySQL
  • MongoDB

ClickPipes 反向私有端点可以使用以下 AWS PrivateLink 方法之一进行配置

VPC 资源

参考

不支持跨区域。

您的 VPC 资源可以使用 PrivateLink 在 ClickPipes 中访问。 这种方法不需要在您的数据源前面设置负载均衡器。

资源配置可以使用特定的主机或 RDS 集群 ARN 进行定位。

对于从 RDS 集群摄取数据的 Postgres CDC 来说,这是首选方案。

要使用 VPC 资源设置 PrivateLink

  1. 创建资源网关
  2. 创建资源配置
  3. 创建资源共享

创建资源网关

资源网关是接收 VPC 中指定资源流量的点。

注意

建议您的资源网关附加的子网拥有足够的可用 IP 地址。 建议每个子网至少使用 /26 子网掩码。

对于每个 VPC 端点(每个反向私有端点),AWS 需要每个子网连续的 16 个 IP 地址块。(/28 子网掩码) 如果未满足此要求,反向私有端点将过渡到失败状态。

您可以从 AWS 控制台 或使用以下命令创建资源网关

aws vpc-lattice create-resource-gateway \
    --vpc-identifier <VPC_ID> \
    --subnet-ids <SUBNET_IDS> \
    --security-group-ids <SG_IDs> \
    --name <RESOURCE_GATEWAY_NAME>

输出将包含资源网关 ID,您将在下一步中需要它。

在继续之前,您需要等待资源网关进入 Active 状态。 您可以通过运行以下命令来检查状态

aws vpc-lattice get-resource-gateway \
    --resource-gateway-identifier <RESOURCE_GATEWAY_ID>

创建 VPC 资源配置

资源配置与资源网关关联,以使您的资源可访问。

您可以从 AWS 控制台 或使用以下命令创建资源配置

aws vpc-lattice create-resource-configuration \
    --resource-gateway-identifier <RESOURCE_GATEWAY_ID> \
    --type <RESOURCE_CONFIGURATION_TYPE> \
    --resource-configuration-definition <RESOURCE_CONFIGURATION_DEFINITION> \
    --name <RESOURCE_CONFIGURATION_NAME>

最简单的 资源配置类型 是单个资源配置。 您可以使用 ARN 直接配置,或共享可公开解析的 IP 地址或域名。

例如,要使用 RDS 集群的 ARN 进行配置

aws vpc-lattice create-resource-configuration \
    --name my-rds-cluster-config \
    --type ARN \
    --resource-gateway-identifier rgw-0bba03f3d56060135 \
    --resource-configuration-definition 'arnResource={arn=arn:aws:rds:us-east-1:123456789012:cluster:my-rds-cluster}'
注意

您无法为可公开访问的集群创建资源配置。 如果您的集群可公开访问,则必须修改集群以使其变为私有,然后才能创建资源配置,或者使用 IP 允许列表。 有关更多信息,请参阅 AWS 文档

输出将包含资源配置 ARN,您将在下一步中需要它。 它还将包含资源配置 ID,您需要它来使用 VPC 资源设置 ClickPipe 连接。

创建资源共享

共享您的资源需要资源共享。 这通过资源访问管理器 (RAM) 实现。

注意

资源共享只能用于单个反向私有端点,不能重复使用。 如果您需要对多个反向私有端点使用相同的资源配置,则必须为每个端点创建单独的资源共享。 删除反向私有端点后,资源共享将保留在您的 AWS 账户中,如果不再需要,则必须手动删除。

您可以通过 AWS 控制台 或使用以下命令运行,并使用 ClickPipes 账户 ID 072088201116 (arn:aws:iam::072088201116:root):

aws ram create-resource-share \
    --principals 072088201116 \
    --resource-arns <RESOURCE_CONFIGURATION_ARN> \
    --name <RESOURCE_SHARE_NAME>

输出将包含资源共享 ARN,您需要它来使用 VPC 资源设置 ClickPipe 连接。

您已准备好 使用 VPC 资源创建带有反向私有端点的 ClickPipe。 您需要

  • VPC 端点类型 设置为 VPC 资源
  • 资源配置 ID 设置为在步骤 2 中创建的资源配置的 ID。
  • 资源共享 ARN 设置为在步骤 3 中创建的资源共享的 ARN。

有关使用 VPC 资源的 PrivateLink 的更多详细信息,请参阅 AWS 文档

MSK 多 VPC 连接

多 VPC 连接 是 AWS MSK 的内置功能,允许您将多个 VPC 连接到单个 MSK 集群。 私有 DNS 支持是开箱即用的,不需要额外的配置。 不支持跨区域。

对于 ClickPipes 的 MSK 来说,这是一个推荐的选项。 请参阅 入门 指南以获取更多详细信息。

参考

更新您的 MSK 集群策略,并将 072088201116 添加到允许的 MSK 集群主体。 请参阅 AWS 指南了解 附加集群策略 的更多详细信息。

请遵循我们的 ClickPipes 的 MSK 设置指南 了解如何设置连接。

VPC 端点服务

VPC 端点服务 是另一种与 ClickPipes 共享您的数据源的方法。 它需要在您的数据源前面设置 NLB(网络负载均衡器),并配置 VPC 端点服务以使用 NLB。

VPC 端点服务可以 配置为使用私有 DNS,该 DNS 可以在 ClickPipes VPC 中访问。

对于以下情况来说,这是首选方案

  • 任何需要私有 DNS 支持的本地 Kafka 设置
  • Postgres CDC 的跨区域连接
  • MSK 集群的跨区域连接。 请联系 ClickHouse 支持团队寻求帮助。

请参阅 入门 指南以获取更多详细信息。

参考

将 ClickPipes 账户 ID 072088201116 添加到您的 VPC 端点服务的允许主体。 请参阅 AWS 指南了解 管理权限 的更多详细信息。

参考

跨区域访问 可以为 ClickPipes 配置。 将 您的 ClickPipe 区域 添加到 VPC 端点服务中允许的区域。

使用反向私有端点创建 ClickPipe

访问您的 ClickHouse Cloud 服务的 SQL 控制台。

在左侧菜单上选择 数据源 按钮,然后单击“设置 ClickPipe”。

选择 Kafka 或 Postgres 作为数据源。

选择 反向私有端点 选项。

选择任何现有的反向私有端点或创建一个新的端点。

参考

如果 RDS 需要跨区域访问,您需要创建一个 VPC 端点服务,并且 本指南 应该提供一个很好的起点来设置它。

对于同区域访问,创建 VPC 资源是推荐的方法。

提供所选端点类型的必需参数。

  • 对于 VPC 资源,提供配置共享 ARN 和配置 ID。
  • 对于 MSK 多 VPC,提供集群 ARN 和与创建的端点一起使用的身份验证方法。
  • 对于 VPC 端点服务,提供服务名称。

单击 创建 并等待反向私有端点准备就绪。

如果您正在创建一个新的端点,则设置端点需要一些时间。 端点准备就绪后,页面将自动刷新。 VPC 端点服务可能需要在您的 AWS 控制台中接受连接请求。

一旦端点准备就绪,您可以使用 DNS 名称连接到数据源。

在端点列表中,您可以查看可用端点的 DNS 名称。 它可能是 ClickPipes 内部配置的 DNS 名称,也可能是 PrivateLink 服务提供的私有 DNS 名称。 DNS 名称不是完整的网络地址。 根据数据源添加端口。

MSK 连接字符串可以在 AWS 控制台中访问。

要查看完整的 DNS 名称列表,请在云服务设置中访问它。

管理现有的反向专用端点

您可以在 ClickHouse Cloud 服务设置中管理现有的反向专用端点

在侧边栏中找到“设置”按钮并点击它。

在“ClickPipe 反向专用端点”部分中,点击“反向专用端点”。

将在浮出窗口中显示反向专用端点的扩展信息。

可以从此处删除端点。这将影响使用此端点的任何 ClickPipe。

对于 ClickPipe,AWS PrivateLink 支持仅限于特定的 AWS 区域。请参阅 ClickPipe 区域列表,以查看可用的区域。

此限制不适用于启用跨区域连接的 PrivateLink VPC 端点服务。

限制

在 ClickHouse Cloud 中创建的 ClickPipe 的 AWS PrivateLink 端点不保证与 ClickHouse Cloud 服务位于相同的 AWS 区域。

目前,只有 VPC 端点服务支持跨区域连接。

专用端点链接到特定的 ClickHouse 服务,不能在服务之间转移。单个 ClickHouse 服务的多个 ClickPipe 可以重用相同的端点。

AWS MSK 每集群、每身份验证类型(SASL_IAM 或 SASL_SCRAM)仅支持一个 PrivateLink(VPC 端点)。因此,多个 ClickHouse Cloud 服务或组织不能使用相同的身份验证类型,为同一个 MSK 集群创建单独的 PrivateLink 连接。

非活动端点的自动清理

处于终止状态的反向专用端点将在定义的宽限期后自动删除。这可确保未使用的或配置错误端点不会无限期地保留。

以下宽限期适用于基于端点状态:

状态宽限期描述
失败7 天端点在配置过程中遇到错误。
待接受1 天服务所有者尚未接受端点连接。
已拒绝1 天服务所有者拒绝了端点连接。
已过期立即端点已过期并立即删除。

宽限期到期后,端点和所有相关资源将自动删除。

为了防止自动删除,请在宽限期到期之前解决潜在问题。例如,在您的 AWS 控制台中接受待处理的连接请求,或者如果端点进入失败状态,请重新创建端点。

    © . This site is unofficial and not affiliated with ClickHouse, Inc.