序
本系列主要介紹prometheus+cadvisor+alertmanager打造docker監控,主要監控指定docker容器是否掛掉
本節主要熟悉prometheus+Alertmanager的部署和基本使用
一、說明
prometheus本身並沒有整合告警功能,需要配合Alertmanager使用
二、下載並安裝Alertmanager
進入下載頁,作業系統選擇darwin
往下拉,看到alertmanager
三、配置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'
複製程式碼
- 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 檢視告警
歡迎繼續閱讀: