Я настраиваю оповещения для Прометея для каждого перехода узла в NotReady моего кластера Kubernetes. Я получаю уведомление на Slack всякий раз, когда это происходит. Проблема в том, что я получаю уведомление с тем же описанием «Узел xxxx находится в NotReady», даже когда он возвращается. Я пытаюсь использовать переменную для состояния готовности узла и использовать ее в части аннотаций.
Я пытался использовать «vars» и «when» для присвоения переменной, чтобы использовать ее в аннотациях.
- name: NodeNotReady
rules:
- alert: K8SNodeNotReadyAlert
expr: kube_node_status_condition{condition="Ready",status="true"} == 0
for: 3m
vars:
- ready_status: "Ready"
when: kube_node_status_condition{condition="Ready",status="true"} == 1
- ready_status: "Not Ready"
when: kube_node_status_condition{condition="Ready",status="true"} == 0
labels:
severity: warning
annotations:
description: Node {{ $labels.node }} status is in {{ ready_status }}.
summary: Node status {{ ready_status }} Alert!
Я хочу получить эти оповещения:
1. Когда узел находится в состоянии NotReady: «Статус узла-узла находится в NotReady».
2. Когда узел готов: «Состояние узла выпускного узла в NotReady.»