prometheus(普羅米修斯)搭建監控在我的上一篇部落格,如果有需要可以去參考參考,這篇時下篇,上篇是prometheus(普羅米修斯)搭建監控,兩篇可以連起來看
溫馨提示,請将下文文檔中所涉及到的郵箱,換成你們自己的。謝謝,不然你們接收不到報警資訊,會發到我這
1)部署prometheus監控元件alertmanager.
[root@docker01 ~]# docker load < alertmanager.tar
[root@docker01 ~]# docker run -d --name alertmanager -p 9093:9093 prom/alertmanager
[root@docker01 ~]# vim alertmanager.yml
global:
resolve_timeout: 5m
smtp_from: '[email protected]'
smtp_smarthost: 'smtp.qq.com:465'
smtp_auth_username: '[email protected]'
smtp_auth_password: 'ikeamxidxbodeaba'
smtp_require_tls: false
smtp_hello: 'qq.com'
route:
group_by: ['alertname']
group_wait: 5s
group_interval: 5s
repeat_interval: 5m
receiver: 'email'
receivers:
name: 'email'
email_configs:
to: '[email protected]'
send_resolved: true
inhibit_rules:
source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname', 'dev', 'instance']
[root@docker01 ~]# docker rm -f alertmanager
[root@docker01 ~]# docker run -d --name alertmanager -p 9093:9093 -v /root/alertmanager.yml:/etc/alertmanager/alertmanager.yml prom/alertmanager
2)建立監控規則,使用email報警方式。監控服務運作狀态,如果服務節點down機狀态,則發送郵件。
[root@docker01 ~]# mkdir -p prometheus/rules
[root@docker01 ~]# cd prometheus/rules/
[root@docker01 ~]# vim prometheus.yml
12行:
targets:
192.168.1.10:9093
15行:
"/usr/local/prometheus/rules/*.rules"
[root@docker01 ~]# docker rm -f prometheus
[root@docker01 ~]# docker run -d -p 9090:9090 --name prometheus --net=host -v /root/prometheus.yml:/etc/prometheus/prometheus.yml -v /root/prometheus/rules/node-up.rules:/usr/local/prometheus/rules/node-up.rules prom/prometheus
docker02:
[root@docker02 ~]# docker stop cadvisor
cadvisor
3)建立郵件發送模闆,仍使用email報警方式,模拟服務節點down機狀态,檢視驗證email發送模闆。
[root@docker01 ~]# cd prometheus/
[root@docker01 prometheus]# mkdir alertmanager-tmpl
[root@docker01 prometheus]# cd alertmanager-tmpl/
[root@docker01 alertmanager-tmpl]# vim email.tmpl
{{ define "email.from" }}[email protected]{{ end }}
{{ define "email.to" }}[email protected]{{ end }}
{{ define "email.to.html" }}
{{ range .alerts }}
=========start==========<br>
告警程式: prometheus_alert<br>
告警級别: {{ .labels.severity }} 級<br>
告警類型: {{ .labels.alertname }}<br>
故障主機: {{ .labels.instance }}<br>
告警主題: {{ .annotations.summary }}<br>
觸發時間: {{ .startsat.format "2019-08-04 16:58:15" }} <br>
=========end==========<br>
{{ end }}
8行:
templates:
'/etc/alertmanager-tmpl/*.tmpl'
21行:
to: '{{ template "email.to"}}'
html: '{{template "email.to.html" .}}'
[root@docker01 ~]# docker run -itd --name alertmanager -p 9093:9093 -v /root/alertmanager.yml:/etc/alertmanager/alertmanager.yml -v /root/prometheus/alertmanager-tmpl:/etc/alertmanager-tmpl prom/alertmanager:latest