【问题标题】:what does "Client subnets" mean in Amazon Managed Streaming for Apache Kafka?Amazon Managed Streaming for Apache Kafka 中的“客户端子网”是什么意思?
【发布时间】:2021-09-23 01:12:38
【问题描述】:
AWS MSK documentation 说:
clientSubnets:要连接到客户端虚拟私有云 (VPC) 中的子网列表。 Amazon 在这些子网中创建弹性网络接口。客户端应用程序使用弹性网络接口来生成和使用数据。
问题一:clientSubnets 是什么意思?
问题 2:它们是 Kafka 代理所在的子网吗?
如果答案是肯定的,为什么叫ClientSubnet?与Client无关。
问题 3:谁有权访问代理?
我的 VPC 有三个子网,如果我的 EC2 实例在子网 A 中,但 brokerB 在子网 B 中,这个 EC2 实例是否可以访问 broker B 的端点?
【问题讨论】:
标签:
amazon-web-services
apache-kafka
subnet
aws-msk
【解决方案1】:
下图from AWS docs 说明了正在发生的事情:
Q1 和 Q2:clientSubnets 是什么意思?它们是 Kafka 代理所在的子网吗?
不,他们不是。这些是您的 VPC 中将创建弹性网络接口 (ENI) 的子网。这是因为 MKS 集群是在 AWS 托管 VPC 中创建的,而不是您的 VPC,如上图所示。这意味着您无法直接访问集群。您只能使用在您指定的clientSubnets 中创建的 ENI 与它进行交互。
问题 3:谁有权访问代理?
直接访问只有 AWS。但是您可以通过 ENI 从您的 VPC 中的任何子网访问它。因此,您的实例不必位于相同的子网中。只要它们在同一个 VPC 中,您的实例和 MKS 的 ENI 就可以在不同的子网中。
【讨论】:
-
-
@RyanLyu 端点也使用 ENI,但 ENI 的主要链接是 this。 VPC 端点主要供您在没有互联网的情况下与 AWS API 进行交互。