赞
踩
现在我们操作Kafka都是在命令行界面中通过脚本操作的,后面需要传很多参数,用起来还是比较麻烦的,那kafka没有提供web界面的支持吗?
很遗憾的告诉你,Apache官方并没有提供,不过好消息是有一个由雅虎开源的一个工具,目前用起来还是不错的。
它之前的名字叫KafkaManager,后来改名字了,叫CMAK
CMAK是目前最受欢迎的Kafka集群管理工具,最早由雅虎开源,用户可以在Web界面上操作Kafka集群。
可以轻松检查集群状态(Topic、Consumer、Offset、Brokers、Replica、Partition)
百度网盘地址:
链接:https://pan.baidu.com/s/1CTZnuesGJiYTrY0PhYCzyQ?pwd=z94l
提取码:z94l
那下面我们先去下载这个CMAK
需要到github上面去下载
在github里面搜索 CMAK即可。
注意:由于cmak-3.0.0.4.zip版本是在java11这个版本下编译的,所以在运行的时候也需要使用java11这个版本,我们目前服务器上使用的是java8这个版本。
我们为什么不使用java11版本呢?因为自2019年1月1日1起,java8之后的更新版本在商业用途的时候就需要收费授权了。
在这针对cmak-3.0.0.4这个版本,如果我们想要使用的话有两种解决办法
1:下载cmak的源码,使用jdk8编译
2:额外安装一个jdk11
如果想要编译的话需要安装sbt这个工具对源码进行编译, sbt 是 Scala 的构建工具, 类似于 Maven。
由于我们在这使用不属于商业用途,所以使用jdk11是没有问题的,那就不用重新编译了。
百度网盘地址:
链接:https://pan.baidu.com/s/18PFR9YKjR5Iyt29Ce1XqqA?pwd=37p1
提取码:37p1
下载jdk11,jdk-11.0.7_linux-x64_bin.tar.gz
将jdk11的安装包上传到bigdata01的/data/soft目录下
只需要解压即可,不需要配置环境变量,因为只有cmak这个工具才需要使用jdk11
[root@bigdata01 soft]# tar -zxvf jdk-11.0.7_linux-x64_bin.tar.gz
接下来把cmak-3.0.0.4.zip上传到bigdata01的/data/soft目录下。
[root@bigdata01 soft]# unzip cmak-3.0.0.4.zip
-bash: unzip: command not found
注意:如果提示-bash: unzip: command not found,则说明目前不支持unzip命令,可以使用yum在线安装。
建议先清空一下yum缓存,否则使用yum可能无法安装unzip
[root@bigdata01 soft]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: base extras updates
Cleaning up list of fastest mirrors
安装unzip
root@bigdata01 soft]# yum install -y unzip
Loaded plugins: fastestmirror
.....
Running transaction
Installing : unzip-6.0-21.el7.x86_64 1/1
Verifying : unzip-6.0-21.el7.x86_64 1/1
Installed:
unzip.x86_64 0:6.0-21.el7
Complete!
再重新解压
[root@bigdata01 soft]# unzip cmak-3.0.0.4.zip
首先修改bin目录下的cmak脚本
在里面配置JAVA_HOME指向jdk11的安装目录,否则默认会使用jdk8
[root@bigdata01 soft]# cd cmak-3.0.0.4
[root@bigdata01 cmak-3.0.0.4]# cd bin/
[root@bigdata01 bin]# vi cmak
....
JAVA_HOME=/data/soft/jdk-11.0.7
.....
然后修改conf目录下的application.conf文件
只需要在里面增加一行cmak.zkhosts参数的配置即可,指定zookeeper的地址
注意:在这里指定zookeeper地址主要是为了让CMAK在里面保存数据,这个zookeeper地址不一定是kafka集群使用的那个zookeeper集群,随便哪个zookeeper集群都可以。
[root@bigdata01 cmak-3.0.0.4]# cd conf/
[root@bigdata01 conf]# vi application.conf
....
cmak.zkhosts="bigdata01:2181,bigdata02:2181,bigdata03:2181"
....
想要在CMAK中查看kafka的一些指标信息,在启动kafka的时候需要指定JMX_PORT
停止kafka集群
[root@bigdata01 kafka_2.12-2.4.1]# bin/kafka-server-stop.sh
[root@bigdata02 kafka_2.12-2.4.1]# bin/kafka-server-stop.sh
[root@bigdata03 kafka_2.12-2.4.1]# bin/kafka-server-stop.sh
重新启动kafka集群,指定JXM_PORT
[root@bigdata01 kafka_2.12-2.4.1]# JMX_PORT=9988 bin/kafka-server-start.sh -daemon config/server.properties
[root@bigdata02 kafka_2.12-2.4.1]# JMX_PORT=9988 bin/kafka-server-start.sh -daemon config/server.properties
[root@bigdata03 kafka_2.12-2.4.1]# JMX_PORT=9988 bin/kafka-server-start.sh -daemon config/server.properties
[root@bigdata01 cmak-3.0.0.4]# bin/cmak -Dconfig.file=conf/application.conf -Dhttp.port=9001
如果想把cmak放在后台执行的话需要添加上nohup和&
[root@bigdata01 cmak-3.0.0.4]# nohup bin/cmak -Dconfig.file=conf/application.conf -Dhttp.port=9001 &
http://bigdata01:9001/
添加集群
这几个参数配置好了以后还需要配置以下几个线程池相关的参数,这几个参数默认值是1,在保存的时候会提示需要大于1,所以可以都改为10。
brokerViewThreadPoolSize:10
offsetCacheThreadPoolSize:10
kafkaAdminClientThreadPoolSize:10
最后点击Save按钮保存即可。
最后进来是这样的。
这是CMAK中常见的功能,当然了这里面还要一些我们没有说到的功能就留给大家以后来发掘了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。