Сижу я напротив своей кошки и думаю: «вот морда умная, вроде все понимает, а сказать ничего не может». Ну прямо как система мониторинга, которая обнаружила проблему, но сообщить о ней не может.
Конечно же, у нас есть дашборд со всеми активными проблемами. Можно даже человека назначить, пусть сидит как охранник и смотрит в монитор. Но, во-первых, этот человек в конце рабочего дня уйдет, во-вторых, он может что-то не сразу заметить, а в-третьих, ему еще и платить надо за такую бессмысленную работу.
Но мы ведь учились настраивать почтовый сервер для отправки писем из консоли, писали python скрипт для отправки писем, и даже создавали своего telegram бота. Так давайте же использовать свои наработки.
- Для оповещений создаем два скрипта в /usr/lib/zabbix/alertscripts:
- email.sh и telegram.sh с правами 777 zabbix:zabbix
telegram.sh
#!/bin/bash
token='place bot token here'
chat="$1"
subj="$2"
message="$3"
/usr/bin/curl -s --header 'Content-Type: application/json' --request 'POST' --data "{\"chat_id\":\"${chat}\",\"text\":\"${subj}\n${message}\"}" "https://api.telegram.org/bot${token}/sendMessage"
email.sh
#!/bin/sh
to=$1
subject=$2
body=$3
(echo "Subject:$2"; echo "$3")| sendmail -F "Zabbix_Server" $1
- На веб странице zabbix сервера заходим в Оповещения -> Способы оповещений и добавляем два новых элемента:
Почему я не использую уже встроенные оповещалки? Да потому что оповещение zabbix по почте не очень дружит с яндекс почтой, которую я использую, а оповещение по telegram... Ну потому что так проще.
- Заходим в Действия -> Действия триггеров и активируем "Report problems to Zabbix administrators".
- Внутри этого действия добавляем операцию восстановления, чтобы мы получали сообщение не только о проблеме, но и о ее решении.
- Заходим в профиль нашего пользователя и открываем раздел "Оповещения".
- Выбираем канал, по которому нас будут уведомлять о проблемах, в поле "отправлять на" указываем свой telegram_id. Также прописываем активность (когда можно отправлять сообщения человеку) и указываем важность триггеров, от которых мы будем получать уведомления.
После всех настроек перезагружаем нашего подключенного клиента и проверяем работу оповещения:
Оповещения по email будут работать абсолютно аналогично.
- Последний штрих - создаем всем системным администраторам учетные записи на zabbix сервере, прописываем каждому из них свой канал оповещения и отправляем нашего "охранника с мониторами" в бессрочный отпуск.