Kafka性能监控

1 查看机器负载top:

右上角 load average 的 3 个值 1.29 ,0.74, 1.34 代表过去1分钟、5分钟 、15分钟load average

假如 load值为5.2,  cpu核数为4  ,则存在进程抢不到CPU。  如下值1.29说明负载较小,均负载在1.29/4 = 0.32

如果load值越来越大,说明负载持续增加

Kafka性能监控

4 个 CPU 核,总 CPU 使用率是2.2,那么,平均每个 CPU 的使用率大致是 0.55%。

 

2 kafka /JVM GC。

kafka的GC日志:/run/cloudera-scm-agent/process/150-kafka-KAFKA_BROKER

日志文件名类似:kafkaServer-gc.log

GC说明,参看 https://blog.****.net/qq_38157516/article/details/80451599

        https://blog.****.net/xiaodu93/article/details/61926114

        http://www.knowsky.com/957110.html

2.1 FULL GC频率和时长

     长时间的停顿会令 Broker 端抛出各种超时异常。

2.2 活跃对象大小

    这个指标是你设定堆大小的重要依据,同时它还能帮助你细粒度地调优 JVM 各个代的堆大小。

      活跃对象大小,即经过FULL GC后,老年代还剩余的存活对象大小(可以取多次平均值)。

如果FULL GC后剩余对象500M存活,设置老年代堆大小设置成该数值的 1.5 倍或 2 -3倍,即大约 1.0GB比较安全。

 newRatio参数,设定了新生代和老年代比值,默认值为2(old/new). 一般设置为老年存活对象的1.2到2倍

永久代设置1.2-2倍。

 具体设置建议,参考:https://blog.****.net/zfgogo/article/details/81260172

如果频繁FULL GC,  可以开启 G1 的 -XX:+PrintAdaptiveSizePolicy 开关(默认的 GC 收集器设置为 G1),让 JVM 告诉你到底是谁引发了 Full GC。

 

2.3 应用线程总数。这个指标帮助你了解 Broker 进程对 CPU 的使用情