You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Bitnami Kafka(KRaft) Helm Chart实现多控制器同IP异端口暴露

解决Bitnami Kafka Helm Chart同IP多端口暴露KRaft控制器与Broker的问题

核心问题分析

Bitnami Kafka Chart默认的控制器/Broker Service模板仅支持单外部端口配置(ports.external为int32类型),无法直接实现同一公网IP下多端口映射。要满足需求,需自定义Chart的Service模板并调整values配置。

自定义Chart步骤

1. 修改控制器Service模板

找到Chart目录下的templates/controller/service.yaml,将原有的单端口配置替换为多端口循环渲染逻辑:

原端口配置片段:

ports:
  - name: external
    port: {{ .Values.controller.service.ports.external }}
    targetPort: external
    protocol: TCP

替换为:

ports:
  {{- range $index, $port := .Values.controller.service.ports.external }}
  - name: external-controller-{{ add $index 1 }}
    port: {{ $port }}
    targetPort: external
    protocol: TCP
  {{- end }}

2. 修改Broker Service模板(如需Broker也用同一IP)

同理,修改templates/service.yaml中的端口配置:

原端口配置片段:

ports:
  - name: external
    port: {{ .Values.service.ports.external }}
    targetPort: external
    protocol: TCP

替换为:

ports:
  {{- range $index, $port := .Values.service.ports.external }}
  - name: external-broker-{{ add $index 1 }}
    port: {{ $port }}
    targetPort: external
    protocol: TCP
  {{- end }}

3. 调整values配置

更新values.yaml(或自定义values文件),将ports.external改为数组,并指定统一的公网静态IP:

控制器部分配置:

controller:
  forceExpose: true
  service:
    type: LoadBalancer
    ports:
      external: [29092, 29093, 29094] # 3个控制器对应3个不同外部端口
    loadBalancerIP: "34.59.137.112" # 统一的公网静态IP
    loadBalancerClass: ""

Broker部分配置(示例):

service:
  type: LoadBalancer
  ports:
    external: [39091, 39092, 39093, 39094, 39095] # 5个Broker对应5个不同外部端口
  loadBalancerIP: "34.59.137.112" # 与控制器共用同一公网IP
  loadBalancerClass: ""

部署验证

  1. 使用修改后的Chart部署:
helm upgrade --install kafka ./path/to/modified-chart -f your-custom-values.yaml
  1. 检查LoadBalancer服务状态,确认所有端口已映射到指定IP:
kubectl get svc kafka-controller-external kafka-external
  1. 使用Kafka客户端测试各端口的连通性,确保控制器和Broker能正常对外提供服务。

内容的提问来源于stack exchange,提问作者Sujit Tah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 16:10:09