Skip to main content

CREATE CONNECTION

使用 CREATE CONNECTION 命令为 Kafka 连接器创建 AWS PrivateLink 连接。这对于 RisingWave 集群和 Kafka 服务在不同 VPC 中的情形来说是必要的。

句法

CREATE CONNECTION [ IF NOT EXISTS ] connection_name
WITH (
connection_parameter = 'value'
);

参数

所有 WITH 选项均为必需,除非另有说明。

参数或子句描述
connection_name要创建的连接的名称。
type连接的类型。
provider连接的提供商。
service.name端点服务的服务名称。
tags可选。用于检查资源泄漏的 AWS 标签。此参数应具有以下格式:key1=value1, key2=value2, ...
note

可以通过使用 CREATE CONNECTION 命令指定 tags 参数或指定环境变量 RW_PRIVATELINK_ENDPOINT_DEFAULT_TAGS 来标记 VPC 端点。请按照 key1=value1, key2=value2, ... 的格式指定标签。如果同时指定了这两个标签,则环境变量中指定的标签将附加到 tags 参数指定的标签上。

示例

以下语句创建了一个 AWS PrivateLink 连接。

CREATE CONNECTION connection_name WITH (
type = 'privatelink',
provider = 'aws',
service.name = 'com.amazonaws.xyz.us-east-1.abc-xyz-0000'
);

如果您正在使用云托管的 Source 或 Sink,例如 AWS MSK,当您的服务位于与您部署 RisingWave 不同的 VPC 中时,可能会出现连接问题。为了在这两个不同的 VPC 之间建立安全的直接连接,并允许 RisingWave 读取从代理服务器接收到的消息或将消息发送到代理服务器,可以使用 AWS PrivateLink 服务。

测试版功能

对 AWS PrivateLink 连接的支持目前处于测试阶段。如果您遇到任何问题或有任何反馈,请联系我们。

按照以下步骤创建 AWS PrivateLink 连接。

  1. 为每个代理服务器创建一个 目标组。将目标类型设置为 IP 地址协议设置为 TCP。确保目标组的 VPC 与云托管 Source 的 VPC 相同。

  2. 创建一个 网络负载均衡器。确保其在与代理源相同的子网中启用,并启用跨区域负载均衡。

  3. 为与创建的目标组对应的每个 MSK 代理服务器创建一个 TCP 监听器。确保端口是唯一的。

  4. 为每个目标组完成 运行状况检查

  5. 创建一个 VPC 端点服务,与创建的网络负载均衡器关联。确保添加将访问端点服务的账户的 AWS 主体,以允许服务使用者进行连接。更多详细信息,请参见 管理权限

  6. 使用 RisingWave 中的 CREATE CONNECTION 命令创建一个 AWS PrivateLink 连接,引用所创建的端点服务。下面是创建 AWS PrivateLink 连接的示例。

    CREATE CONNECTION connection_name WITH (
    type = 'privatelink',
    provider = 'aws',
    service.name = 'com.amazonaws.xyz.us-east-1.abc-xyz-0000'
    );
  7. 使用 AWS PrivateLink 连接创建 Source 或 Sink。