一、背景介紹
Kafka是一個高吞吐量的分布式消息系統,同時具備高可靠性、高擴展性、基於Zookeeper保證Kafka集群狀態的分布式特性等優點,得到越來越廣泛的應用。在Kafka應用中,常常會遇到消費者消費數據不及時或消費者消費不均衡等問題。這時候就需要監控消費者組的lag情況來診斷問題。而KafkaLag這個工具正是解決監控Kafka消費者組的lag情況而生的。
二、安裝KafkaLag
1、通過下載源碼安裝最新的release包
git clone https://github.com/quantifind/KafkaOffsetMonitor.git
cd KafkaOffsetMonitor
sbt assembly
2、通過docker安裝
docker pull quantifind/kafka-offset-monitor
三、運行KafkaLag
1、使用source包
java -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar \
com.quantifind.kafka.offsetapp.OffsetGetterWeb \
--zk zkhost1 \
--port 8080 \
--refresh 10.minutes \
--retain 2.days
2、使用docker
docker run -d \
-e ZOOKEEPER_CONNECT='zk://host:port/kafka' \
-e KAFKA_OFFSET_MONITOR_GROUPID='offset-monitor' \
-e KAFKA_OFFSET_MONITOR_TOPIC='__consumer_offsets' \
-e KAFKA_OFFSET_MONITOR_CONSUMER='kafka-offset-monitor' \
-p 8080:8080 \
quantifind/kafka-offset-monitor:latest
四、使用KafkaLag
打開瀏覽器,輸入http://hostname:8080,即可看到如下頁面
左側可以看到所有的支持的集群信息,點擊某個集群,會進入到該集群的Offset Details界面,右側是該集群的消費者組信息
點擊消費者組,可以進入到該消費者組的Consumer Details頁面,包括每個消費者的lag及offset信息
五、總結
KafkaLag是一個非常好用的Kafka消費端lag監控利器,提供了可視化的監控界面,方便開發人員及時發現和定位消費者消費吞吐量不足及消費者消費不均衡等問題。通過本篇文章對KafkaLag的介紹,希望能夠幫助大家更好地使用這個工具。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/198748.html