关于Kafka的部署过程本文不做具体介绍,假设kafka当前已经部署完成,怎么样才能把监控指标暴露出来呢?
答案就是jmx_prometheus_javaagent。
下面介绍一下具体的操作步骤:
1.下载jmx_prometheus_javaagent和kafka-2_0_0.yml
2.修改Kafka的启动参数KAFKA_HEAP_OPTS和KAFKA_OPTS
首先,打开Kafka启动文件 /bin/kafka-server-start.sh
vi /bin/kafka-server-start.sh
找到export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G",将这行代码替换成以下内容
export KAFKA_HEAP_OPTS="-Xmx10g -Xms10g -XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80"
export JMX_PORT="10099"
export JMX_RMI_PORT="10098"
然后在最后一行上方添加以下内容
export KAFKA_OPTS="-javaagent:/kafka_2.12-3.5.1/jmx_exporter/jmx_prometheus_javaagent-0.20.0.jar=9991:/kafka_2.12-3.5.1/jmx_exporter/kafka_2.0.0.yml"
最后,重新启动Kafka即可,这样我们可以通过jmx_exporter服务的9991端口拉取Kafka的监控指标