为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager。
这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况。
它支持管理多个集群、选择副本、副本重新分配以及创建Topic。同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具,有如下功能:
1.管理多个kafka集群
2.便捷的检查kafka集群状态(topics,brokers,备份分布情况,分区分布情况)
3.选择你要运行的副本
4.基于当前分区状况进行
5.可以选择topic配置并创建topic(0.8.1.1和0.8.2的配置不同)
6.删除topic(只支持0.8.2以上的版本并且要在broker配置中设置delete.topic.enable=true)
7.Topic list会指明哪些topic被删除(在0.8.2以上版本适用)
8.为已存在的topic增加分区
9.为已存在的topic更新配置
10.在多个topic上批量重分区
11.在多个topic上批量重分区(可选partition broker位置)
kafka-manager 项目地址:https://github.com/yahoo/kafka-manager
?
PS:安装包kafka集群篇有
unzip kafka-manager-1.3.3.7.zip
vi conf/application.conf
# kafka-manager.zkhosts="localhost:2181"
kafka-manager.zkhosts="192.168.9.184:2181,192.168.9.185:2181,192.168.9.186:2181"
kafka-manager 默认的端口是9000。
可通过 -Dhttp.port,指定端口; -Dconfig.file=conf/application.conf指定配置文件:
#前台启动
bin/kafka-manager -Dhttp.port=8081
后台启动
nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=8081 >/dev/null 2>&1 &
启动后访问浏览器?域名+9000端口
点击【Cluster】>【Add Cluster】打开集群的配置界面:
输入集群的名字和 Zookeeper 服务器地址(如localhost:2181),选择最接近的Kafka版本(如0.10.1.0)
注意:如果没有在 Kafka 中配置过 JMX_PORT,千万不要选择第一个复选框。如果选择了该复选框,Kafka-manager 可能会无法启动。
??????????????
?修改下配置文件application.conf
akka {
? loggers = ["akka.event.slf4j.Slf4jLogger"]
? loglevel = "INFO"
? logger-startup-timeout = 30s
}
?