Zabbix - это универсальный сервис для мониторинга всей ИТ-инфраструктуры. Создание бота для уведомлений о состоянии системы - это удобный способ дистанционного контроля.
Telegram, на самом деле, это один из многих способов оповещения в Zabbix. Выбрали его, потому что на данный момент это самый скачиваемый и популярный мессенджер с возможностью создания и кастомизации ботов.
Создание Telegram BOT
1) Зайдите в Telegram аккаунт и в поиске каналов и чатов, введите“BotFather”.
2) После перехода в “BotFather”, нажимаем “Запустить”.
3) Прописываем команду /newbot - создать нового бота.
4) Теперь выбираем имя для бота. У нас, для примера, бота с именем “Test1”.
Следующим шагом придумываем username - имя пользователя для бота, при этом окончание должно быть такое: _bot. В качестве примера установим - “Test1zabbix_bot”.
Важно! Ваше имя пользователя должно быть УНИКАЛЬНЫМ, если имя уже занято, то система выдаст ошибку:
В случае успеха у вас появится следующее сообщение:
Привязка API ключа к Zabbix
1) Заходим по ссылке (стрелка №1)и нажимаем “Запустить”.
2) Копируем строчку с вашим API.
3) Заходим в Zabbix - “Способы оповещения”,”Telegram”.
4) В строку “Token” вставляем API ключ из телеграмм.
5) Переводим шаблон отправки сообщений на русский язык, но можно оставить как есть, зависит от того, с каким языком вам удобнее работать. Переходим в “Шаблон сообщений”, “Изменить” и в появившемся окне выбираем язык.
Не меняем значения таких переменных как:{EVENT.TIME} on {EVENT.DATE}
Создания способа уведомления для пользователей или групп
Определяем адресатов и характер уведомлений. Можно настроить бота как на отправку уведомлений о конкретных проблемах одному человеку, так и нескольким людям в группу, где все смогут его увидеть.
У нас настроена группа для отправки общих уведомлений по всем системам, которые мониторятся, а специалисту по 1С приходят только уведомления о проблемах, связанных с серверами 1С.
Настраиваем уведомления в группу
1) Создаем группу и добавляем туда необходимых людей.
2) Добавляем в группу созданного бота и делаем его администратором.
3) Ищем в поиске телеграмм @myidbot и добавляем его в чат, также делаем администратором.
4) В группе прописываем команду “/getgroupid@myidbot”. Если всё сделано верно, то система выдаст следующие значение:
5) Копируем всё после ID is : -67164657
6) Далее заходим в интерфейс Zabbix “Администрирование”, “Пользователи”, выбираем пользователя. У нас для примера - это “Admin”, нажимаем на него и заходим в настройки профиля.
7) Выбираем вкладку “Оповещения”, нажимаем “Добавить”.
8) Выбираем тип “Telegram”, в строчке “Отправлять на” вставляем ранее скопированный Your group ID.
Так же вместо него можно вставить свой личный Your own ID, в случае, если хотите, чтобы бот отправлял уведомления только вам в личные сообщения. Такой ID можно получить, написав в личные сообщения боту @myidbot команду /getid.
9) Нажимаем “Добавить”. Если все действия выполнены верно, то у вас будет отображаться следующее:
Проверьте “Status”, должно быть “Активировано”.
Тестирование и проверка
Переходим к проверке отправки уведомлений.
1) Заходим “Администрирование”, “Способы оповещений”, находим в списке Telegram и нажимаем “Тест”.
В строку to вставляем Your group ID, нажимаем “Тест”.
Проверяем Telegram аккаунт, если все сделано правильно, то придет тестовое оповещение.
Другие способы оповещения в Zabbix
Zabbix обладает большими возможностями выбора способа оповещений. Вот некоторые из них:
- Brevis.one
- Discord
- Email (HTML)
- Express.ms
- Express.ms
- iLert
- iTop
- Jira
- Jira ServiceDesk
- Jira with CustomFields
- ManageEngine ServiceDesk
- Mattermost
- MS Teams
- Opsgenie
- OTRS
- PagerDuty
- Pushover
- Redmine
- Rocket.Chat
- ServiceNow
- SIGNL4
- Slack
- SMS
- SolarWinds Service Desk
- SysAid
- Telegram
- TOPdesk
- VictorOps
- Zammad
- Zendesk
Если необходимо привязать и настроить оповещения к проблемам определенного устройства или сервера, то посмотрите нашу статью Как автоматизировать мониторинг серверов 1С с помощью Telegram средствами Zabbix Agent.
В статье показан один из способов оповещений, который используется у нас.