Docker 部署 Kafka 可视化 Kafka-UI
前言
本文部署的Kafka-UI 是基于Docker Compose 部署 Kafka的KRaft模式,如有需要可访问下文链接
Docker Compose 部署 Kafka的KRaft模式 不用依赖 Zookeeper
此部署也适用于不是docker部署的kafka集群
1.启动 Kafka-UI 服务
1.1 kafka 来自docker安装
docker run -d \
--name kafka-ui \
--network root_kafka-network \
-p 8080:8080 \
-e KAFKA_CLUSTERS_0_NAME=local \
-e KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092 \
-e SERVER_SERVLET_CONTEXT_PATH=/ \
-e AUTH_TYPE=LOGIN_FORM \
-e SPRING_SECURITY_USER_NAME=admin \
-e SPRING_SECURITY_USER_PASSWORD=admin \
-e JAVA_OPTS=-Dfile.encoding=UTF-8 \
provectuslabs/kafka-ui:latest
说明:
--network root_kafka-network
使用Kafka网络名 (在kafka部署的时候没有指定项目名称,kafka-network会root_ 作为前缀)
KAFKA_CLUSTERS_0_NAME=local 自定义集群名称
KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092 如有多个地址逗号分隔,比如:kafka1:9092,kafka2:9092
如需添加多个集群,按照如下格式类推
KAFKA_CLUSTERS_1_NAME=cluster01 自定义集群名称
KAFKA_CLUSTERS_1_BOOTSTRAP_SERVERS=kafka:9092 如有多个地址逗号分隔,比如:kafka1:9092,kafka2:9092
SPRING_SECURITY_USER_NAME=admin 登录的用户名
SPRING_SECURITY_USER_PASSWORD=admin 登录的密码
1.2 kafka来自任意安装
在上文的基础增加一个二进制安装的,其他的都大同小异,主要是增加容器的 hosts
docker run -d \
--name kafka-ui \
--network root_kafka-network \
-p 8080:8080 \
-e KAFKA_CLUSTERS_0_NAME=local \
-e KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092 \
-e KAFKA_CLUSTERS_1_NAME=test \
-e KAFKA_CLUSTERS_1_BOOTSTRAP_SERVERS=hostname01:9092,hostname02:9092 \
-e SERVER_SERVLET_CONTEXT_PATH=/ \
-e AUTH_TYPE=LOGIN_FORM \
-e SPRING_SECURITY_USER_NAME=admin \
-e SPRING_SECURITY_USER_PASSWORD=admin \
-e JAVA_OPTS=-Dfile.encoding=UTF-8 \
--add-host hostname01:ip01 \
--add-host hostname02:ip02 \
provectuslabs/kafka-ui:latest
2. 验证 Kafka-UI
2.1 查看容器,确保运行
docker ps
3.登录
http://hadoop102:8080/auth
账号和密码 都是admin
下图所示成功
或
至此部署完毕