注意
Atlas 支持 AWS、Google Cloud 和 Azure 托管的专用集群,以及多云分片集群的网络对等连接。
网络对等互连在您的Atlas VPC和云提供商的VPC之间建立私有连接。该连接将流量与公共网络隔离以提高安全性。 Atlas Stream Processing支持两种类型的网络对等连接:
出站:流处理工作区将对等互连请求发送到云提供商VPC的VPC连接。此连接类型适用于您对外部VPC具有完全管理访问权限并且可以批准其连接请求的场景。
入站:一种 VPC 连接,其中您的云提供商 VPC 向您的 Stream Processing 工作区发送对等互连请求。此连接类型适用于您对云提供商的 VPC 没有完全管理权限的场景,因为它仅要求在 Atlas VPC 内获得批准。
警告
Atlas 不支持在不同云提供商的单个区域内部署的集群之间 设置“网络对等互联”。 例如,您不能在 AWS 单个区域托管的 Atlas 集群 和 GCP 单个区域托管的应用程序之间 设置“网络对等互联”。
此页面上的程序将引导您创建出站 VPC 连接,以及创建、接受、拒绝和删除 Stream Processing 工作区的入站 VPC 对等互连连接。
先决条件
要创建和配置连接,您必须具备以下条件:
Atlas项目
具有管理连接注册表的
Project Owner或Project Stream Processing Owner角色的 Atlas 用户注意
Project Owner角色允许您创建数据库部署、管理项目访问和项目设置、管理 IP 访问列表条目等。Project Stream Processing Owner角色可执行 Atlas Stream Processing 操作,如查看、创建、删除和编辑Stream Processing 工作区,以及在连接注册表中创建、更新和删除 VPC 对等互连。要详细了解这两个角色之间的区别,请参阅项目角色。
Atlas 集群
Considerations
Atlas Stream Processing仅支持将RFC 1918 私有IP范围用于VPC对等互连。您必须使用以下IP范围之一:
10.0.0.0/8172.16.0.0/12192.168.0.0/16
创建出站VPC对等互连连接
要创建与流处理工作区的出站VPC对等互连,请执行以下操作:
要使用 Atlas 用户界面创建从 Stream Processing 工作区到云提供商 VPC 的出站 VPC 对等互连,请参阅 添加 Atlas Stream Processing 连接 Apache Kafka,并选择 作为连接类型,选择Atlas UI 作为接口。
您必须选择 SASL_SSL 作为VPC对等连接的安全协议。
要使用API创建与流处理工作区的出站VPC对等连接,请参阅返回一个项目中的所有网络对等连接
您必须选择 SASL_SSL 作为VPC对等连接的安全协议。
从 Confluent 生成传入 VPC 对等连接请求
要设置和配置从 Confluent 帐户发起的 AWS VPC 对等连接,请执行以下操作:
创建一个服务帐户以使用Atlas 管理 API进行身份验证。
创建服务帐户并生成访问权限令牌以对API请求进行身份验证。要学习;了解更多信息,请参阅Atlas Administration API入门。
检索 Atlas Cloud AWS 帐户 ID、VPC ID 和 CIDR 块。
示例API请求如下所示:
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2024-11-13+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/accountDetails?cloudProvider=aws®ionName=US_EAST_1"
请注意以下示例参数值:
Parameter values | 说明 |
|---|---|
671a86f4cfc9da7d7c31b14f | Atlas项目ID |
AWS (Amazon Web Services) | 云提供商 |
US_EAST_1 | AWS 区域名称 |
示例输出类似于以下内容:
{ "awsAccountId": "974404375205", "cidrBlock": "192.168.248.0/21", "vpcId": "vpc-0ef7efa5ceca36e2f" }
VPC对等互连请求在可能出现延迟后显示在Atlas中。
要查看您 Atlas 帐户中的待处理请求,请执行类似以下内容的 API 请求:
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659"
请注意以下示例参数值:
Parameter values | 说明 |
|---|---|
671a86f4cfc9da7d7c31b14f | Atlas项目ID |
417601102659 | 在步骤 7 中获得的 Confluent AWS 帐户 ID |
示例输出类似于以下内容:
{ "links": [ { "href": "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659&pageNum=1&itemsPerPage=100", "rel": "self" } ], "results": [ { "_id": "6759e61aa6cf0a5476e233d1", "accepterAccountId": "974404375205", "accepterVpcId": "vpc-0ddfd37072cc5ed61", "cloudStatus": "pending-acceptance", "expirationTime": "2024-12-18T19:20:37Z", "groupId": "671a86f4cfc9da7d7c31b14f", "localStatus": "NONE", "name": "pcx-09277e1e81d0751c1", "requesterAccountId": "417601102659", "requesterCidr": "10.0.0.0/16", "requesterVpcId": "vpc-0d13eb6a2f0377854" } ], "totalCount": 1 }
接受传入的VPC对等互连连接请求。
请注意,cloudStatus 的值是 pending-acceptance。
执行以下 API 请求:
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
请注意以下示例参数值:
Parameter values | 说明 |
|---|---|
{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"} | 这是包含“请求者”VPC ID 和“请求者”AWS 帐户 ID 的 POST 有效负载。在本例中,“请求者”为 Confluent。 |
671a86f4cfc9da7d7c31b14f | Atlas项目ID |
pcx-09277e1e81d0751c1 | 从上一步中获得的传入 VPC 连接名称 |
获取项目的Amazon Web Services帐户ID和VPC ID
如果您想要创建与 Stream Processing 工作区的入站 VPC 对等互连连接,首先需要检索 AWS 账户 ID、AWS VPC ID 和与 Atlas 项目关联的 CIDR 块,以便从外部云环境发起 VPC 对等互连请求。
要使用 Atlas 管理 API 检索 Atlas 项目的 AWS 帐户 ID、AWS VPC ID 和 CIDR 区块,请参阅返回指定群组和区域的帐户 ID 以及 VPC ID。
列出入站VPC对等互连连接
要使用 Atlas Administration API 列出与您的 Stream Processing 工作区的所有入站 VPC 对等互连连接,请参阅返回所有 VPC 对等互连连接
接受入站VPC对对等互连互连
要使用Atlas VPC 对等互连管理 API接受与流处理工作区的入站对等互连连接,请参阅 请求接受传入的VPC对等互连连接
示例API请求如下所示:
注意
此 curl 命令使用服务帐户访问权限令牌 (OAuth 2.0) 而不是API密钥进行身份验证。要学习;了解更多信息,请参阅Atlas 管理 API入门。
curl \ -s --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
请注意以下示例参数值:
拒绝入站VPC对对等互连互连
要使用 Atlas Administration API 拒绝与流处理工作区的入站 VPC 对等互连,请参阅 请求拒绝传入的 VPC 对等互连
删除入站VPC对等对等互连连接
要使用 Atlas Administration API 删除与流处理工作区的入站 VPC 对等互连,请参阅 删除传入的 VPC 对等互连