Kafka集群管理工具Kafka-Manager安装及使用

小辉博客
小辉博客
小辉博客
365
文章
3
评论
2020-08-0416:31:22 评论 4.8K 3126字阅读10分25秒

一、kafka-manager 简介

为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个基于Web的Kafka集群管理工具,叫做 Kafka Manager。这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况。它支持管理多个集群、选择副本、副本重新分配以及创建Topic。同时,这个管理工具也是一个非常好的可以快速浏览这个集群的工具,有如下功能:

1)管理多个集群

2)轻松检查群集状态(主题,消费者,偏移,代理,副本分发,分区分发)

3)运行首选副本选举

4)使用选项生成分区分配以选择要使用的代理

5)运行分区重新分配(基于生成的分配)

6)使用可选主题配置创建主题(0.8.1.1具有与0.8.2+不同的配置)

7)删除主题(仅支持0.8.2,并且在代理配置中设置delete.topic.enable = true)

8)主题列表现在指示标记为删除的主题(仅支持0.8.2+)

9)批量生成多个主题的分区分配,并可选择要使用的代理

10)批量运行重新分配多个主题的分区

11)将分区添加到现有主题

12)更新现有主题的配置

13)可随意开启对broker级别或者对topic级别的JMX轮询

14)可方便的过滤出没有id 、所有者、延迟或目录等的消费者

注:kafka-manager项目地址:https://github.com/yahoo/CMAK/releases,可对应下载相应的版本

二、安装kafka-manager

1、环境要求

  • Kafka 0.8.1.1 or 0.8.2.* or 0.9.0.*
  • Java 8+
  • zookeeper 2+

本次实验所用的环境是kafka_2.12-2.5.0、jdk-1.8.0_181、zookeeper-3.4.10

2、下载安装 kafka-manager

1)下载软件包

[root@localhost ~]# wget https://github.com/yahoo/CMAK/archive/2.0.0.2.tar.gz

2)sbt编译

# yum安装sbt

[root@localhost ~]# curl https://bintray.com/sbt/rpm/rpm > bintray-sbt-rpm.repo

[root@localhost ~]# mv bintray-sbt-rpm.repo /etc/yum.repos.d

[root@localhost ~]# yum -y install sbt

[root@localhost ~]# sbt -version

[info] 1.2.8

sbt script version: 1.3.13

# 修改仓库地址

[root@localhost ~]# mkdir ~/.sbt && vim ~/.sbt/repositories

# 配置内容如下

[repositories] 
local
aliyun: http://maven.aliyun.com/nexus/content/groups/public/
typesafe: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext], bootOnly
sonatype-oss-releases
maven-central
sonatype-oss-snapshots

# 因为要编译。所以下面这步操作要等很久(预计1个多小时,可能更久)

[root@localhost ~]# tar xf CMAK-2.0.0.2.tar.gz

[root@localhost ~]# cd CMAK-2.0.0.2

[root@localhost CMAK-2.0.0.2]# ./sbt clean dist

# 如果有下列提示,就代表编译成功了

[success] All package validations passed

[info] Your package is ready in /root/CMAK-2.0.0.2/target/universal/kafka-manager-2.0.0.2.zip

[success] Total time: 867 s, completed Aug 4, 2020 3:18:51 PM

# 如果编译太慢,请访问此链接下载:

此处为隐藏的内容!
发表评论并刷新,方可查看

3)解压

[root@localhost CMAK-2.0.0.2]# unzip target/universal/kafka-manager-2.0.0.2.zip -d /usr/local

[root@localhost CMAK-2.0.0.2]# mv /usr/local/kafka-manager-2.0.0.2/ /usr/local/kafka-manager

4)修改配置文件

[root@localhost CMAK-2.0.0.2]# cd /usr/local/kafka-manager/conf

[root@localhost conf]# vim application.conf

# 修改kafka-manager.zkhosts="kafka-manager-zookeeper:2181"为自己集群地址

kafka-manager.zkhosts="172.168.1.193:2181,172.168.1.194:2181,172.168.1.195:2181"

5)启动kafka-manager

[root@localhost conf]# cd ../bin

# 前台启动,退出终端,服务会关闭(先确认启动没问题,再后台启动)

[root@localhost bin]# ./kafka-manager

# 后台启动,一直运行

[root@localhost bin]# nohup ./kafka-manager >/dev/null 2>&1 &

kafka-manager 默认的端口是9000,可通过-Dhttp.port,指定端口; -Dconfig.file=/usr/local/kafka-manager/conf/application.conf指定配置文件:

[root@localhost bin]# nohup ./kafka-manager -Dconfig.file=/usr/local/kafka-manager/conf/application.conf -Dhttp.port=8000 &

6)访问kafka-manager

# 浏览器访问服务器IP+9000端口,如图所示

Kafka集群管理工具Kafka-Manager安装及使用

至此,kafka-manager安装完毕。

三、kafka-manager使用

1、新建Cluster集群

Kafka集群管理工具Kafka-Manager安装及使用

Kafka集群管理工具Kafka-Manager安装及使用

# 点击保存即可

Enable JMX Polling

是否开启JMX轮训,该部分直接影响部分kafka broker和topic监控指标指标的获取(生效的前提是 kafka 启动时开启了JMX_PORT。

Enable Active OffsetCache

是否开启offset缓存,决定kafka-manager是否缓存住topic的相关偏移量。

2、新建完成后,保存运行界面如下:

Kafka集群管理工具Kafka-Manager安装及使用

3、查看topic

Topic -->> List

Kafka集群管理工具Kafka-Manager安装及使用

4、查看Brokers

Kafka集群管理工具Kafka-Manager安装及使用

四、kafka-manager管理

1、新建主题(Topic)

Topic -->> Create

Kafka集群管理工具Kafka-Manager安装及使用

2、查看主题

Topic -->> List -->> Test

Kafka集群管理工具Kafka-Manager安装及使用

继续阅读
若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如果喜欢本站,请打赏支持本站,谢谢!
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
小辉博客
  • 本文由 发表于 2020-08-0416:31:22
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
Zookeeper+kafka安装部署 Zookeeper

Zookeeper+kafka安装部署

一、kafka简介 Kafka 被称为下一代分布式-订阅消息系统,是非营利性组织ASF(Apache Software Foundation,简称为ASF)基金会中的一个开源项目,比如HTTP ...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: