告警优化
1.实现Prometheus下线维修节点不需要告警
一般情况是静默,这里介绍下第二种方式
首先对于下线的节点进行taint,禁止调度
kubectl taint node nodexxx glm.ai/check=manual:NoSchedule --context=xxxxxxx
修改prometheus告警规则
方式1.通过unless排除
这种方式就是自定义
kube_node_spec_taint{effect="NoSchedule", key="node.kubernetes.io/unreachable"}
unless on(node) kube_node_spec_taint{effect="NoSchedule", key=~"glm.ai/check"} ==1
方式2: 基于官方的进行的告警进行修改
kube_node_spec_taint{effect="NoSchedule", key="node.kubernetes.io/unreachable"} unless ignoring (key, value) kube_node_spec_taint{job="kube-state-metrics",key=~"ToBeDeletedByClusterAutoscaler|cloud.google.com/impending-node-termination|aws-node-termination-handler/spot-itn|glm.ai/check"} == 1