Одной из ключевых возможностей Zabbix является отправка уведомлений о событиях, таких как срабатывание триггеров. В этой статье мы подробно рассмотрим, как настроить отправку уведомлений из Zabbix в Telegram с использованием Telegram-бота.

 

Создание бота в Telegram

Первым шагом необходимо создать бота в Telegram, через который будут отправляться уведомления. Для этого выполните следующие действия:

Создание бота:

  1. Откройте Telegram и найдите бота @BotFather.
  2. Начните диалог с командой /start.
  3. Создайте нового бота с помощью команды /newbot.
  4. Следуйте инструкциям: задайте имя бота и его username. После успешного создания вы получите токен, который понадобится для интеграции с Zabbix.

Добавление бота в контакты:

  1. Найдите созданного бота по его username (например, @root_bot) и добавьте его в свои контакты.

Проверка работы бота:

Для проверки отправки сообщений через бота используйте команду в консоли сервера:

curl --header 'Content-Type: application/json' --request 'POST' --data '{"chat_id":"210806260","text":"Проверяю отправку оповещений ботом"}' "https://api.telegram.org/bot<TOKEN>/sendMessage"

В этой команде:

  • 11111111 — это ID вашего аккаунта в Telegram. Чтобы узнать свой ID, добавьте бота @my_id_bot и отправьте ему команду /start.
  • <TOKEN> — токен вашего бота, который вы получили от @BotFather.

Если всё настроено правильно, бот отправит вам сообщение.

Настройка Zabbix для отправки уведомлений в Telegram

Шаг 1: Импорт шаблона оповещений

Если у вас нет шаблона для отправки уведомлений в Telegram, его можно скачать из официального репозитория Zabbix:

  1. Перейдите в раздел /templates/media/telegram/ в репозитории Zabbix.
  2. Скачайте шаблон в формате YAML, соответствующий версии вашего сервера Zabbix.
  3. Импортируйте шаблон в Zabbix через веб-интерфейс: Configuration → Templates → Import.
 

Шаг 2: Настройка токена бота

  1. Откройте шаблон оповещений в Zabbix.
  2. Найдите параметр BOT_TOKEN и укажите токен вашего бота.
  3. Сохраните изменения.

Шаг 3: Настройка текста уведомлений

Zabbix позволяет настраивать шаблоны уведомлений, добавляя макросы и изменяя текст сообщений. Например, можно добавить имя хоста через макрос {HOST.NAME} или использовать emoji для улучшения читаемости.

Пример настройки шаблона:

📢 Оповещение от Zabbix
Хост: {HOST.NAME}
Проблема: {TRIGGER.NAME}
Статус: {TRIGGER.STATUS}

Шаг 4: Настройка действий (Actions)

  1. Перейдите в Configuration → Actions.
  2. Создайте новое действие или отредактируйте существующее.
  3. В разделе Operations добавьте отправку уведомлений через Telegram.
  4. Укажите получателя (ваш Telegram ID или ID группы) и выберите шаблон оповещений.

Шаг 5: Проверка работы уведомлений

  1. Создайте тестовый триггер для проверки. Например, можно использовать элемент данных Number of logged in users из шаблона Linux by Zabbix agent и настроить триггер, который срабатывает при наличии более одного пользователя: last(/Zabbix server/system.users.num)>1
  2. Подключитесь к серверу по SSH дважды, чтобы триггер сработал.
  3. Проверьте, пришло ли уведомление в Telegram.

Отправка уведомлений в группу Telegram

Если вы хотите отправлять уведомления в группу, выполните следующие шаги:

  1. Создайте группу в Telegram.
  2. Добавьте бота в группу.
  3. Узнайте ID группы. Обратите внимание, что ID группы начинается с минуса (например, -123456789).
  4. Укажите этот ID в настройках Zabbix как получателя уведомлений.

Дополнительные улучшения

Кастомизация шаблонов:

Вы можете создавать разные шаблоны для разных типов уведомлений (например, для критических и информационных событий). Это позволяет сделать уведомления более информативными и удобными для восприятия.

Использование emoji:

Добавление emoji в текст уведомлений помогает быстро определить важность события. Например:

  • 🔴 — критическая ошибка,
  • 🟡 — предупреждение,
  • 🟢 — восстановление.

Заключение

Настройка уведомлений Zabbix в Telegram — это удобный способ получать оперативную информацию о состоянии вашей инфраструктуры. Создание бота, настройка шаблонов и интеграция с Zabbix не требуют глубоких технических знаний, но значительно упрощают процесс мониторинга. Следуя этому руководству, вы сможете настроить отправку уведомлений в Telegram и улучшить их читаемость с помощью кастомизации шаблонов.

От root

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *