kafka UI

简介:

  • 开源项目:https://github.com/provectus/kafka-ui

  • 产品文档地址:https://docs.kafka-ui.provectus.io/

  • 使用 React + Spring Boot 构建。

  • 支持多集群管理、主题浏览、消息查看/生产、消费者组监控、Schema Registry 集成等。

主要特性:

  • 多 Kafka 集群支持

  • 实时监控(吞吐量、延迟、分区状态)

  • 消息浏览器(支持按 offset/key/value 过滤)

  • 生产消息(支持 JSON、AVRO、STRING 等格式)

  • 消费者组管理(查看 lag、重置 offset)

  • Schema Registry 集成(支持 Confluent 或 Apicurio)

  • ACL 和安全认证支持(SASL/SSL)

  • 插件化架构(可扩展)

部署方式:

  • Docker(最常用)

  • Kubernetes(Helm Chart 支持)

  • 原生 JAR 包运行

优点:

  • 界面现代、响应快

  • 社区活跃(截至 2025 年仍在积极维护)

  • 功能全面,适合开发和运维使用

缺点:

  • 对于超大规模集群(数千个主题)可能存在性能瓶颈(可通过配置优化)

拉取kafka镜像

docker pull bitnami/kafka:latest
docker pull provectuslabs/kafka-ui:latest

创建kafka数据目录

mkdir -p /data/kafka

docker-compose.yml文件编写

cat > /data/kafka/docker-compose.yml <<'EOF'
# version: "3"
services:
  kafka:
    image: bitnami/kafka:latest
    container_name: kafka
    ports:
      - '9092:9092'
    environment:
      - KAFKA_CFG_NODE_ID=0
      - KAFKA_CFG_PROCESS_ROLES=controller,broker
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
      - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
      - KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
      - KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
      - KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092
  kafka-ui:
    container_name: kafka-ui
    image: provectuslabs/kafka-ui:latest
    ports:
      - '8080:8080'
    environment:
      - KAFKA_CLUSTERS_0_NAME=dev_cluster 
      - KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS=127.0.0.1:9092

EOF

启动kafka服务

cd /data/kafka/

docker-compose up -d

docker-compose ps

查看容器日志

docker logs -f kafka

K8S部署(helm)

helm repo add kafka-ui https://provectus.github.io/kafka-ui-charts
helm install kafka-ui kafka-ui/kafka-ui

访问kafka服务

浏览器访问: http://hwcloud.yangsean.top:8080

使用方法:

参考链接

https://mp.weixin.qq.com/s/l4xyPqd2wbXWY8cqsSEk_A

https://mp.weixin.qq.com/s/rXUqE65tWNB-LVyiRHecew