Kafka 消息队列管理工具 kafka-manager 介绍

2020-05-21 0 By admin

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

  1. 管理多个kafka集群
  2. 便捷的检查kafka集群状态(topics,brokers,备份分布情况,分区分布情况)
  3. 选择你要运行的副本
  4. 基于当前分区状况进行
  5. 可以选择topic配置并创建topic(0.8.1.1和0.8.2的配置不同)
  6. 删除topic(只支持0.8.2以上的版本并且要在broker配置中设置delete.topic.enable=true)
  7. Topic list会指明哪些topic被删除(在0.8.2以上版本适用)
  8. 为已存在的topic增加分区
  9. 为已存在的topic更新配置
  10. 在多个topic上批量重分区
  11. 在多个topic上批量重分区(可选partition broker位置)

一、Kafka-manager 安装过程

Kafka-manager 安装过程很简单。从官网下载到 软件包后,解压到本地;设置好 ZooKeeper 的链接信息就可以了。
Kafka-manager 默认监听 9000 端口,提供 WEB 访问管理。

二、Kafka-manager 容器化安装

容器化安装过程也很简单。在启动容器时,设置 ZooKeeper 链接信息的环境变量,Kafka-manager 就可以正常运行了。

三、Kafka-manager 数据持久化

Kafka-manager 服务运行产生的数据有两部分需要存储;
1、Kafka-manager 管理配置会存储在 ZooKeeper 服务中,所以这部分只需要考虑好 ZooKeeper 的持久化即可。
2、Kafka-manager 服务的运行日志,会存储在 logs 目录下;容器服务也会在终端输出一份。日志信息如果不是很重要的话,可以直接不考虑持久化。

容器启动命令:
docker run -d \
--name kafka-manager \
-e ZK_HOSTS=12.168.3.62:2182 \
--restart=always \
-p 9000:9000 \
hlebalbau/kafka-manager:2.0.0.2