Оповещения о показателях, о которых больше не сообщается
У меня есть предупреждение, основанное на метрике, сообщаемой узлом-экспортером - чтобы сообщить, когда узел не работает более 2 минут. Мы запускаем узел-экспортер как DaemonSet в кластере kubernetes.
Проблема в том, что иногда узлы удаляются навсегда, и мы продолжаем получать оповещения. Мне интересно, как правильно разрешить эти предупреждения в автоматическом режиме.
Если предложение "FOR" допускает диапазон, скажем, от 2 м до 24 ч, то это может сработать для меня, но я не знаю, поддерживается ли это.
Для справки вот правило, которое мы имеем -
ALERT InstanceDown
IF up{job="kubernetes-node-exporter"} == 0
FOR 2m
LABELS {
severity = "page"
}
ANNOTATIONS {
summary = "Node {{ $labels.instance }} is down",
description = "Node {{ $labels.instance }} of job {{ $labels.job }} has been down for more than 2 minutes.",
}
PS: в обсуждении на https://groups.google.com/forum/ Брайан Бразилия говорит следующее. Это относится и к узлу-экспортеру, который должен работать на каждом узле?
Мы считаем, что один экспортер для каждой машины является антишаблоном, поскольку это является узким местом как с технической, так и с эксплуатационной точек зрения, а также увеличивает влияние отказа одного из экспортеров.
1 ответ
Это звучит как устаревание в Prometheus 1.x, более высокое предложение FOR, такое как 10m, справится с этим.
Это относится и к узлу-экспортеру, который должен работать на каждом узле?
Только один экспортер на машину, которая делает все, является анти-паттерном. Запуск экспортера узлов везде - ожидаемый способ его использования.