# Kafka-Manager怎么用 ## 一、Kafka-Manager简介 Kafka-Manager是Yahoo开源的Kafka集群管理工具,提供Web UI界面,支持以下核心功能: - 多集群管理 - Broker状态监控 - Topic创建/删除/配置修改 - 分区管理(扩缩容、副本分配) - 消费者组监控 - 副本重分配 - 权限管理(配合SASL) > 项目地址:https://github.com/yahoo/kafka-manager ## 二、环境准备 ### 1. 依赖环境 - JDK 1.8+ - ZooKeeper集群(与Kafka共用) - Kafka 0.8.2+(建议1.0+版本) ### 2. 安装方式 推荐两种安装方式: #### 方式一:源码编译 ```bash git clone https://github.com/yahoo/kafka-manager.git cd kafka-manager ./sbt clean dist # 生成的zip包在target/universal目录下
wget https://github.com/yahoo/kafka-manager/releases/download/2.0.0.2/kafka-manager-2.0.0.2.zip unzip kafka-manager-2.0.0.2.zip
修改conf/application.conf
关键配置:
kafka-manager.zkhosts="zk1:2181,zk2:2181,zk3:2181" kafka-manager.zkhosts=${?ZK_HOSTS} application.secret="your_secret_key"
bin/kafka-manager -Dconfig.file=conf/application.conf \ -Dhttp.port=9000 \ -java-home /usr/java/jdk1.8.0_291
建议使用systemd管理:
# /etc/systemd/system/kafka-manager.service [Unit] Description=Kafka Manager After=network.target [Service] User=kafka ExecStart=/path/to/bin/kafka-manager -Dconfig.file=/path/to/conf/application.conf Restart=always [Install] WantedBy=multi-user.target
http://<host>:9000
{ "retention.ms": "172800000", "cleanup.policy": "delete" }
当需要平衡集群负载时: 1. 进入”Topics” > 选择Topic > “Generate Partition Assignments” 2. 选择目标Broker 3. 点击”Run Assignments”
解决Leader不均衡问题: 1. 进入”Brokers”视图 2. 点击”Run Preferred Replica Election”
需在Broker端开启JMX:
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999"
host:port,host:port/path
kafka-manager.jmx.user
和kafka-manager.jmx.password
配置调整超时参数:
kafka-manager.broker-view-thread-pool-size=16 kafka-manager.broker-view-update-seconds=30
修改application.conf
:
basicAuthentication.enabled=true basicAuthentication.username="admin" basicAuthentication.password="password"
配置JAAS文件:
-Djava.security.auth.login.config=/path/to/jaas.conf
随着Kafka生态发展,也可考虑: - CMAK (原Kafka-Manager分支) - Kafka Web Console - Confluent Control Center(商业版)
注意:Kafka-Manager已停止维护,生产环境建议评估其他方案
最佳实践建议: 1. 为每个环境(dev/test/prod)部署独立实例 2. 定期备份conf/application.conf
配置文件 3. 监控服务本身的资源使用情况(内存/线程数) “`
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。