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

配置Kafka实例的公网访问

客户端可以使用公网通过IPv4地址或者IPv6地址访问Kafka实例。

  • IPv4地址:在Kafka控制台开启实例的公网访问功能,并设置弹性IP地址,实现公网访问。
  • IPv6地址:在创建Kafka实例时开启IPv6功能,然后将IPv6地址添加到共享带宽中,同时支持IPv6内网访问和IPv6公网访问。

Kafka控制台的“基本信息 > 连接信息”的内容存在两种不同的显示,导致开启/关闭IPv4公网访问的步骤有所不同。

前提条件

  • 只有处于“运行中”状态的Kafka实例支持修改公网访问配置。
  • (可选)如果使用IPv6地址访问Kafka实例,确认Kafka实例已开启IPv6功能。

约束与限制

Kafka实例只支持绑定IPv4弹性IP地址,不支持绑定IPv6弹性IP地址。

开启IPv4公网访问(不支持修改SASL开关)

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 单击Kafka实例的名称,进入实例的“基本信息”页面。
  5. 在“公网访问”后,单击,开启公网访问。在“弹性IP地址”中,为每个代理设置对应的弹性IP地址。

    如果没有足够数量的弹性IP地址,参考如下步骤设置弹性IP地址。

    1. 单击“创建弹性IP”,跳转到“购买弹性公网IP”页面,购买弹性IP地址,具体操作请参考申请弹性公网IP
    2. 购买完成后,返回开启公网页面。
    3. 单击“弹性IP地址”后的,然后在下拉框中选择和代理数量相同的弹性IP地址,单击
    4. 您可以在实例的“后台任务管理”页面,查看当前任务的操作进度。任务状态为“成功”,表示操作成功。
    图1 开启公网访问

    开启公网访问后,需要设置对应的安全组规则,才能成功连接Kafka。连接Kafka的具体操作请参考连接实例

    表1 Kafka实例安全组规则(IPv4公网访问)

    方向

    协议

    类型

    端口

    源地址

    说明

    入方向

    TCP

    IPv4

    9094

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

    通过公网访问Kafka(关闭SSL加密)。

    入方向

    TCP

    IPv4

    9095

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

    通过公网访问Kafka(开启SSL加密)。

关闭IPv4公网访问(不支持修改SASL开关)

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 单击Kafka实例的名称,进入实例的“基本信息”页面。
  5. 在“公网访问”后,单击,完成公网访问的关闭。

    您可以在实例的“后台任务管理”页面,查看当前任务的操作进度。任务状态为“成功”,表示操作成功。

    关闭公网访问后,需要设置对应的安全组规则,才能通过内网成功连接Kafka。连接Kafka的具体操作请参考连接实例

    表2 Kafka实例安全组规则(内网访问)

    方向

    协议

    类型

    端口

    源地址

    说明

    入方向

    TCP

    IPv4

    9092

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

    使用内网通过同一个VPC访问Kafka实例(关闭SSL加密)。

    入方向

    TCP

    IPv4

    9093

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

    使用内网通过同一个VPC访问Kafka实例(开启SSL加密)。

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

开启IPv4公网访问(支持修改明文/密文接入)

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 单击Kafka实例的名称,进入实例的“基本信息”页面。
  5. 在“公网访问”后,单击,开启公网访问。在“弹性IP地址”中,为每个代理设置对应的弹性IP地址。

    如果没有足够数量的弹性IP地址,参考如下步骤设置弹性IP地址。

    1. 单击“创建弹性IP”,跳转到“购买弹性公网IP”页面,购买弹性IP地址,具体操作请参考申请弹性公网IP
    2. 购买完成后,返回开启公网页面。
    3. 单击“弹性IP地址”后的,然后在下拉框中选择和代理数量相同的弹性IP地址,单击,跳转到“后台任务管理”页面。
    4. 当任务状态显示为“成功”时,表示成功开启公网访问。
    图2 开启公网访问

    开启公网访问后,需要设置接入方式(明文接入、密文接入)和对应的安全组规则,才能成功连接Kafka。连接Kafka的具体操作请参考连接实例

    表3 Kafka实例安全组规则(IPv4公网访问)

    方向

    协议

    类型

    端口

    源地址

    说明

    入方向

    TCP

    IPv4

    9094

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

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

    入方向

    TCP

    IPv4

    9095

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

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

关闭IPv4公网访问(支持修改明文/密文接入)

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 单击Kafka实例的名称,进入实例的“基本信息”页面。
  5. 关闭公网访问前,需要先关闭公网访问中的“明文接入”和“密文接入”。然后在“公网访问”后,单击,弹出确认关闭对话框。
  6. 单击“确认”,跳转到“后台任务管理”页面。当任务状态显示为“成功”时,表示成功关闭公网访问。

    关闭公网访问后,需要设置对应的安全组规则,才能成功通过内网连接Kafka。连接Kafka的具体操作请参考连接实例

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

    表4 Kafka实例安全组规则(内网访问)

    方向

    协议

    类型

    端口

    源地址

    说明

    入方向

    TCP

    IPv4

    9092

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

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

    入方向

    TCP

    IPv4

    9093

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

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

开启IPv6公网访问

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    请选择Kafka实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
  4. 单击Kafka实例的名称,进入实例的“基本信息”页面。
  5. 在“连接信息”区域,获取并记录“内网连接地址”的IPv6地址。在“网络”中,获取并记录虚拟私有云和子网。

    图3 实例详情页

  6. 在管理控制台左上角单击,选择“网络 > 弹性公网IP EIP”,进入“弹性公网IP”页面。
  7. 在左侧导航栏单击“共享带宽”,进入“共享带宽”页面。
  8. 申请一个共享带宽,具体操作请参考申请共享带宽

    如果已有共享带宽,可重复使用,无需再次申请。

  9. 在共享带宽所在行,单击“添加公网IP”,弹出“添加公网IP”对话框。
  10. 设置如表5参数,单击“确定”。

    表5 添加公网IP参数

    参数

    说明

    公网IP

    选择“IPv6网卡”

    所属VPC

    在下拉框中选择5中记录的虚拟私有云。

    子网

    在下拉框中选择5中记录的子网,并勾选5中记录的全部IPv6地址。

    图4 添加公网IP

  11. 共享带宽配置成功后,需要在Kafka实例的安全组中设置如表6所示规则,才能成功通过IPv6地址连接Kafka。

    表6 Kafka实例安全组规则(IPv6访问)

    方向

    协议

    类型

    端口

    源地址

    说明

    入方向

    TCP

    IPv6

    9192

    ::/0

    通过IPv6地址访问Kafka实例(关闭SSL加密)。

    入方向

    TCP

    IPv6

    9193

    ::/0

    通过IPv6地址访问Kafka实例(开启SSL加密)。

    • 客户端通过IPv6的公网连接Kafka实例时,Kafka的连接地址为“内网连接地址”中的IPv6地址。
    • 通过IPv6的公网连接Kafka实例时,客户端网卡必须添加到共享带宽中。客户端网卡所在的共享带宽和Kafka实例所在的共享带宽不需要为同一个,共享带宽间网络默认互通。

关闭IPv6公网访问

将Kafka实例的IPv6地址从共享带宽中移出,具体请参考从共享带宽中移出弹性公网IP