一. KafkaOffsetMonitor
KafkaOffsetMonitor是Kafka的可视化管理与监控工具,可以为Kafka的稳定运维提供高效、可靠、稳定的保障。且程序以jar包的方式运行,部署较为方便。
- 官网下载jar包(https://github.com/quantifind/KafkaOffsetMonitor)
- 打开虚拟机并在/usr/local/cluster下创建kafka-offset-console文件夹
[root@cos100 cluster]# mkdir kafka-offset-console
- 进入kafka-offset-console目录,将下载的jar包上传到此目录下
- 创建启动脚本文件start.sh并授权,编辑文件添加以下内容
[root@cos100 kafka-offset-console]# touch start.sh
[root@cos100 kafka-offset-console]# chmod +x start.sh
#!/bin/bash
java -cp KafkaOffsetMonitor-assembly-0.4.6-SNAPSHOT.jar \
com.quantifind.kafka.offsetapp.OffsetGetterWeb \
--offsetStorage kafka \
--kafkaBrokers cos100:9092,cos101:9092,cos102:9092 \
--kafkaSecurityProtocol PLAINTEXT \
--zk cos100:2181,cos101:2181,cos102:2181 \
--port 8086 \
--refresh 10.seconds \
--retain 2.days \
--dbName offsetapp_kafka &
- 创建mobile-logs文件夹
[root@cos100 kafka-offset-console]# mobile-logs
- 使用群起脚本启动Zookeeper和Kafka服务
(Zookeeper和Kafka的群起脚本编写请参考我的另一篇博文https://blog.csdn.net/weixin_45568872/article/details/104453592)
[root@cos100 zookeeper]# bin/zk.start-all.sh
[root@cos100 kafka]# bin/kafka.start-all.sh
- 启动KafkaMonitor
[root@cos100 kafka-offset-console]# ./start.sh
- 浏览器页面输入cos100:8086即可查看到如下页面
由于此时还未开启消费者,系统默认显示的是Kafka内置的topic的状况
此时在虚拟机端打开一个消费者并指定topic
[root@cos100 kafka]# bin/kafka-console-consumer.sh --bootstrap-server cos100:9092 --from-beginning --topic test
刷新监控页面,即可显示我们新开启的消费者状况
点击想要查看的消费者,即可查看到详细信息
也可点击上图目录栏的Visualization下拉菜单点击Active Topics Consumers查看活跃的消费者
或点击Cluster Overview查看Kafka集群状况
也可以在将之前写好的API Producer代码运行(参考我的另一篇博文https://blog.csdn.net/weixin_45568872/article/details/104474885,注意修改topic和刚开启的topic一致),
向我们刚才打开的消费者生产发送数据,在Active Topics Consumers页面上点击我们新开启的消费者查看数据消费状况(如下图红色框位置),自己尝试吧,本人电脑运行较慢,便不作演示了
二. Kafka Manager
Kafka Manager是kafka的集群管理工具,最早由雅虎开源,使用scala语言编写,所以用户可以在Web界面执行一些简单的集群管理操作(管理集群,检查集群状态,重新分配分区,创建/删除Topic等)。
- 下载安装包
[root@cos100 soft]# wget https://github.com/yahoo/kafka-manager/archive/1.3.3.1.zip
- 将安装包解压到指定目录并改名(注意下载的安装包是zip格式,解压命令用unzip)
[root@cos100 soft]# unzip kafka-manager-1.3.3.15.zip -d /usr/local/cluster/
[root@cos100 cluster]# mv kafka-manager-1.3.3.15/ kafka-manager
- 进入kafka-manager的配置文件目录,修改配置文件application.conf
[root@cos100 conf]# vim application.conf
将默认的Zookeeper集群改为我们自己的
默认:kafka-manager.zkhosts=“kafka-manager-zookeeper:2181”
修改为:kafka-manager.zkhosts=“cos100:2181,cos101:2181,cos102:2181”
- 使用群起脚本启动Zookeeper服务
(Zookeeper的群起脚本编写请参考我的另一篇博文https://blog.csdn.net/weixin_45568872/article/details/104453592)
[root@cos100 zookeeper]# bin/zk.start-all.sh
- 开启Kafka服务
此时需要选择是否开启jmx服务(端口号自己指定)来使kafka-manager监控到一些私密的信息,这个端口号会在Kafka启动时写入到Zookeeper中,进入Zookeeper目录开启zkCli.sh服务,输入get /brokers/ids/0即可看到
[root@cos100 kafka]# JMX_PORT=8888 bin/kafka-server-start.sh -daemon config/server.properties
[root@cos101 kafka]# JMX_PORT=8888 bin/kafka-server-start.sh -daemon config/server.properties
[root@cos102 kafka]# JMX_PORT=8888 bin/kafka-server-start.sh -daemon config/server.properties
- 给启动文件kafka-manager授权并启动
[root@cos100 bin]# chmod +x kafka-manager
[root@cos100 bin]# ./kafka-manager
- 浏览器页面输入cos100:9000即可查看到如下页面
此时集群还未创建,页面无显示,点击Cluster选择Add Cluster即进入创建集群页面,填写如下消息:
1). Cluster Name -----(需要创建的集群名称)
2). Cluster Zookeeper Hosts -----指定我们的Zookeeper集群
例:cos100:2181,cos101:2181,cos102:2181
3). Kafka Version -----选择安装的kafka版本号
4). 配置jmx后,需勾选Enable JMX Polling 项
5). 多选框钩选Poll consumer information项用于监控consumer
以上配置完成下拉到底,点击save即可保存,显示如下:
点击Go to cluster view即可返回到我们创建好的集群页面
以上为部分功能页面,详细的可以点击研究,此文章不做详细介绍,后续会更新。
完毕!
来源:CSDN
作者:不将就的cris
链接:https://blog.csdn.net/weixin_45568872/article/details/104514943