工具简介:

kafka-manager的Github项目地址(项目功能等介绍):https://github.com/yahoo/kafka-manager

A tool for managing Apache Kafka.

It supports the following :

  • Manage multiple clusters
  • Easy inspection of cluster state (topics, consumers, offsets, brokers, replica distribution, partition distribution)
  • Run preferred replica election
  • Generate partition assignments with option to select brokers to use
  • Run reassignment of partition (based on generated assignments)
  • Create a topic with optional topic configs (0.8.1.1 has different configs than 0.8.2+)
  • Delete topic (only supported on 0.8.2+ and remember set delete.topic.enable=true in broker config)
  • Topic list now indicates topics marked for deletion (only supported on 0.8.2+)
  • Batch generate partition assignments for multiple topics with option to select brokers to use
  • Batch run reassignment of partition for multiple topics
  • Add partitions to existing topic
  • Update config for existing topic
  • Optionally enable JMX polling for broker level and topic level metrics.
  • Optionally filter out consumers that do not have ids/ owners/ & offsets/ directories in zookeeper.

 

安装环境:

1、java 8+

2、Kafka 0.8.. or 0.9.. or 0.10.. or 0.11..

3、zookeepr 2+

4、scala

5、sbt

 

java环境安装:

安装配置过程参见:https://blog.csdn.net/weixin_41846320/article/details/81671162

如果环境已存在,忽略此步

 

kafka安装:

先安装下kafka,安装步骤参见:https://blog.csdn.net/weixin_41846320/article/details/81348798

如果已安装过,则运行命令行启动下:

首先到\zookeeper-3.4.8的bin目录下运行:zkServer.cmd

再到kafka的目录\kafka_2.12-0.11.0.0下运行:.\bin\windows\kafka-server-start.bat .\config\server.properties

 

kafka-manager安装步骤:

1、下载kafka-manager的releases中的最新zip版本: https://github.com/yahoo/kafka-manager/releases

 

2、 下载安装kafka-manager要求scala的window版本对应的msi文件:https://www.scala-lang.org/download/

下载好后,具体安装配置参见: https://blog.csdn.net/weixin_41846320/article/details/84785191

3、下载安装kafka-manager要求sbt的window版本对应的msi文件:https://www.scala-sbt.org/download.html

下载好后,具体安装配置参见:https://blog.csdn.net/weixin_41846320/article/details/84784175 

4、编译为Windows版本

进入kafka-manager解压目录,在此打开命令窗口cmd,输入

sbt clean dist

会自动初始化工作目录,过程比较漫长,主要是下载依赖的jar包,耐心等待下,注意在配置sbt的时候使用aliyun的私服可以让这个过程缩短很多。

命令执行完成后,在 target/universal 目录中会产生一个zip的压缩包文件kafka-manager-1.3.3.18.zip,

 

将压缩包拷贝到要部署的目录下解压,注意路径不能太深,最好为一层:例如D:\program\kafka-manager-1.3.3.18,否则启动的时候可能会报错:“输入行太长。命令语法不正确。”。

在解压后的conf目录中打开 application.conf文件,修改其中的配置信息,最主要的内容为:

kafka-manager.zkhosts="localhost:2181"

 5、启动

在解压的目录中,使用下面的命令启动Kafka-manager。

> .\bin\kafka-manager

默认情况下端口为9000,你还可以通过下面的命令指定配置文件和端口:

> .\bin\kafka-manager -Dconfig.file=.\conf\application.conf -Dhttp.port=8080

打开浏览器,输入http://127.0.0.1:9000/  就可以看到管理界面

 

kafka-manager已经安装完毕,测试Kafka-manager:

1、配置集群

输入集群的名字(如test-cluster)和 Zookeeper 服务器地址(如127.0.0.1:2181)。

选择最接近的Kafka版本(如0.1.1.0)。

注意:如果没有在 Kafka 中配置过 JMX_PORT,千万不要选择第一个复选框。
Enable JMX Polling
如果选择了该复选框,Kafka-manager 可能会无法启动。

点击Go to cluster view. 

在集群界面显示了主题和Broker的个数,点击数字可以查看具体的信息。

同时在顶部多了好几个菜单,可以查看集群、Broker、主题等信息。

 2、新建主题

 点击【Topic】>【Create】可以方便的创建并配置主题。如下显示。

这里只在Topic中输入test-topic(名字自定义),分区和复制因子这里简单说明一下,详细的可以查看官方介绍。

这里写图片描述

在上图一个Kafka集群中,有两个服务器,每个服务器上都有2个分区。P0,P3可能属于同一个主题,也可能是两个不同的主题。

如果设置的Partitons和Replication Factor都是2,这种情况下该主题的分步就和上图中Kafka集群显示的相同,此时P0,P3是同一个主题的两个分区。P1,P2也是同一个主题的两个分区,Server1和Server2其中一个会作为Leader进行读写操作,另一个通过复制进行同步。

如果设置的Partitons和Replication Factor都是1,这时只会根据算法在某个Server上创建一个分区,可以是P0~4中的某一个(分区都是新建的,不是先存在4个然后从中取1个)。

这里我们都设置为1,点击【Create】然后进入创建的这个主题,显示如下。

 

点击Go to topic view.

这里显示了主题的基本信息,在右侧中间的Broker这里显示了当前的Broker Id为0,分区数为1,如果集群中存在多个服务,在创建该主题时,不一定会分配到哪个Broker。

这个页面的右上部分显示了针对主题的一些操作。这些操作相对命令的方式简单和直观了很多。

 

 

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐