Проверьте статус ufw и отправьте предупреждение Prometheus, если оно неактивно

#prometheus #prometheus-alertmanager #ufw

Вопрос:

Мне нужно было бы проверить, активен ли статус ufw, в противном случае отправьте предупреждение на канал Slack.

Я обнаружил, что единственный способ программно проверить, активен ли ufw, — это проверить код выхода sudo ufw status | grep -w active (см. Здесь: https://askubuntu.com/questions/533269/how-to-check-if-ufw-is-running-programmatically)

Имея систему Prometheus/Alert Manager, я хотел бы создать предупреждение на случай, если статус ufw неактивен. Можно ли было бы добиться этого с помощью запроса PromQL?

Спасибо за любую помощь.

Ответ №1:

Вы можете использовать средство сбора текстовых файлов в node_exporter для чтения файла .prom, который вы обновляете с помощью таймера/службы systemd, выполняющей ufw | grep команду

Служба, которая обновляет текстовый файл, должна создать файл следующим образом:

 # HELP ufw_is_up A flag to indicate if ufw is active. 
# TYPE ufw_is_up gauge
ufw_is_up 1

 

установите таймер systemd для запуска чаще, чем у вас установлен Prometheus, чтобы очистить его, и вы получите метрику для любой команды, которую вы хотите!

Я ничего не знаю об ufw этом , но вы могли бы избежать сложности текстового файла или запуска команды ufw и просто использовать сборщик systemd/service manager по выбору для экспортера узлов.