Docker 部署 Alertmanager
Docker Alertmanager DevOps About 2,413 words搜索镜像
docker search prom/alertmanager
拉取镜像
版本号可以去官网查看:https://hub.docker.com/r/prom/alertmanager
docker pull prom/alertmanager:v0.23.0
新建配置文件
命名为alertmanager.yml
global:
resolve_timeout: 5m
smtp_from: 'xxxxxxxx@qq.com' # 发件人
smtp_smarthost: 'smtp.qq.com:465' # 邮箱服务器的 POP3/SMTP 主机配置 smtp.qq.com 端口为 465 或 587
smtp_auth_username: 'xxxxxxxx@qq.com' # 用户名
smtp_auth_password: 'xxxxxxxxxxxxxxx' # 授权码 不是 QQ 密码
smtp_require_tls: false
smtp_hello: 'qq.com'
templates:
- '/etc/alertmanager/template/email.tmpl'
route:
group_by: ['alertname'] # 告警分组
group_wait: 5s # 在组内等待所配置的时间,如果同组内,5 秒内出现相同报警,在一个组内出现。
group_interval: 5m # 如果组内内容不变化,合并为一条警报信息,5 分钟后发送。
repeat_interval: 5m # 发送告警间隔时间 s/m/h,如果指定时间内没有修复,则重新发送告警
receiver: 'wechat' # 优先使用 wechat 发送
routes: #子路由,使用 email 发送
- receiver: email
match_re:
serverity: email
receivers:
- name: 'email'
email_configs:
- to: 'xxxxxxxx@163.com' # 如果想发送多个人就以 ',' 做分割
send_resolved: true
- name: 'wechat'
wechat_configs:
- corp_id: 'xxxxxxxxxxxxx' #企业 ID
api_url: 'https://qyapi.weixin.qq.com/cgi-bin/' # 企业微信 api 接口 统一定义
to_party: '2' # 通知组 ID
agent_id: '1000002' # 新建应用的 agent_id
api_secret: 'xxxxxxxxxxxxxx' # 生成的 secret
send_resolved: true
inhibit_rules:
- source_match:
severity: 'critical'
target_match:
severity: 'warning'
equal: ['alertname', 'dev', 'instance']
告警模板
自定义模板
{{ define "wechat.default.message" }}
{{ range $i, $alert :=.Alerts }}
========监控报警==========
告警状态:{{ .Status }}
告警级别:{{ $alert.Labels.severity }}
告警类型:{{ $alert.Labels.alertname }}
告警应用:{{ $alert.Annotations.summary }}
告警主机:{{ $alert.Labels.instance }}
告警详情:{{ $alert.Annotations.description }}
触发阀值:{{ $alert.Annotations.value }}
告警时间:{{ $alert.StartsAt.Format "2006-01-02 15:04:05" }}
========end=============
{{ end }}
{{ end }}
默认模板
https://github.com/prometheus/alertmanager/blob/main/template/default.tmpl
创建容器
--restart=always
:容器退出后(kill
后)自动重启。$PWD/alertmanager/alertmanager.yml
:映射配置文件。$PWD/alertmanager/template
:映射告警模板的存放的目录。
docker run -d --restart=always \
--name=alertmanager \
-p 9093:9093 \
-v $PWD/alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml \
-v $PWD/alertmanager/template:/etc/alertmanager/template \
prom/alertmanager:v0.23.0
编辑配置文件
docker exec -it alertmanager vi /etc/alertmanager/alertmanager.yml
进入容器
docker exec -it alertmanager sh
控制台
Views: 5,468 · Posted: 2022-02-17
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...