一、下载安装
下载连接:https://www.kafkatool.com/download.html
kafka tool官网介绍
Kafka工具是用于管理和使用Apache Kafka集群的GUI应用程序。
它提供了一种直观的UI,可让用户快速查看Kafka集群中的对象以及集群主题中存储的消息。
它包含面向开发人员和管理员的功能。
主要功能如下:
1. 快速查看所有的Kafka集群,包括: brokers,topics,consumers
2. 查看分区中的内容并添加新消息
3. 查看消费者的偏移量
4. 以漂亮的格式展示Json和XML消息
5. 添加删除主题,以及其它管理功能
6. 将单个消息从集群分区保存到本地
7. 编写自己的插件,可以自定义数据格式
8. Kafka工具可以在包括Windows,Linux和Mac OS等系统上运行
根据自己的操作系统选择合适的安装包,Kafka 0.10及之前版本请选择 Kafka Tool 1.0.3,下载完之后一路next即可完成安装,双击exe文件启动kafka tool
二、使用
1、参数修改
安装目录下有个kafkatool.vmoptions文件,用于修改jvm参数,因为当kafka里面数据量比较大时,查询Kafka集群数据时需要更大的内存来避免频繁的垃圾回收或者内存溢出,同时,设置最大堆内存和最小堆内存相同,避免垃圾回收完成后JVM重新分配内存
注意:这里也不要修改的过大,不然机器内存不足,会导致工具无法正常使用!
2、连接kafka
2.1、非ssl方式连接
File–> Add New Connection 或者右键Clusters–> Add New Connection创建新的连接
首先配置Properties
接下来配置Advanced
add之后,选择刚刚添加的连接,点击界面右下方的connect按钮即可连接
2.2、需要ssl方式连接
如果是需要ssl 方式连接,除了上面非ssl 两个步骤还需配置security, 选择准备好的jks文件和密码
在JAAS config 中配置用户和密码
注意advanced sasl选择
3、使用Kafka Tool查看Broker信息
点开我们之前获取到的连接可以查看集群broker的ID,Host和Port信息
4、使用Kafka Tool查看和管理Topic
查看topic整体信息
任意选择一个topic
在Properties里,你能够获取到该topic的总偏移量,key和消息的类型
如下图所示:
通过Data查看topic的数据(会将二进制的消息转换成我们能看懂的格式),可以选择查询最早或者最新偏移量的数据,并指定每个分区显示的条数
在这里,我们还可以看到每条消息的详细信息,如下图:
我们可以看到,每条消息所在分区,对应偏移量,消息大小,消息的时间戳,以及消息的原始值(我这里是二进制的)
查看topic具体分区信息
我们以上文中列举的topic的分区5为例
Properties包括: 分区的id,分区的leader,起始偏移量,截止偏移量,分区大小等信息
Replicas包括每个副本集的broker信息,以及每个副本是否同步,如下图所示:
Data包含如下内容查看消息,添加消息等,具体细节如下图:
和Topic下的Data有所区别,不同的地方在下图中用红线标出
为分区增加消息
1. 点击Data下面的 + 按钮
2. 弹出框选择Add Multiple Message
3. 设置消息配置选项(每行内容,key.message分隔符,以及是否使用16进制)
4. Data文本框按格式输入要添加消息
5. 点击add按钮添加消息
添加和删除topic
点击界面左侧的Topics,在界面右侧的弹出框中包括刷新,打印,创建topic,删除topic
具体操作如下图:
添加topic
1. 点击Topics里的 + 按钮 2. 设置topic信息(名字,分区数,副本数) 3. 点击add按钮 4. topic创建成功
删除topic
1. 选中要删除的topic 2. 点击×按钮 3. 弹出来的提示框中选择是 4. topic删除
5、使用Kafka Tool查看和管理Consumer
界面左侧点击Consumers可以看到该集群的所有消费者组
在下面列出来的消费者组中,随便点击一个
右侧会出现包含Properties和Offsets选项的界面
Properties包含如下内容:
消费者组(组名)Id,消费者类型,偏移量存储位置
如下图:
Offsets包含如下信息:
它提供了刷新,打印,编辑功能
可以获取到消费者组消费的topic信息,分区偏移量信息,获取消费端的偏移量,积压的偏移量,以及偏移量最后提交时间
具体如下图所示
看一下它的编辑功能:
1. 选择要编辑的消费者组 2. 点击编辑按钮 3. 选择设置偏移量方式(从起始位置消费,从截止位置消费,或者从指定的偏移量开始消费) 4. 点击update完成设置
看一下更新之后的效果:
可以看到: 消费端的偏移量和topic的截止消费量基本一致(不等的原因是,topic一直有数据推送)
同时,消费端的数据积压也清空了
在实际生产中,我们可以通过这种方式跳过我们不需要消费的数据,以提高消费端性能,减少资源占用!