k8s-Prometheus-Alertmanager[钉钉]报警
打开电脑版钉钉创建机器人
1.创建钉钉机器人
打开电脑版钉钉,创建一个群,创建自定义机器人,按如下步骤创建:
- https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq
- https://developers.dingtalk.com/document/app/custom-robot-access
我创建的机器人如下:
群设置-->智能群助手-->添加机器人-->自定义-->添加
机器人名称:test
接收群组:钉钉报警测试
安全设置:cluster1
点击智能群助手,可以看到刚才创建的test这个机器人,点击test,就会进入到test机器人的设置界面
出现如下内容:
机器人名称:test
接受群组:钉钉报警测试
消息推送:开启
webhook: [这是我的]
安全设置:
自定义关键词:cluster1
2.安装钉钉的webhook插件,在k8s的控制节点master01操作
[root@master01 alertmanager]# tar -xf prometheus-webhook-dingtalk-0.3.0.linux-amd64.tar.gz
启动钉钉报警插件
[root@master01 alertmanager]# cd prometheus-webhook-dingtalk-0.3.0.linux-amd64
[root@master01 prometheus-webhook-dingtalk-0.3.0.linux-amd64]# nohup ./prometheus-webhook-dingtalk --web.listen-address="0.0.0.0:8060" --ding.profile="cluster1=https://oapi.dingtalk.com/robot/send?access_token=1bcf11d0705e81614af01cb33ac20a60e9017fb2563bc3e3c063598a54c19c6c" &
[root@master01 alertmanager]# ss -lntup|grep 8060 tcp LISTEN 0 4096 :::8060 :::* users:(("prometheus-webh",pid=13532,fd=3))
alertmanager-cm-dd.yaml文件
[root@master01 alertmanager]# cat alertmanager-cm-dd.yaml kind: ConfigMap apiVersion: v1 metadata: name: alertmanager namespace: monitor-sa data: alertmanager.yml: |- global: resolve_timeout: 1m smtp_smarthost: 'smtp.189.cn:465' smtp_from: '13319886377@189.cn' smtp_auth_username: '13319886377' smtp_auth_password: '你的密码' smtp_require_tls: false route: group_by: [alertname] group_wait: 10s group_interval: 10m repeat_interval: 1h receiver: cluster1 receivers: - name: cluster1 webhook_configs: - url: 'http://192.168.1.180:8060/dingtalk/cluster1/send' send_resolved: true
通过kubectl apply使配置生效,执行顺序如下:
kubectl delete -f alertmanager-cm.yaml kubectl apply -f alertmanager-cm-dd.yaml kubectl delete -f prometheus-alertmanager-cfg.yaml kubectl apply -f prometheus-alertmanager-cfg.yaml kubectl delete -f prometheus-alertmanager-deploy.yaml kubectl apply -f prometheus-alertmanager-deploy.yamld
钉钉收到报警信息
alertmanager.yaml设置多个接收地址写法
[root@master01 alertmanager]# cat alertmanager-cm-all.yaml kind: ConfigMap apiVersion: v1 metadata: name: alertmanager namespace: monitor-sa data: alertmanager.yml: |- global: resolve_timeout: 1m smtp_smarthost: 'smtp.189.cn:465' smtp_from: '13319886377@189.cn' smtp_auth_username: '13319886377' smtp_auth_password: '你的授权码' smtp_require_tls: false route: group_by: [alertname] group_wait: 10s group_interval: 10m repeat_interval: 1h receiver: "cluster1" #这里随便写一个 routes: - receiver: "mail" group_wait: 10s match: severity: warnning - receiver: "cluster1" group_wait: 10s match: severity: critical receivers: - name: 'mail' email_configs: - to: '30772818@qq.com' send_resolved: true - name: 'cluster1' webhook_configs: - url: 'http://192.168.1.180:8060/dingtalk/cluster1/send' send_resolved: true
继续阅读

我的微信
这是我的微信扫一扫
评论