kafka-JVM采集器安装

Kafka采集器安装说明

① 下载安装采集器

下载采集器,并上传至服务器

复制代码
https://github.com/prometheus/jmx_exporter

kafka_jmx_exporter.tar.gz

② 解压采集器

复制代码
tar -zxvf kafka_jmx_exporter.tar.gz

cd kafka_jmx_httpserver-0.17.2

③ 修改采集器配置

前提条件

通过jmx方式监控Kafka,需要Kafka开启jmx远程访问,具体方式可以参考附录。

修改jmx_agent_conf.yaml配置文件

复制代码
hostPort: 127.0.0.1:1099

参数说明:

hostPort参数,修改为Kafka服务器ip地址和jmx连接端口,根据实际情况填写 host和 port

④ 启动采集器

在安装部署时,先通过前台方式启动,确认能正常采集指标数据后,可以修改为后台方式启动。

如果启动失败,出现报错日志信息,查看日志,检查Kafka是否正常开启jmx监控,jmx端口是否正常启动。

下面启动命令中9112是指采集器服务所占用的端口。

复制代码
# 前台启动
java -jar activemq_jmx_httpserver-0.17.2.jar 9112 jmx_agent_conf.yaml

# 后台启动:
nohup java -jar activemq_jmx_httpserver-0.17.2.jar 9112 jmx_agent_conf.yaml &

⑤ 验证

验证采集器是否安装成功

访问:http://kafka_exporter_ip:9112/metrics 页面显示如下,如果可以正常查询kafka_server_socket_server_metrics_connection_creation_total指标,则说明采集器启动成功。

复制代码
# HELP jmx_exporter_build_info A metric with a constant '1' value labeled with the version of the JMX exporter.
# TYPE jmx_exporter_build_info gauge
jmx_exporter_build_info{version="unknown",name="unknown",} 1.0
# HELP kafka_server_socket_server_metrics_connection_creation_total The total number of new connections established kafka.server:name=null,type=socket-server-metrics,attribute=connection-creation-total
# TYPE kafka_server_socket_server_metrics_connection_creation_total untyped
kafka_server_socket_server_metrics_connection_creation_total{listener="PLAINTEXT",networkProcessor="1",} 0.0
kafka_server_socket_server_metrics_connection_creation_total{listener="PLAINTEXT",networkProcessor="2",} 0.0
kafka_server_socket_server_metrics_connection_creation_total{listener="PLAINTEXT",networkProcessor="0",} 0.0
# HELP kafka_controller_ControllerStats_99thPercentile Attribute exposed for management kafka.controller:name=ControlledShutdownRateAndTimeMs,type=ControllerStats,attribute=99thPercentile
# TYPE kafka_controller_ControllerStats_99thPercentile untyped
kafka_controller_ControllerStats_99thPercentile{name="ControlledShutdownRateAndTimeMs",} 0.0
kafka_controller_ControllerStats_99thPercentile{name="PartitionReassignmentRateAndTimeMs",} 0.0
kafka_controller_ControllerStats_99thPercentile{name="ManualLeaderBalanceRateAndTimeMs",} 0.76606

附录

Kafka开启jmx监控说明

Kafka开启jmx监控

kafka自身提供的监控指标都可以通过JMX(Java Manager Extension)来进行获取。在使用JMX之前首先要开启JMX的功能。

复制代码
JMX_PORT=9999 ./kafka-server-start.sh ../config/server.properties
相关推荐
谢亮_vipxieliang7 小时前
Spring Cloud 服务治理入门:注册发现、配置中心、网关限流、熔断降级与分布式一致性方案
分布式·spring·spring cloud
2601_962071579 小时前
类变量和全局变量的生命周期有什么区别?
java·开发语言·jvm
用户0942485680315 小时前
第23章:OpenJDK逃逸分析、标量替换与锁优化
java·jvm
wuminyu15 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++
樱花落木兰15 小时前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
ShineWinsu16 小时前
对于Redis:Steam、Geospatial、Hyperloglog、Bitmap、Bitfield类型的解析
数据库·c++·redis·分布式·缓存·面试·zset
2601_9620715720 小时前
类变量和全局变量的隔离性有什么区别?
java·开发语言·jvm
估值探索者1 天前
【Python量化系统工程实战 #01】数据存储选型 CSVSQLiteMySQL 对比与 SQLite 实战建库
开发语言·jvm·python·sqlite·api接口·数据api接口·股票数据api接口
Flynt1 天前
Redis Cluster主节点挂了,为什么"高可用"还全员掉线?我把三次kill的记录翻出来了
数据库·redis·分布式
打工仔折腾 AI1 天前
从 Demo 到生产级 Agent:8 个关键设计机制与 Python 实现拆解
java·jvm·人工智能·后端·python·langchain·ai agent 实战