功能概述

Kafka 从 v3.1.0 - 3.0.0 版本开始,支持多节点公网访问功能。用户为集群中所有 Kafka 节点绑定公网 EIP,即可通过公网 EIP 连接 Kafka。

Kafka 的公网访问功能默认为 关闭 状态,Kafka 集群创建成功后,用户可以根据实际业务需求选择是否开启公网访问。开启公网访问后,用户可以通过公网 IP 连接 Kafka,同时也可以选择继续通过内网 IP 连接 Kafka。

操作步骤

步骤一:创建公网 EIP

可参考如何申请公网 EIP,创建满足以下条件的公网 EIP。

  • EIP 与 Kafka 集群需在相同的区域。

  • EIP 的数量必须大于等于 Kafka 集群中 Kafka 节点 数量。

步骤二:Kafka 节点绑定 EIP

所有 Kafka 节点 均需绑定 EIP,否则,用户将不能通过公网 EIP 直接连接 Kafka 集群。客户端节点 可以根据实际情况选择是否绑定公网 EIP,若不绑定,则不能通过公网 EIP 直接连接客户端节点。

  1. 通过 Web 浏览器登录企业云平台的 Console。

  2. 在顶部菜单栏中选择产品与服务 > 消息队列与中间件 > Kafka 服务,进入 Kafka 管理页面。

  3. 在 Kafka 管理页面,点击目标集群 ID,进入集群详情页面。

    kafka_cluster_info
  4. 在右侧节点标签页,右键点击目标节点,在弹出的快捷菜单栏中,选择外部 IP > 绑定,选择目标 EIP,点击提交,完成节点绑定公网 EIP 的操作。

    说明

    需参考以上步骤,逐个给 Kafka 节点绑定公网 EIP。

  5. 待集群状态更新为 活跃,用户可在节点列表中查看各节点对应的 EIP 以及安全组。

步骤三:配置安全组规则

Kafka 节点绑定公网 IP 后,系统会自动给所有节点绑定集群默认安全组,安全组内的所有节点可以互相通信。用户需在该安全组中放行 90929999 端口。

  1. 延续前文步骤,进入 Kafka 集群详情页面。

  2. 在右侧节点标签页,点击节点所在行末尾的安全组名称,进入安全组详情页面。

  3. 在下行规则中,放开 90929999 端口。如下图所示。

    添加安全组规则
    说明
    • 若不放行 9092,用户无法在外部通过 <EIP>:9092 访问 Kafka。

    • 若不放行 9999,用户无法正常使用 Kafka Manager。

  4. 规则添加完成后,点击应用修改,使规则生效。

  5. 在安全组详情页面,点击左侧基本属性区域右上角的图标,在展开的菜单栏中,选择修改

  6. 在弹出的修改安全组属性对话框中,打开 组内互信,点击修改,完成操作。

步骤四:开启 SASL

公网访问可能存在一定的安全风险,开启公网访问的同时,建议 Kafka 集群开启 SASL,详情可参考开启 SASL

步骤五:关闭公网访问

若无需公网访问,解绑所有 Kafka 节点的公网 IP 即可。

说明

当所有节点均解绑 EIP 后,安全组将自动解绑。

  1. 延续前文步骤,进入 Kafka 集群详情页面。

  2. 在右侧节点标签页,右键点击目标节点,在弹出的快捷菜单栏中,选择外部 IP > 解绑

  3. 弹出确认对话框,用户确认操作无误后,点击确认,完成节点解绑公网 EIP 的操作。

  4. 需参考以上步骤,逐个给 Kafka 节点绑定公网 EIP。