参考site:https://github.com/yahoo/kafka-manager
一、功能
- 管理多个kafka集群
- 便捷的检查kafka集群状态(topics,brokers,备份分布情况,分区分布情况)
- 选择你要运行的副本
- 基于当前分区状况进行
- 可以选择topic配置并创建topic(0.8.1.1和0.8.2的配置不同)
- 删除topic(只支持0.8.2以上的版本并且要在broker配置中设置delete.topic.enable=true)
- Topic list会指明哪些topic被删除(在0.8.2以上版本适用)
- 为已存在的topic增加分区
- 为已存在的topic更新配置
- 在多个topic上批量重分区
- 在多个topic上批量重分区(可选partition broker位置)
二、环境要求
- Kafka 0.8.1.1 or 0.8.2.*
- sbt 0.13.x
- Java 8+
三、安装部署
1. 安装sbt
> curl https://bintray.com/sbt/rpm/rpm > bintray-sbt-rpm.repo
> mv bintray-sbt-rpm.repo /etc/yum.repos.d/
> yum install sbt
2. 下载编译
> git clone https://github.com/yahoo/kafka-manager.git
> cd kafka-manager
> sbt clean dist
注: 执行sbt编译打包可能花费很长时间,如果你hang在如下情况
将project/plugins.sbt 中的logLevel参数修改为logLevel := Level.Debug(默认为Warn)
3. 安装配置
编译成功后,会在target/universal下生成一个zip包
个人编译好的: http://pan.baidu.com/s/1o6RZzei
解压并修改配置文件
> unzip kafka-manager-1.3.0.4.zip
> vim kafka-manager-1.3.0.4/conf/application.conf
将application.conf中的kafka-manager.zkhosts的值设置为你的zk地址
如: kafka-manager.zkhosts="h2:2181"
kafka-manager.zkhosts=${?ZK_HOSTS}
pinned-dispatcher.type="PinnedDispatcher"
pinned-dispatcher.executor="thread-pool-executor"
4. 启动,指定配置文件位置和启动端口号,默认为9000
> nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port 9001 &
第一次进入web UI要进行kafka cluster的相关配置,根据自己的信息进行配置。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?