温馨提示×

怎样监控Debian上Kafka的运行状态

小樊
36
2025-02-19 10:35:30
栏目: 智能运维
Debian服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

要监控Debian上Kafka的运行状态,您可以使用多种监控工具和方法。以下是一些推荐的监控工具及其使用方法:

推荐的监控工具

  1. Kafdrop

    • 功能:支持查看Topic和消费者组详细信息,能够搜索特定关键词并创建、删除Topic。
    • 安装
      docker run -d --rm -p 9000:9000 \
        -e KAFKA_BROKERCONNECT=<host:port> \
        -e SERVER_SERVLET_CONTEXTPATH="/" \
        obsidiandynamics/kafdrop
      
    • 优点:界面友好,功能全面,适合需要实时监控和管理Kafka集群的用户。
  2. KafkaOffsetMonitor

    • 功能:支持查看消费者组信息和Topic组信息,能够查看一定时间内消费者消费状态。
    • 启动方式
      java -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar \
        com.quantifind.kafka.offsetapp.OffsetGetterWeb \
        --offsetStorage kafka \
        --zk zk-server1,zk-server2 \
        --port 8080 \
        --refresh 10.seconds \
        --retain 2.days
      
    • 优点:轻量级,配置简单。
  3. EFAK

    • 功能:支持查看Topic信息、消费者组信息、集群Metric信息,并根据SQL查询数据,支持告警。
    • 安装步骤:参考EFAK官方文档
    • 优点:功能强大,支持复杂查询和告警。

Kafka的主要监控指标

  • Broker指标

    • UnderReplicatedPartitions:同步异常的分区数。
    • ISRShrink/ISRExpand:ISR收缩和扩容的频率。
    • ActiveControllerCount:当前Broker节点是否是Controller节点。
    • offlinePartitionCount:不可用状态的Partition数量。
    • LeaderElectionRateAndTimeMs:Leader选举的频率和无Leader节点的时长。
    • UncleanLeaderElectionsPerSec:从ISR集合中选出新的Leader节点的频率。
    • TotalTimeMs:处理请求的总时间。
  • 生产者指标

    • request-latency-avg:平均请求时间。
    • waiting-threads:发送缓存区中阻塞的用户线程数。
    • bytes-in-per-sec:生产者的网络吞吐量。
    • bytes-out-per-sec:生产者的吞吐量。
  • 消费者指标

    • records-lag:消费者在当前分区上落后于生产者的数量。
    • bytes-per-sec:消费者的网络吞吐量。
    • messages-per-sec:消息的消费速度。
  • Zookeeper指标

    • zookeeper commit-per-sec:Zookeeper的高写负载情况。

通过这些工具和指标,您可以全面监控Debian上Kafka的运行状态,确保其高效稳定运行。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何监控Debian上的Kafka运行状态

0