Kafka-UI 完整上手:三步部署,5 分钟打开集群监控面板
【免费下载链接】kafka-uiOpen-Source Web UI for Apache Kafka Management项目地址: https://gitcode.com/GitHub_Trending/ka/kafka-ui
你刚接了一个 Kafka 集群,却只能靠命令行翻日志、猜指标。Kafka-UI 是开源的 Kafka 集群可视化管理 Web 界面,把 Broker、Topic、消费组和消息内容集中到一个页面。照着下面的步骤操作,三步命令,5 分钟内就能在浏览器里看到第一个集群面板。
🚀 先跑起来
三行命令,把整套环境拉起来。
前置要求只有一条:机器上装好 Docker(20.10 以上)和 Docker Compose,且 8080 端口空闲。
- 克隆仓库,进入 compose 部署目录
- 执行启动命令,后台拉起全部服务
git clone https://gitcode.com/GitHub_Trending/ka/kafka-ui # 拉取仓库代码 cd kafka-ui/documentation/compose # 进入 compose 部署目录 docker-compose -f kafka-ui.yaml up -d # 后台启动 Kafka-UI 及 Kafka、Schema Registry 等配套服务这个文件一次拉起 7 个容器:Kafka-UI、两个 Kafka broker(kafka0 和 kafka1)、两个 Schema Registry、Kafka Connect,以及负责预建主题的初始化容器。
确认成功的标准:容器全部 Up,健康接口返回 UP,浏览器打开 http://localhost:8080 能看到 Kafka-UI 首屏。
docker-compose -f kafka-ui.yaml ps # 查看 7 个容器状态是否均为 Up curl http://localhost:8080/actuator/health # 返回 UP 表示服务就绪🖥 打开界面做两件事
先认首屏,再做两个高频操作。
截图里左侧导航列出 local 和 secondLocal 两个集群。打开集群卡片,能看到 Broker 数量、主题数、分区数,以及生产与消费流量指标。Topics 页签默认就有 compose 预建的 first.messages、second.users、second.messages 三个主题,可以直接拿来做练习。
操作一:在 Topics 页创建一个主题。
- 点 Topics 列表页的 New Topic 按钮,打开创建表单
- 填写主题名、分区数与副本数,提交
- 刷新列表,确认新主题出现在对应集群下
操作二:给主题发一条消息。
- 打开 first.messages 主题的 Messages 页签
- 在发送表单选择分区、填入消息内容并发送
- 回到消息列表,确认新消息按时间排在最前
⚙️ 需要调参数时
要接自己的集群,改这几处配置。
以上参数都在 kafka-ui.yaml 里 kafka-ui 服务的 environment 段,改完重启容器生效。
| 参数 | 默认值 | 什么时候需要改它 |
|---|---|---|
| KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS | kafka0:29092 | 接自己的生产集群时,换成宿主机可达的 broker 地址 |
| KAFKA_CLUSTERS_0_NAME | local | 想改 UI 左侧显示的集群名时 |
| KAFKA_CLUSTERS_0_SCHEMAREGISTRY | http://schemaregistry0:8085 | 接自己的 Schema Registry 管理 Avro/JSON Schema 时 |
| DYNAMIC_CONFIG_ENABLED | true | 关闭后无法在 UI 里热添加集群,一般保持开启 |
| 端口映射 | 8080:8080 | 8080 被占用时改成 8081:8080 |
服务关系如下:
✅ 花 5 分钟自检
六项核对,逐项打勾。
自检不装任何额外工具,浏览器加两条命令即可。
| 检查项 | 怎么确认 | 通过标准 |
|---|---|---|
| 容器状态 | docker-compose -f kafka-ui.yaml ps | 7 个容器全部 Up |
| 健康检查 | 访问 http://localhost:8080/actuator/health | 返回 UP |
| 界面首屏 | 浏览器打开 http://localhost:8080 | 左侧出现 local、secondLocal 两个集群 |
| 主题列表 | 进入 Topics 页签 | 看到 first.messages 等预建主题 |
| 消息收发 | 按上文给 first.messages 发一条消息 | 列表出现带时间戳的新消息 |
| Schema Registry | 访问 http://localhost:8085/subjects | 返回 JSON 主题列表 |
🛠 出问题时
三种常见故障,对照处理。
| 现象 | 常见原因 | 一句话解决办法 |
|---|---|---|
| 8080 打不开页面 | 端口被占用或容器没起来 | 先用 ps 查容器,端口占用就把映射改成 8081:8080 |
| 集群显示 disconnected | bootstrap 地址从宿主机不可达 | 把地址换成宿主机可达的 broker 地址 |
| 首页长时间转圈 | 镜像没拉完或 Kafka 还在初始化 | 看 kafka-init-topics 日志,等初始化跑完 |
📌 收尾
跑顺之后,把 UI 接到真实集群。
把 environment 段换成你自己的集群地址,多集群写法参考 DOCKER_COMPOSE.md,其余 compose 示例也在 documentation/compose/ 目录下;前端源码在 kafka-ui-react-app/。
【免费下载链接】kafka-uiOpen-Source Web UI for Apache Kafka Management项目地址: https://gitcode.com/GitHub_Trending/ka/kafka-ui
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考