Kafka监控之KafkaOffsetMonitor和Kafka Manager

女生的网名这么多〃 提交于 2020-02-26 23:18:30

一. KafkaOffsetMonitor

KafkaOffsetMonitor是Kafka的可视化管理与监控工具,可以为Kafka的稳定运维提供高效、可靠、稳定的保障。且程序以jar包的方式运行,部署较为方便。

  1. 官网下载jar包(https://github.com/quantifind/KafkaOffsetMonitor)
  2. 打开虚拟机并在/usr/local/cluster下创建kafka-offset-console文件夹
[root@cos100 cluster]# mkdir kafka-offset-console
  1. 进入kafka-offset-console目录,将下载的jar包上传到此目录下
  2. 创建启动脚本文件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 &
  1. 创建mobile-logs文件夹
[root@cos100 kafka-offset-console]# mobile-logs 
  1. 使用群起脚本启动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
  1. 启动KafkaMonitor
[root@cos100 kafka-offset-console]# ./start.sh
  1. 浏览器页面输入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等)。

  1. 下载安装包
[root@cos100 soft]# wget https://github.com/yahoo/kafka-manager/archive/1.3.3.1.zip
  1. 将安装包解压到指定目录并改名(注意下载的安装包是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
  1. 进入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”

  1. 使用群起脚本启动Zookeeper服务

(Zookeeper的群起脚本编写请参考我的另一篇博文https://blog.csdn.net/weixin_45568872/article/details/104453592)

[root@cos100 zookeeper]# bin/zk.start-all.sh
  1. 开启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
  1. 给启动文件kafka-manager授权并启动
[root@cos100 bin]# chmod +x kafka-manager
[root@cos100 bin]# ./kafka-manager
  1. 浏览器页面输入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即可返回到我们创建好的集群页面
在这里插入图片描述
在这里插入图片描述
Topic页面
以上为部分功能页面,详细的可以点击研究,此文章不做详细介绍,后续会更新。

完毕!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!