Centos7编译安装kafka-manager教程

导读 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作。
具体支持以下内容

管理多个集群

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

运行首选副本选举

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

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

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

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

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

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

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

将分区添加到现有主题

更新现有主题的配置

支持ldap用户认证

kafka-manager 项目地址:https://github.com/yahoo/kafka-manager

安装

当前版本已更新至3.0.0.1,本次安装最新版本。

下载源码包:https://github.com/yahoo/kafka-manager/releases (不同版本)

克隆源代码:git clone https://github.com/yahoo/CMAK.git (最新版本)

编译

根据README提示,新版本编译依赖java-11,所以首先要准备java-11环境(直接到官网下载解压即可)。

使用sbt编译

进入源码目录进行编译。

/path/to/cmak/sbt -java-home /path/to/java-11 clean dist

-java-home:在系统环境java版本和当前需要java版本不一致时,使用该参数指定java家目录。

这是一个漫长的过程,耐心等待…

编译完成后会提示,编译好的文件保存到了:/path/to/cmak/target/universal/cmak-3.0.0.1.zip

配置

将上述cmak-3.0.0.1.zip文件拷贝到/path/to/kafka-manager 目录下,解压。修改配置文件 conf/application.conf:

kafka-manager.zkhosts="my.zookeeper.host.com:2181,other.zookeeper.host.com:2181"

cmak.zkhosts="my.zookeeper.host.com:2181,other.zookeeper.host.com:2181"

kafka-manager支持ldap认证,这里不做详述。

启动

默认使用9000端口,如果端口占用,可以指定端口。

bin/cmak -Dconfig.file=conf/application.conf -java-home /path/to/jdk-11 -Dhttp.port=9001

到浏览器访问 http://ip:9001 即可。

创建kafka集群

使用systemctl管理kafka-manager服务

创建文件 /usr/lib/systemd/system/kafka-manager.service :

[Unit]
Description=kafka-manager server service
After=network.target

[Service]
WorkingDirectory=/path/to/kafka-manager/cmak-3.0.0.1
ExecStart=/path/to/kafka-manager/cmak-3.0.0.1/bin/cmak -Dconfig.file=/path/to/kafka-manager/cmak-3.0.0.1/conf/application.conf -java-home /path/to/jdk-11.0.6 -Dhttp.port=9001
Restart=on-failure
RestartSec=60
User=work
Group=work

[Install]
WantedBy=multi-user.target

完成上述配置后,执行 systemctl daemon-reload 。

启动、停止、重启
$ systemctl start kafka-manager
$ systemctl stop kafka-manager
$ systemctl restart kafka-manager

# 加入开机启动

$ systemctl enable kafka-manager

配置日志切割

/path/to/kafka-manager/cmak-3.0.0.1/logs/application.log {
    daily
    rotate 10
    dateext
    missingok
    notifempty
}

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/122882.html

(0)
上一篇 2021年8月28日
下一篇 2021年8月28日

相关推荐

发表回复

登录后才能评论