第三方kafka exporter方案
目前网上关于使用Prometheus 监控kafka的大部分资料都是使用一个第三方的
kafka exporter,他的原理大概就是启动一个kafka客户端,获取kafka服务器的信息,然后提供一些metric接口供Prometheus使用,随意它能展示的监控信息比较有限,只有每个主题的分区数,每秒/分钟消息数,消费组的lag数。但是kafka本身的JMX有提供500+的监控信息可以进行监控,当然不是说这这么监控指标都很重要,相比kafka exporter直接使用JMX可监控的选项会更多。
Prometheus官方方案
Prometheus官方提供的jmx_exporter可以将JMX转换为Prometheus Metrics格式。
Prometheus JMX exporter使用方式选择
jmx_exporter提供两种用法:
- 一种是启动独立的进程。JVM 启动时指定参数,暴露 JMX 的 RMI 接口,JMX_Exporter 调用 RMI 获取 JVM 运行时状态数据,转换为 Prometheus metrics 格式,并暴露端口让 Prometheus 采集。
- 一种是JVM进程内启动,通过java agent的形式运行,进程内读取 JVM 运行时状态数据,转换为 Prometheus metrics 格式,并暴露端口让 Prometheus 采集。官方比较推荐使用这种方式。
使用JMX exporter监控kafka
在kafka-server-start.sh最上面添加下面的代码:
export KAFKA_OPTS="-javaagent:/opt/kafka_2.11-1.1.0/bin/jmx_prometheus_javaagent-0.19.0.jar=9990:/opt/kafka_2.11-1.1.0/bin/kafka-jmx.yml"
jmx_exporter官网下载最新的jmx_prometheus_javaagent-0.19.0.jar包。
kafka-jmx.yml
lowercaseOutputName: true rules: # Special cases and very specific rules - pattern : kafka.server
<>Value name: kafka_server_$1_$2 type: GAUGE labels: clientId: "$3" topic: "$4" partition: "$5" - pattern : kafka.server <>Value name: kafka_server_$1_$2 type: GAUGE labels: clientId: "$3" broker: "$4:$5" - pattern : kafka.coordinator.(\w+) <>Value name: kafka_coordinator_$1_$2_$3 type: GAUGE # Generic per-second counters with 0-2 key/value pairs - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_total type: COUNTER labels: "$4": "$5" "$6": "$7" - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_total type: COUNTER labels: "$4": "$5" - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_total type: COUNTER - pattern: kafka.server <>([a-z-]+) name: kafka_server_quota_$3 type: GAUGE labels: resource: "$1" clientId: "$2" - pattern: kafka.server <>([a-z-]+) name: kafka_server_quota_$4 type: GAUGE labels: resource: "$1" user: "$2" clientId: "$3" # Generic gauges with 0-2 key/value pairs - pattern: kafka.(\w+) <>Value name: kafka_$1_$2_$3 type: GAUGE labels: "$4": "$5" "$6": "$7" - pattern: kafka.(\w+) <>Value name: kafka_$1_$2_$3 type: GAUGE labels: "$4": "$5" - pattern: kafka.(\w+) <>Value name: kafka_$1_$2_$3 type: GAUGE # Emulate Prometheus 'Summary' metrics for the exported 'Histogram's. # # Note that these are missing the '_sum' metric! - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_count type: COUNTER labels: "$4": "$5" "$6": "$7" - pattern: kafka.(\w+) <>(\d+)thPercentile name: kafka_$1_$2_$3 type: GAUGE labels: "$4": "$5" "$6": "$7" quantile: "0.$8" - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_count type: COUNTER labels: "$4": "$5" - pattern: kafka.(\w+) <>(\d+)thPercentile name: kafka_$1_$2_$3 type: GAUGE labels: "$4": "$5" quantile: "0.$6" - pattern: kafka.(\w+) <>Count name: kafka_$1_$2_$3_count type: COUNTER - pattern: kafka.(\w+) <>(\d+)thPercentile name: kafka_$1_$2_$3 type: GAUGE labels: quantile: "0.$4" 配置好kafka-server-start.sh后还需要重启kafka。
Prometheus配置
在Prometheus的prometheus.yml添加如下内容。注意端口号为KAFKA_OPTS配置的端口。
- job_name: "kafka_jmx" metrics_path: /metrics static_configs: - targets: ['192.168.249.1:9990','192.168.249.2:9990','192.168.249.3:9990']
配置完成后重新加载Prometheus配置文件就可以了。
grafana 配置
通过上面配置后,可以在grafan中找到对应的面板直接来用。
https://grafana.com/grafana/dashboards/18276-kafka-dashboard/
效果
猜你喜欢
- 19天前(fender japan hybrid)Fender东京旗舰店盛大开幕在即,开售商品和店内服务提前揭晓
- 19天前(万达酒店及度假村连续五年荣获“中国饭店集团60强”)万达酒店及度假村连续五年荣获“中国饭店集团60强”
- 19天前(瑞士大酒店-自助餐怎么样)瑞意心旅,以食为先 瑞士酒店开启全新"瑞士早餐计划"
- 19天前(罗马尼亚的匈牙利族自治)江苏赴匈牙利、罗马尼亚开展文旅交流推广活动
- 19天前(新西兰“空降”上海:新西兰旅游局邀请你来“玩真的”!)新西兰“空降”上海:新西兰旅游局邀请你来“玩真的”!
- 19天前(澳涞山庄见证北欧零碳到中国实践,世界十佳环境保护城市榜单发布)澳涞山庄见证北欧零碳到中国实践,世界十佳环境保护城市榜单发布
- 19天前(武隆旅游门票)炸了!519中国旅游日武隆甩出王炸福利,59.9元通玩6大景点?!
- 19天前(岭南东方大酒店)粤西成势 | 阳江阳春长兴岭南东方酒店正式签约,粤西文旅再添明珠
- 19天前(万豪旅享家活动2021)精彩上新,漫享夏日----跟随万豪旅享家新开酒店解锁夏日旅行灵感
- 19天前(泛舟诗海觅春迹什么意思)泛舟觅桃源,又一头部机构下场文旅赛道
网友评论
- 搜索
- 最新文章
- (2020广州车展哈弗)你的猛龙 独一无二 哈弗猛龙广州车展闪耀登场
- (哈弗新能源suv2019款)智能科技颠覆出行体验 哈弗重塑新能源越野SUV价值认知
- (2021款全新哈弗h5自动四驱报价)新哈弗H5再赴保障之旅,无惧冰雪护航哈弗全民电四驱挑战赛
- (海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
- (visa jcb 日本)优惠面面俱到 JCB信用卡邀您畅玩日本冰雪季
- (第三届“堡里有年味·回村过大年”民俗花灯会活动)第三届“堡里有年味·回村过大年”民俗花灯会活动
- (展示非遗魅力 长安启源助力铜梁龙舞出征)展示非遗魅力 长安启源助力铜梁龙舞出征
- (阿斯塔纳航空公司)阿斯塔纳航空机队飞机数量增至50架
- (北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
- (我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
- 热门文章