helm 部署 Kube-Prometheus + Grafana + 钉钉告警 (三) 部署 钉钉告警
获取钉钉机器 Webhook

配置钉钉机器人关键字

部署 prometheus-webhook-dingtalk
mkdir -p /data/yaml/kube-prometheus/prometheus-webhook-dingtalk && cd /data/yaml/kube-prometheus/prometheus-webhook-dingtalk
cat >> deployment.yaml << EOF
apiVersion: apps/v1
kind: Deployment
metadata:
name: prometheus-webhook-dingtalk
namespace: kube-prometheus
labels:
app: prometheus-webhook-dingtalk
spec:
replicas: 1
minReadySeconds: 100
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 1
selector:
matchLabels:
app: prometheus-webhook-dingtalk
template:
metadata:
labels:
app: prometheus-webhook-dingtalk
spec:
terminationGracePeriodSeconds: 60
restartPolicy: Always # 只要退出就重启
containers:
- name: prometheus-webhook-dingtalk
image: timonwong/prometheus-webhook-dingtalk:v1.4.0
imagePullPolicy: IfNotPresent
args:
- '--ding.profile=devops=https://oapi.dingtalk.com/robot/send?access_token=cc7e93b8ac6e53f941dc8bef815d2d2f2775c8b793fe75141309c9b1253b755f' # access_token 在上面钉钉机器上获取;devops 注意该值,需要与 prometheus 的告警匹配
ports:
- containerPort: 8060
protocol: TCP
name: http
resources:
requests:
cpu: 100m
memory: 1024Mi
limits:
cpu: 2000m
memory: 2048Mi
livenessProbe:
tcpSocket:
port: 8060
initialDelaySeconds: 30
periodSeconds: 90
EOF
cat >> svc.yaml << EOF
apiVersion: v1
kind: Service
metadata:
name: prometheus-webhook-dingtalk
namespace: kube-prometheus
labels:
app: prometheus-webhook-dingtalk
spec:
ports:
- port: 8060
targetPort: 8060
selector:
app: prometheus-webhook-dingtalk
EOF
kubectl apply -f deployment.yaml -f svc.yaml
测试
启动一个无法拉取镜像的容器,钉钉机器人进行告警


浙公网安备 33010602011771号