prometheus监控Kafka (kafka_exporter和 jmx_exporter)
一、kafka的安装方法参考:https://blog.csdn.net/u010533742/article/details/117260505二、kafka_exporter部暑mkdir /data/kafka_exporter -pcat > /data/kafka_exporter/start.sh << 'EOF'docker rm -f kafka_exporter
·
一、kafka的安装方法参考:https://blog.csdn.net/u010533742/article/details/117260505
二、kafka_exporter部暑(指定版本为1.2)
mkdir /data/kafka_exporter -p
cat > /data/kafka_exporter/start.sh << 'EOF'
docker rm -f kafka_exporter
docker run -d \
--restart=always \
--name kafka_exporter \
-v /etc/localtime:/etc/localtime \
-p 9308:9308 \
danielqsj/kafka-exporter:v1.2.0 \
--kafka.server=192.168.11.192:9092 \
--kafka.server=192.168.11.193:9092 \
--kafka.server=192.168.11.194:9092 \
--sasl.enabled \
--sasl.username=alice \
--sasl.password=alice
EOF
kafka_exporter metrics的访问方法
http://192.168.11.192:9308/metrics
3、配置prometheus
#添加自动发现脚本
cat >> /data/prometheus/conf/prometheus.yml << 'EOF'
#kafka自动发现
- job_name: 'kafka'
file_sd_configs:
- files:
- /etc/prometheus/sd_config/kafka.yaml
refresh_interval: 5s
relabel_configs:
- source_labels: [__address__]
regex: (.*)
target_label: instance
replacement: $1
- source_labels: [__address__]
regex: (.*):(.*)
target_label: __address__
replacement: $1:9308
EOF
#自动发现配置
cat > /data/prometheus/conf/sd_config/kafka.yaml << 'EOF'
#kafka自动发现
- labels:
project: 民生kafka
targets:
- 192.168.11.192:9092
- 192.168.11.193:9092
- 192.168.11.194:9092
EOF
访问 http://192.168.11.221:9090
kafka_brokers
4、配置grafana
grafanaid: 7589
自定义图表,请参考:https://blog.csdn.net/qq_34864753/article/details/103953385
5、警报规则
cat > /data/prometheus/conf/rules/kafka.rules << 'EOF'
groups:
- name: kafka-监控告警
rules:
- alert: 告警!Kafka Topics 副本数少于3
expr: sum(kafka_topic_partition_in_sync_replica) by (topic) < 3
for: 0m
labels:
severity: 严重告警
annotations:
summary: "{{ $labels.instance }} Kafka topics 副本数少于3"
description: "Kafka topic 分区不同步\n 当前值 = {{ $value }}"
- alert: 告警!KafkaConsumersGroup
expr: sum(kafka_consumergroup_lag) by (consumergroup) > 50
for: 1m
labels:
severity: 严重告警
annotations:
summary: "{{ $labels.instance }} Kafka consumers group"
description: "Kafka consumers group\n 当前值 = {{ $value }}"
EOF
更多推荐
已为社区贡献4条内容
所有评论(0)