安裝請看http://www.javashuo.com/article/p-bfwlieic-do.html ,最好是對應的版本組件,不然可能會有差異。
node
(一)prometheus + grafana + alertmanager 配置主機監控mysql
(二)prometheus + grafana + alertmanager 配置Mysql監控web
(三)prometheus + grafana + alertmanager 配置Redis監控redis
(四)prometheus + grafana + alertmanager 配置Kafka監控sql
(五)prometheus + grafana + alertmanager 配置ES監控json
(四) prometheus + grafana + alertmanager 配置Kafka監控vim
一. kafka_exporter安裝(登錄到prometheus服務器,prometheus grafana alertmanager在同一臺服務器上)api
若是是直接搭建的kafka服務器,能夠參考上一章的內容。服務器
這裏以雲kafka來安裝與配置,固然直接搭建的服務器kafka也能夠使用這種方法。app
A. 下載kafka_exporter安裝包(下載地址:https://pan.baidu.com/s/17FmukqimaMU9skKz3yzheg ),而後解壓到/data/monitor/下。
B. 而後在cd /data/monitor/kafka_exporter/scripts 下,建立每一個kafka的監控啓動腳本,cat ba_kafka_19002.sh,其它的相似。
nohup /data/monitor/kafka_exporter/bin/kafka_exporter --kafka.server=ukafka-aqtjnc-1-bj11.service.ucloud.cn:9092 --web.listen-address=":19002" >> /data/monitor/kafka_exporter/log/19002_ba_kafka.log 2>&1 &
C. 而後cd /data/monitor/kafka_exporter 下,sh start.sh,查看端口是否監聽或者查看進行是否啓動
二. prometheus配置
1. vim /data/monitor/prometheus/conf/prometheus.yml
A. 將mysqld_exporter的配置增長到prometheus.yml文件中,vim /data/monitor/prometheus/conf/prometheus.yml
global:
# Server端抓取數據的時間間隔
scrape_interval: 1m
# 評估報警規則的時間間隔
evaluation_interval: 1m
# 數據抓取的超時時間
scrape_timeout: 20s
# 加全局標籤
#external_labels:
# monitor: "hk"
# 鏈接alertmanager
alerting:
alertmanagers:
- static_configs:
- targets: ["localhost:9093"]
# 告警規則
rule_files:
- /data/monitor/prometheus/conf/rule/*.yml
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# 監控prometheus本機
- job_name: 'prometheus'
scrape_interval: 15s
static_configs:
- targets: ['10.8.53.218:9090']
# 監控指定主機
- job_name: 'node_resources'
scrape_interval: 1m
static_configs:
file_sd_configs:
- files:
- /data/monitor/prometheus/conf/node_conf/node_host_info.json
honor_labels: true
# mysql採集器
- job_name: 'mysql_global_status'
scrape_interval: 60s
static_configs:
file_sd_configs:
- files:
- /data/monitor/prometheus/conf/node_conf/node_mysql_info.json
# redis採集器
- job_name: 'redis_resources'
scrape_interval: 60s
static_configs:
file_sd_configs:
- files:
- /data/monitor/prometheus/conf/node_conf/node_redis_info.json
# kafka
- job_name: 'kafka'
scrape_interval: 60s
metrics_path: '/metrics'
static_configs:
file_sd_configs:
- files:
- /data/monitor/prometheus/conf/node_conf/node_kafka_info.json
2. vim /data/monitor/prometheus/conf/node_conf/node_kafka_info.json
[
{
"labels": {
"server": "ukafka-aqtjnc-1-bj11.service.ucloud.cn:9092",
"kafkaversion": "0.10.2.1",
"alias": "ba_kafka"
},
"targets": [
"localhost:19002"
]
},
{
"labels": {
"server": "ukafka-3bjf9p-1-hb01.service.ucloud.cn:9092",
"kafkaversion": "0.10.2.1",
"alias": "other_kafka"
},
"targets": [
"localhost:19003"
]
}
]
2. 而後cd /data/monitor/prometheus下, sh reload.sh
注意:會有一些圖表會沒有數據,咱們是直接對接ucloud的api用腳本生成的數據。
三. 配置grafana
1. 下載kafka監控模板,下載地址:https://pan.baidu.com/s/1m6ANngg2WJcc1UjwHvT-Yw
2. 如何導入請參考配置主機監控的文章中的2.配置grafana中的h至l步驟( http://www.javashuo.com/article/p-ybzkorax-mn.html )
4. 配置alertmanager
A. 在prometheus配置規則,cat /data/monitor/prometheus/conf/rule/kafka.yml ,下面是文件內容,而後重啓prometheus,cd /data/monitor/prometheus && sh reload.sh
未完待續。。。。。