"Client subnets" 在 Amazon Managed Streaming for Apache Kafka 中意味着什么?

what does "Client subnets" mean in Amazon Managed Streaming for Apache Kafka?

The AWS MSK documentation said:

clientSubnets: The list of subnets to connect to in the client virtual private cloud (VPC). Amazon creates elastic network interfaces inside these subnets. Client applications use elastic network interfaces to produce and consume data.

问题一:clientSubnets是什么意思?

问题2:它们是Kafka broker所在的子网吗?

如果答案是肯定的,为什么叫Client子网?它与 Client.

无关

问题3:谁有权访问代理?

我的 VPC 有三个子网,如果我的 EC2 实例在子网 A 中,但 brokerB 在子网 B 中,这个 EC2 实例是否可以访问代理 B 的端点?

下图from AWS docs说明了正在发生的事情:

Q1 and Q2: what does clientSubnets mean? and are they subnets that Kafka brokers reside in?

不,他们不是。这些是您的 VPC 中的子网,将在其中创建弹性网络接口 (ENI)。这是因为 MKS 集群是在 AWS 管理的 VPC 中创建的,而不是如上图所示的您的 VPC。这意味着您无法直接访问集群。您只能使用在您指定的 clientSubnets 中创建的 ENI 与其进行交互。

Question3: who has the access to the broker?

直接访问只有AWS。但是您可以通过 ENI 从您的 VPC 中的 任何子网 访问它。因此您的实例不必位于相同的子网中。只要它们在同一个 VPC 中,您的实例和 MKS 的 ENI 就可以在不同的子网中。