更新时间:2024-10-25 GMT+08:00

连接Kafka网络要求

客户端可以通过公网连接Kafka实例,也可以通过内网连接Kafka实例。使用内网连接时,注意以下几点:

  • 如果客户端和Kafka实例部署在同一个VPC内,网络默认互通。
  • 如果客户端和Kafka实例部署在不同VPC中,由于VPC之间逻辑隔离,客户端和Kafka实例不能直接通信,需要打通VPC之间的网络。

客户端连接Kafka实例的方式如表1所示。

表1 连接方式说明

连接方式

实现方式

参考文档

公网连接

  • 客户端通过IPv4地址访问Kafka实例:在Kafka控制台开启公网访问,配置弹性公网IP,客户端通过弹性公网IP访问Kafka实例。
  • 客户端通过IPv6地址访问Kafka实例:在Kafka控制台开启IPv6功能,将IPv6地址加入到共享带宽中,实现客户端通过公网访问Kafka实例。

配置Kafka实例的公网访问

使用DNAT通过端口映射方式,实现客户端通过公网连接Kafka实例。

使用DNAT实现公网访问Kafka

内网连接

客户端和Kafka实例部署在同一个VPC中,此时网络默认互通。

-

客户端和Kafka实例部署在同一个Region的不同VPC中,利用VPC终端节点在不同VPC间建立跨VPC的连接通道,实现跨VPC访问。

使用VPCEP实现跨VPC访问Kafka

客户端和Kafka实例部署在同一个Region的不同VPC中,利用VPC对等连接将两个VPC间的网络打通,实现跨VPC访问。

对等连接

客户端连接Kafka实例前,需要在Kafka实例所属安全组中配置如下安全组规则,否则会连接失败。

创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问Kafka实例,无需添加表2的规则。

表2 安全组规则

方向

协议

类型

端口

源地址

说明

入方向

TCP

IPv4

9094

Kafka客户端所在的IP地址或地址组

通过公网访问Kafka实例(明文接入)。

入方向

TCP

IPv4

9092

Kafka客户端所在的IP地址或地址组

  • 使用内网通过同一个VPC访问Kafka实例(明文接入)。
  • 使用对等连接跨VPC访问Kafka实例(明文接入)。

入方向

TCP

IPv6

9192

Kafka客户端所在的IP地址或地址组

通过IPv6地址访问Kafka实例(关闭SSL加密)(内网和公网都适用)。

入方向

TCP

IPv4

9095

Kafka客户端所在的IP地址或地址组

通过公网访问Kafka实例(密文接入)。

入方向

TCP

IPv4

9093

Kafka客户端所在的IP地址或地址组

  • 使用内网通过同一个VPC访问Kafka实例(密文接入)。
  • 使用对等连接跨VPC访问Kafka实例(密文接入)。

入方向

TCP

IPv6

9193

Kafka客户端所在的IP地址或地址组

通过IPv6地址访问Kafka实例(开启SSL加密)(内网和公网都适用)。

入方向

TCP

IPv4

9011

198.19.128.0/17

通过VPC终端节点实现跨VPC访问Kafka实例(密文接入和明文接入都适用)。

入方向

TCP

IPv4

9011

Kafka客户端所在的IP地址或地址组

使用DNAT访问Kafka实例(密文接入和明文接入都适用)。