alertmanager的配置文件alertmanager.yml内容如下:
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://127.0.0.1:5001/'
inhibit_rules:
- source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname', 'dev', 'instance']
其中最主要的是receivers,它定义了告警的处理方式,这里是webhook_config,意思是alertmananger将告警转发到这个url。
alertmanager提供多种告警处理方式,webhook_configs只是其中一种,还是如下多种方式:
email_config
hipchat_config
pagerduty_config
pushover_config
slack_config
opsgenie_config
victorops_config
webhook_config
wechat_config
#邮件通知Demo
global:
smtp_smarthost: 'mail.xxx.cn:25' #邮箱smtp服务器
smtp_from: 'ops@xxx.cn' #发件用的邮箱地址
smtp_auth_username: ' ops@xxx.cn' #发件人账号
smtp_auth_password: 'xxxxx' #发件人邮箱密码
smtp_require_tls: false #不进行tls验证
route:
group_by: [alertname]
group_wait: 10s
group_interval: 10s
repeat_interval: 10m
receiver: default-receiver
receivers:
- name: 'default-receiver'
email_configs:
- to: 'abc@aaa.com' #接收告警用的邮箱
alertmanager.yml文件配置完成后,重启alertmanager服务重新加载配置后,就可以测试邮件告警功能了。