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

3节点Kafka集群下Kafka UI无法访问(404)求助

问题原因与解决办法
  • 核心问题:你使用的confluentinc/cp-kafka镜像仅包含Kafka Broker服务,本身不带任何Kafka UI组件,所以你映射的8081端口在容器内没有对应服务,访问时自然返回404。

解决步骤

1. 添加独立Kafka UI服务到docker-compose

新手推荐用开源的provectuslabs/kafka-ui镜像,直接在你的docker-compose.yml中新增一个服务:

services:
  # 原有的kafka节点服务保持不变
  kafka: 
    image: confluentinc/cp-kafka
    ports:
      - "9093:9093"
      - "9094:9094"
    environment:
      KAFKA_NODE_ID: 1
      KAFKA_PROCESS_ROLES: 'broker,controller'
      KAFKA_LISTENERS: LISTENER_USER://kafka:9092,LISTENER_BROKER://kafka:9093,LISTENER_CONTROLLER://kafka:9094
      KAFKA_ADVERTISED_LISTENERS: 'LISTENER_USER://<HOST_1_IP>:9092,LISTENER_BROKER://<HOST_1_IP>:9093'
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: 'LISTENER_USER:PLAINTEXT,LISTENER_BROKER:PLAINTEXT,LISTENER_CONTROLLER:PLAINTEXT'
      KAFKA_CONTROLLER_LISTENER_NAMES: 'LISTENER_CONTROLLER'
      KAFKA_INTER_BROKER_LISTENER_NAME: 'LISTENER_BROKER'
      KAFKA_CONTROLLER_QUORUM_VOTERS: '1@kafka:9094,2@kafka2:9094,3@kafka3:9094'
      CLUSTER_ID: 'UK52_0KiRjOJLgbi5THDqA'
    extra_hosts:
      - "kafka2:<HOST_2_IP>"
      - "kafka3:<HOST_3_IP>"

  # 新增Kafka UI服务
  kafka-ui:
    image: provectuslabs/kafka-ui
    ports:
      - "8081:8080"  # UI默认端口是8080,映射到宿主机8081
    environment:
      KAFKA_CLUSTERS_0_NAME: "my-kafka-cluster"
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: "<HOST_1_IP>:9092,<HOST_2_IP>:9092,<HOST_3_IP>:9092"
    depends_on:
      - kafka

注意:把<HOST_1_IP>、<HOST_2_IP>、<HOST_3_IP>替换成你的实际节点IP

2. 清理无用配置

原kafka服务中映射的8081:8081端口可以删除,因为cp-kafka镜像没有监听这个端口的服务。

3. 重启服务并访问

执行docker-compose down && docker-compose up -d重启服务,然后访问http://<HOST1>:8081即可看到Kafka UI界面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 01:02:04