在使用Kafka进行开发时,有个可视化的管理界面有助于提高开发效率。目前已经有很多Kafka的管理界面实现。本文介绍的Kafka UI是一个新的实现。
该界面的GitHub地址是provectus/kafka-ui。GitHub - provectus/kafka-ui: Open-Source Web GUI for Apache Kafka ManagementOpen-Source Web GUI for Apache Kafka Management. Contribute to provectus/kafka-ui development by creating an account on GitHub.https://github.com/provectus/kafka-ui
该UI的特点是简洁易用,没有太多花里胡哨的功能。虽然功能比较简单,但是对于开发和测试已经足够了。
下面是该UI的主界面。
下面是Topic的界面。
该UI提供容器镜像,很容易就可以使用。
我的《Quarkus云原生微服务实战开发》一书的实战应用,就用到了这个Kafka UI。在Docker Compose文件中,添加下面的声明:
version: '3'
services:
kafka-ui:
image: provectuslabs/kafka-ui:0.2.0
environment:
- KAFKA_CLUSTERS_0_NAME=local
- KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS=kafka:9092
- KAFKA_CLUSTERS_0_ZOOKEEPER=zookeeper:2181
- KAFKA_CLUSTERS_0_KAFKACONNECT_0_NAME=local
- KAFKA_CLUSTERS_0_KAFKACONNECT_0_ADDRESS=http://kafka-connect:8083
ports:
- "9080:8080"
depends_on:
- kafka
- kafka-connect
- zookeeper
通过环境变量的方式指定了Kafka、Zookeeper和Kafka Connect的地址。打开浏览器访问界面即可。
下面是另外一些管理Kafka的项目:
GitHub - HomeAdvisor/Kafdrop: Kafka UI and Monitoring Toolhttps://github.com/HomeAdvisor/KafdropGitHub - yahoo/CMAK: CMAK is a tool for managing Apache Kafka clustershttps://github.com/yahoo/CMAKhttps://github.com/cloudhut/kowlhttps://github.com/cloudhut/kowlkPow for Apache Kafka® | Monitor. Manage. Learn.https://kpow.io/AKHQ - Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more...https://akhq.io/DataOps platform for Apache Kafka and Kubernetes | Lenses.iohttps://lenses.io/