1.kafka-manager介绍
为了简化开发者和服务工程师维护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
2.安装配置
1.环境要求
1.jdk 1.8
2.三台kafka集群
3.系统centos 7
2.下载kafka-manager
[下载地址] https://github.com/yahoo/kafka-manager/archive/1.3.1.6.zip
3.解压kafka-manager
#1.安装zip unzip压缩和解压缩工具
[root@node01 ~]# yum install -y zip unzip
#2.加压kafka-manager 到/opt目录下
[root@node01 ~]# unzip kafka-manager-1.3.1.6.zip -d /opt/
4.配置kafka-manager
进入到/opt/kafka-manager-1.3.1.6/conf目录下,编辑application.conf文件,将如下图中kafka-manager-zookeeper修改成zookeeper的服务列表,多台zookeeper之间使用英文输入模式下的逗号隔开.
修改成如下图配置:
node01:2181,node02:2181,node03:2181
3.启动kafka-manager
#kafka-manager 默认的端口是9000,可通过 -Dhttp.port,指定端口; -#Dconfig.file=conf/application.conf指定配置文件:
#nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=8080 &
[root@node01 kafka-manager-1.3.1.6]# nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=8080 &
[1] 60278
#启动后使用netstat命令查看端口是否启动,启动的过程需要一段时间,端口启动会有一定的延迟多尝试几次
[root@node01 kafka-manager-1.3.1.6]# netstat -ano|grep 8080
tcp6 0 0 :::8080 :::* LISTEN off (0.00/0/0)
You have new mail in /var/spool/mail/root
[root@node01 kafka-manager-1.3.1.6]#
4.访问kafka-manager
浏览器中输入主机ip和端口号进行登录web ui界面
5.kafka集群配置
1.依次点击Cluster->Add Cluster
如下图,填写Cluster Name,ClusterZookeeper Hosts,选择Kafka Version后,页面拉动到最底下点击Save。
如下图,显示添加集群成功.
6.查看Kafka集群
点击Kafka Manager回到主界面可以看到如下图 Active状态的集群.
如下图,点击cluster1就可以看到如右侧的界面,在界面的最顶端出现cluster,最下方看到集群的概况,有一个主题,3个broker.