1.先决条件Prometheus部署完成,
2.AlertManager部署完成
3.不知道咋部署的参见(Prometheus-Alertmanage钉钉实现告警-CSDN博客)
这里说明下,生成的token用于配置Alertmanager的告警配置文件.
将配置配置我呢间中的内容粘贴到Alertmanager-config文件中.
这里注意下复制后的格式和缩进,容易出现yaml错误的情况
[root@node1-prome /zpf/k8s/prometheus/docker-prometheus/alertmanager]$cat config.yml
global:
#163服务器
smtp_smarthost: 'smtp.qq.com:465'
#发邮件的邮箱
smtp_from: '348264747@qq.com'
#发邮件的邮箱用户名,也就是你的邮箱
smtp_auth_username: '348264747@qq.com'
#发邮件的邮箱密码
smtp_auth_password: 'swxuighfghijbiea'
#进行tls验证
smtp_require_tls: false
route:
group_by: ['warn']
# 当收到告警的时候,等待group_wait配置的时间,看是否还有告警,如果有就一起发出去
group_wait: 10s
# 如果上次告警信息发送成功,此时又来了一个新的告警数据,则需要等待group_interval配置的时间才可以发送出去
group_interval: 10s
# 如果上次告警信息发送成功,且问题没有解决,则等待 repeat_interval配置的时间再次发送告警数据
repeat_interval: 10m
# 全局报警组,这个参数是必选的
receiver: 'ca' #这里是匹配告警触发器.要与下面的触发器名称保持一致
receivers:
- name: 'ca'
webhook_configs:
- url: 'http://api.aiops.com/alert/api/event/prometheus/78c652256xxxxxx'
send_resolved: true
inhibit_rules:
- source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname', 'dev', 'instance']
groups:
- name: node-exporter
rules:
- alert: HostOutOfMemory
expr: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10
# expr: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 > 10
for: 1m
labels:
severity: warning
annotations:
summary: "主机内存不足,实例:{{ $labels.instance }}"
description: "内存可用率<10%,当前值:{{ $value }}"
# description: "内存可用率>10%,当前值:{{ $value }}"
这里将原来的正确告警修改成了错误的.就会出发报警服务.
#重启Prometheus
$curl -X POST http://localhost:9090/-/reload
#重启Alertmanage
$curl -X POST http://localhost:9093/-/reload
Prometheus提示告警.
告警发送成功.