使用JMX-exporter- centos 7配置kafka [英] configuring kafka with JMX-exporter- centos 7

查看:232
本文介绍了使用JMX-exporter- centos 7配置kafka的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想启用kafka监视,并且我将从测试单节点部署开始.我正在从 https://alex.dzyoba.com/blog/jmx-exporter/

I want to enable kafka monitoring and I am starting with single node deployment as test. I am following steps from https://alex.dzyoba.com/blog/jmx-exporter/

我尝试了以下步骤;最后一个检查jmx-exporter HTTP服务器的命令报告为空.我认为这就是原因,为什么我看不到kafka的指标.(请参见下文)

i tried following steps; the last command which checks for jmx-exporter HTTP server reports blank. i believe this is the reason, why I am not seeing metrics from kafka.(more on this below)

wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.6/jmx_prometheus_javaagent-0.6.jar
wget https://raw.githubusercontent.com/prometheus/jmx_exporter/master/example_configs/kafka-0-8-2.yml   
export KAFKA_OPTS='-javaagent:/opt/jmx-exporter/jmx_prometheus_javaagent-0.6.jar=7071:/etc/jmx-exporter/kafka-0-8-2.yml' 
/opt/kafka_2.11-0.10.1.0/bin/kafka-server-start.sh /opt/kafka_2.11-0.10.1.0/conf/server.properties
netstat -plntu | grep 7071

kafka代理登录控制台上没有任何错误消息.

kafka broker log on console does not have any ERROR message.

我在容器中运行了Prometheus,并且 http://IP:9090/metrics 显示了一堆指标.当我搜索"kafka"时,它会在

i have Prometheus running in a container and http://IP:9090/metrics shows bunch of metrics. when i searched for "kafka" it returned following

# TYPE net_conntrack_dialer_conn_attempted_total counter
net_conntrack_dialer_conn_attempted_total{dialer_name="kafka"} 79
# TYPE net_conntrack_dialer_conn_closed_total counter
net_conntrack_dialer_conn_closed_total{dialer_name="kafka"} 0
net_conntrack_dialer_conn_established_total{dialer_name="kafka"} 0
# TYPE net_conntrack_dialer_conn_failed_total counter
net_conntrack_dialer_conn_failed_total{dialer_name="kafka",reason="refused"} 79
net_conntrack_dialer_conn_failed_total{dialer_name="kafka",reason="resolution"} 0
net_conntrack_dialer_conn_failed_total{dialer_name="kafka",reason="timeout"} 0
net_conntrack_dialer_conn_failed_total{dialer_name="kafka",reason="unknown"} 79

# TYPE prometheus_sd_discovered_targets gauge
prometheus_sd_discovered_targets{config="kafka",name="scrape"} 1
# HELP prometheus_target_sync_length_seconds Actual interval to sync the scrape pool.
# TYPE prometheus_target_sync_length_seconds summary
prometheus_target_sync_length_seconds{scrape_job="kafka",quantile="0.01"} NaN
prometheus_target_sync_length_seconds{scrape_job="kafka",quantile="0.05"} NaN
prometheus_target_sync_length_seconds{scrape_job="kafka",quantile="0.5"} NaN
prometheus_target_sync_length_seconds{scrape_job="kafka",quantile="0.9"} NaN
prometheus_target_sync_length_seconds{scrape_job="kafka",quantile="0.99"} NaN
prometheus_target_sync_length_seconds_sum{scrape_job="kafka"} 0.000198245
prometheus_target_sync_length_seconds_count{scrape_job="kafka"} 1

我的猜测很普遍,它没有在7071端口获得任何度量;与先前的发现JMX服务器在端口7071上没有响应相符.

My guess is prometheous is not getting any metrics on port 7071; which aligns with earlier finding that JMX server is not respond on port 7071.

您能帮助我使用JMX-exporter和Prometheus启用kafka监视吗?

can you help me enabling kafka monitoring using JMX-exporter and Prometheus?

推荐答案

我在容器中运行了普罗米修斯

I have Prometheus running in a container

您需要配置Prometheus来刮擦您的外部LAN IP,这是因为您在容器外部运行Kafka.

You need to configure Prometheus to scrape your external LAN IP, then because you're running Kafka outside of a container.

您可以在此行上看​​到当前设置拒绝连接

You can see on this line that the connection is being refused with your current setup

net_conntrack_dialer_conn_failed_total {dialer_name ="kafka",reason ="refused"} 79

您应该在主机上运行Prometheus并刮除 localhost:7071

You should either run Prometheus on your host and scrape localhost:7071

如果希望 kafka:7071 可被Prometheus发现,则在容器中运行Kafka

Or run Kafka in a container if you want kafka:7071 to be discoverable by Prometheus

这篇关于使用JMX-exporter- centos 7配置kafka的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆