prometheus之docker監控與告警系列(二)

2遠發表於2018-09-14

本系列主要介紹prometheus+cadvisor+alertmanager打造docker監控,主要監控指定docker容器是否掛掉

本節主要熟悉prometheus+Alertmanager的部署和基本使用

一、說明

prometheus本身並沒有整合告警功能,需要配合Alertmanager使用

二、下載並安裝Alertmanager

進入下載頁,作業系統選擇darwin

prometheus.io/download/

往下拉,看到alertmanager

alertmanager.png

三、配置Prometheus,使其可以與Alertmanager通訊

# Alertmanager配置
alerting:
 alertmanagers:
 - static_configs:
   - targets: ["localhost:9093"] # 設定alertmanager和prometheus互動的介面,即alertmanager監聽的ip地址和埠
複製程式碼

四、新增prometheus.rules.yml,配置Prometheus規則,例項down掉觸發alert

groups:
- name: Instances
  rules:
  - alert: InstanceDown
    expr: up == 0
    for: 5s
    labels:
      severity: page
    # Prometheus templates apply here in the annotation and label fields of the alert.
    annotations:
      description: '{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 5 s.'
      summary: 'Instance {{ $labels.instance }} down'
複製程式碼

為prometheus指定規則檔案

rule_files:
  - 'prometheus.rules.yml'
複製程式碼

五、編輯alertmanager.yml,配置webhook_config,即告警觸發的介面呼叫

global:
  resolve_timeout: 5m

route:
  group_by: ['alertname']
  group_wait: 10s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'web.hook'
receivers:
- name: 'web.hook'
  webhook_configs:
  - url: 'http://localhost:5200/auth/instanceDown'

複製程式碼

啟動Alertmanager

./alertmanager --config.file=alertmanager.yml

啟動Prometheus

./prometheus --config.file=prometheus.yml

上一篇起的任意一個程式關閉,比如 http://localhost:8080

到http://localhost:9090/alerts 檢視告警

歡迎繼續閱讀:

prometheus之docker監控與告警系列(一)

prometheus之docker監控與告警系列(三)

相關文章