能否通过公网访问消息队列 for Apache Kafka 实例?

目前商业版消息队列 for Apache Kafka 服务已经支持 VPC 内和公网接入两种方式,公网接入需要购买公网实例。

注意 网络类型只能在购买时决定,购买之后无法更改。

消息队列 for Apache Kafka 的接入点为何 Ping 不通?

安全最小原则,消息队列 for Apache Kafka 集群默认禁止 Ping,但可以 Telnet。但需要保证以下前提:

  • 执行 Telnet 的机器在白名单范围内。

  • 如果 Telnet VPC 内网接入点,请保证客户机器在同 VPC 内。

  • 如果 Telnet 公网接入点,请保证客户机器可以访问公网。

通过代理能否访问消息队列 for Apache Kafka 实例?

不能。

消息队列 for Apache Kafka 客户端访问服务端的原理是:

  • 通过 bootstrap.servers 随机访问服务器拿到 Metadata。

  • 通过 Metadata 里的 IP 进行后续的收发消息。

配置代理,可以走通第一步,但走到上述第二步时,仍然是通过 Metadata 里的IP进行访问,导致访问不通。

所以,必须要保证网络全连通。如果是自建机房访问云上,则需要打通专线。

不是同一可用区的 ECS 能否访问消息队列 for Apache Kafka 实例?

以非公网的方式访问消息队列 for Apache Kafka 实例,首先要满足以下两个条件:

  • 执行访问的机器必须在白名单范围内。

  • 执行访问的机器必须与消息队列 for Apache Kafka 实例在同一 VPC 内。

在同一 VPC 的不同可用区内,只要通过 VPC 内虚拟网络的配置让不同可用区网络可达,那么就可以访问消息队列 for Apache Kafka 实例。

  • 单 VPC 内多交换机的网络规划的更多信息,请参见网络规划

  • 配置多交换机的路由的更多信息,请参见路由表

经典网络是否必须要选择 172.16.0.0/12 网段?

不是,但是使用 172.16.0.0/12 网段的配置最简单。如需选择其他网段,请参见 ClassicLink概述进行配置。