六. prometheus + grafana + alertmanager 配置ES監控

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

  1. 安裝python3

    A. 下載python3,下載地址: https://pan.baidu.com/s/1SmqND0xI0sNQLq1kqzH77A ,當然可以在官網下載 https://www.python.org/

    B. 解壓, tar xf Python-3.6.2.tgz

    C. 安裝,cd Python-3.6.2 && ./configure && make && make install && ln -s /usr/local/bin/python3 /usr/bin/python3

  2. 安裝prometheus-es-exporter,pip3 install prometheus-es-exporter

  3. A. 下載prometheus-es-exporter配置文件(下載地址: https://pan.baidu.com/s/1gOuxSV1EzniCFGDlZc3khA ),然後解壓到/data/monitor/下。

    B. 然後在cd /data/monitor/prometheus-es-exporter/scripts 下,創建每個redis的監控啓動腳本,cat log_es_9206.sh,其它的類似。

    nohup /usr/local/bin/prometheus-es-exporter -p 9206 -e 10.8.108.23:9200 -c ../conf/exporter.cfg --cluster-health-disable --nodes-stats-disable --indices-stats-disable >> ../log/prom_es.log 2>&1 &


    C. 然後cd /data/monitor/prometheus-es-exporter 下,sh start.sh,查看端口是否監聽或者查看進行是否啓動

二. prometheus配置


  1. 將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



# prometheus-es

  - job_name: 'prometheus_es'

    scrape_interval: 60s

    static_configs:

    - targets: ['localhost:9206']


    2. 然後cd /data/monitor/prometheus下, sh reload.sh


三. 配置grafana

    1. 安裝panel模板(登陸到prometheus服務器,prometheus grafana alertmanager在同一臺服務器上),如果需要其它的模板,請到官網 https://grafana.com/plugins

        grafana-cli plugins install grafana-clock-panel

        grafana-cli plugins install grafana-worldmap-panel

        grafana-cli plugins install grafana-piechart-panel

    2. 重啓grafana服務

        /etc/init.d/grafana-server restart   

    3. 添加數據源。

        A. 首先點配置按鈕,然後在點Data Sources配置數據源。

            image.png

        B. 打開數據源頁面,然後點 Add data source

            image.png

        C. 打開選擇數據源頁面,選擇Elasticsearch

            image.png

        D. 然後打開配置prometheus數據源頁面,在Name中輸入 es_log URL中填 http://10.8.108.23:9200index name中填 [logstash-nginx-]YYYY.MM.DD ,pattern中選擇 Daily,最後點Save&Test 進行保存。

            image.png

    4. 在自己的電腦上,下載es相關的監控模板

        A. 活動站點數據展示模板下載地址: https://pan.baidu.com/s/100IGmYnr6oEsPZyZFZ83BQ 

        B. nginx日誌分析模板下載地址: https://pan.baidu.com/s/1jaFTvwc4K2KyxU0dyQRYfg  

    5. 如何導入請參考配置主機監控的文章中的2.配置grafana中的h至l步驟( https://blog.51cto.com/liuqs/2391282 )

        A.  活動站點數據展示模板導入後需要再配置一下

               a. 點界面上的配置按鈕 

3.png            b. 然後在配置頁面點 {x}Variables,點$domain這個變量。 

                2.png

            c. 將 Values separated by comma裏的值修改爲 自己接入es的域名,然後點update 最後點Save

                image.png    

        B. nginx日誌分析模板導入模板後,可以在當前頁面點配置按鈕,然後在配置頁面點Links,然後點Kibana這個配置項,然後在編輯頁面中如下圖一樣選擇與填寫,最後updatesave

            11.png

            12.png


四. 配置alertmanager

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



    B. 配置alertmanager, cat /data/prometheus/alertmanager/conf/alertmanager.yml ,如果是相同的接收人,可以直接在原來的資源後面增加,如果是不同的接收人,就需要重新定義接收人模板,然後再定義資源規則並綁定到新的接收人模板


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