Kafka运维小贴士 | Kafka 消息监控

点击上方蓝色字体,选择“设为星标

回复”资源“获取更多资源

大数据技术与架构

点击右侧关注,大数据开发领域最强公众号!

暴走大数据

点击右侧关注,暴走大数据!

笔者经常遇到一些无法优化的慢查询,面对这样的慢查询,笔者会将其进行预先计算存储到mongodb或者elasticsearch中。这个业务场景需要将mysql的binlog数据发送到kafka,然后订阅kafka并消费其中的binlog数据以实现实时加速查询。但是消费binlog就可能会有很多意外发生,比如mysql数据库发生死锁,或者消费发生并发问题,网络长时间阻塞,这些状况都会导致kafka消费发生阻塞,一旦发生阻塞,用户从mongodb或者elasticsearch中就会查询不到最新的mysql数据,所以笔者需要监控kafka中消息的消费情况,监控的方案有很多,笔者进行了整理,以便日后回顾。

kafka-consumer-groups

kafka-consumer-groups.sh是kafka自带的工具,它位于kafka安装目录的bin目录下,它不需要额外下载安装,使用起来非常方便

通过如下命令,我们可以查看kafka的所有消费组

./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --list

它的输出如下所示,可以看到其中有一个Test-Group的消费组

我们可以通过如下方式查看某个消费组的消费情况

./kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group Test-Group

输出结果如下

上述涉及的几个字段意义如下

TOPIC:主题名字

PARTITION:分区id

CURRENT-OFFSET:已经提交的消费位移

LOG-END-OFFSET:总数据量

LAG:未消费的数据量

CONSUMER-ID:代表消费者id,为空代表当前没有消费者

HOST:消费者主机ip,为空代表当前没有消费者

CLIENT-ID:客户端id,为空代表当前没有消费者

kafka-manager

kafka-manager要比kafka-consumer-groups工具强大的多,它不仅可以用于查看消费者消费情况,同时可以管理Topic,包括创建topic,管理partition。

从下面地址下载kafka-manager的安装包

http://github.com/yahoo/kafka-manager/releases

解压并进入kafka安装目录,使用sbt进行编译,sbt需要配置源,否则编译速度非常慢

sbt clean dist

将编译好的zip格式文件复制出来,解压缩,修改conf目录下的application.conf文件,修改zookeeper地址参数kafka-manager.zkhosts,在bin目录下执行./kafka-manager命令,kafka默认端口是9000,进入管理页面之后配置kafka节点相关信息,就能监控kafka运行情况

如下是kafka-manager的管理界面

查看所有的消费组

Broker管理的partition列表

某个消费组消费某个topic的消费状况

版权声明:

本文为大数据技术与架构整理,原作者独家授权。未经原作者允许转载追究侵权责任。

编辑|冷眼丶

微信公众号|import_bigdata

欢迎点赞+收藏+转发朋友圈素质三连

文章不错?点个【在看】吧! ????

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值