(四) prometheus + grafana + alertmanager 配置Kafka監控

安裝請看https://blog.51cto.com/liuqs/2027365 ,最好是對應的版本組件,否則可能會有差別。

(一)prometheus + grafana + alertmanager 配置主機監控

(二)prometheus + grafana + alertmanager 配置Mysql監控

(三)prometheus + grafana + alertmanager 配置Redis監控

(四)prometheus + grafana + alertmanager 配置Kafka監控

(五)prometheus + grafana + alertmanager 配置ES監控


(四) prometheus + grafana + alertmanager 配置Kafka監控

一. kafka_exporter安裝(登陸到prometheus服務器,prometheus grafana alertmanager在同一臺服務器上)

  1. 如果是直接搭建的kafka服務器,可以參考上一章的內容。

  2. 這裏以雲kafka來安裝與配置,當然直接搭建的服務器kafka也可以使用這種方法。

    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步驟( https://blog.51cto.com/liuqs/2391282 )


4. 配置alertmanager

    A. 在prometheus配置規則,cat /data/monitor/prometheus/conf/rule/kafka.yml ,下面是文件內容,然後重啓prometheus,cd /data/monitor/prometheus && sh reload.sh

未完待續。。。。。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章