夯实 kafka 系列|第三章:kafka 常用监控工具

文章目录

    • 1.前言
    • [2.kafka 命令行工具](#2.kafka 命令行工具)
    • [3.kafka tools](#3.kafka tools)
    • 4.kafka-ui(推荐)
    • 5.实用功能
      • [5.1 消息查找](#5.1 消息查找)
        • [5.1.1 kafka-ui](#5.1.1 kafka-ui)
        • [5.1.2 kafka tools](#5.1.2 kafka tools)
      • [5.2 手动添加](#5.2 手动添加)

1.前言

本章主要是介绍一些工作中常用 kafka 的监控工具;原理上都是一样的,只是展现方式不同。

2.kafka 命令行工具

在 kafka 的 bin 目录下面提供了很多命令行工具

比如

  • kafka-consumer-groups
    • 消费者组监控
    • 重设消费者组 offset 位移
  • kafka-dump-log 查看 kafka 消息文件内容

我们这里只讨论 kafka-consumer-groups

今天我们讨论下消费者监控,命令如下:

bash 复制代码
$ bin/kafka-consumer-groups.sh --bootstrap-server <Kafka broker连接信息> --describe --group <group名称>
  • topic:主题名称
  • parttion:分区,0,1,2,3,4...等等
  • lag:滞后量,即未消费的消息数
  • current-offset:当前消费者组已提交的位移,代表消费进度
  • log-end-offset:分区的最新消息位移,即下一条要写入的位置
  • consumer-id:消费者实例的唯一标识,用于区分组内的不同消费者
  • host:运行消费者的主机信息,包括IP地址
  • client-id:客户端的自定义标识,用于监控和调试

在上面这些数据中,我们最需要关心的只有两个

  • LAG 值
    • 滞后量,即未消费的消息数,或者说是消费者积压的数量
      • 0 表示消费完成,一般来说这个数字是变化的
      • 数字越大表示积压的越严重
  • HOST 主机IP地址
    • 可以观察是否有非集群的业务机器在消费 kafka 里面的消息
      • 在实际集群环境中经常会碰到一些莫名其妙的问题
      • 比如生产者推送了100条 message ,但是消费者只监听到50条
      • 有可能是其他服务器未关闭的消费者,配置过这个服务器的 kafka

3.kafka tools

官网下载地址

配置好之后,点击 connect ,效果如下:

  • 注意配置的是 zookeeper 的地址,很多新手会配置成 kafka 的地址和端口,这是不对的

左侧分别为

  • brokers
    • kafka 实例
  • topics
    • 主题
  • consumers
    • 消费者

点击 topic 可以展开,看到分区数量

点击 topic ,切换到 Data ,右侧可以看到 message 中的数据,注意 Properties 中,key 和 value 选择类型为 String

数据如下:

展开 Consumers ,选中查看消费者组消费情况

这里展示的内容和上面的 kafka 命令行一样,但是缺少 host ip 信息。

4.kafka-ui(推荐)

官网地址

部署完成之后效果如下

左侧的 biz 表示 kafka 的一个业务组

展开之后其实和 kafka tools 的类似,也是分为 brokers、topics、consumers三个分类

具体的功能就不展示了,kafka-ui 是里面最强大的,基本上支持所有功能。

5.实用功能

5.1 消息查找

通过 message 中的关键字来进行消息的检索

5.1.1 kafka-ui
5.1.2 kafka tools

5.2 手动添加

kafka-ui 中可以手动添加 topic

可以手动发送消息,方便我们来测试代码流程

相关推荐
lqlj223315 分钟前
RDD案例数据清洗
大数据·分布式·spark
£菜鸟也有梦24 分钟前
Kafka进阶指南:从原理到实战
大数据·kafka
心仪悦悦2 小时前
RDD的自定义分区器
大数据·分布式·spark
.生产的驴5 小时前
Vue3 加快页面加载速度 使用CDN外部库的加载 提升页面打开速度 服务器分发
运维·服务器·前端·vue.js·分布式·前端框架·vue
@小了白了兔12 小时前
RabbitMQ工作流程及使用方法
分布式·rabbitmq
dddaidai12312 小时前
分布式ID和分布式锁
redis·分布式·mysql·zookeeper·etcd
weixin_4082663413 小时前
深度学习-分布式训练机制
人工智能·分布式·深度学习
火龙谷14 小时前
【hadoop】Kafka 安装部署
大数据·hadoop·kafka
日月星宿~14 小时前
【kafka】基本命令
kafka
MZWeiei16 小时前
Spark SQL 运行架构详解(专业解释+番茄炒蛋例子解读)
大数据·分布式·sql·架构·spark