В пятом ZABBIX появилось много встроенных типов уведомлений. Если раньше была возможность отправить письмо или SMS, то теперь есть вебхуки для уведомлений в Discord, Telegram, Slack, Microsoft Teams, Jira, Redmine и прочее, на скриншоте будет виден полный список. Однако самый первый тип уведомлений, который будет настраивать системный администратор — это Email .
Настройка Email уведомлений в ZABBIX 5 немного изменилась, система стала, на мой взгляд, удобнее и логичнее.
Переходим в раздел Administration > Media types .
Все лишние типы уведомлений переводим в статус Disabled . Для Email устанавливаем (оставляем) статус Enabled .
Нажимаем на Email . Здесь нужно указать параметры почтового сервера для отправки сообщений.
- Name: Email
- Type: Email
- Type: Email.: указываем адрес почтового сервера, через который будем отправлять письма
- SMTP server port: порт для отправки писем, по умолчанию TCP 25
- SMTP helo: текст приветствия, который будем отправлять почтовому серверу, обычно он совпадает с доменом или именем сервера
- SMTP email: адрес отправителя
- Connection security: настройки безопасности соединения
- Authentication: тип аутентификации
- Message format: формат сообщения: текст или HTML
- Description: описание
- Enabled: устанавливаем галку для включения
Указываем настройки своего почтового сервера. Update.
Если проскроллить страничку вправо (этот момент мне не нравится, весь интерфейс заточен на большие мониторы, неудобно), то можно найти ссылку Test , которая позволяет отправить тестовое письмо.
Нажимаю Test .
- Send to: указываем адрес получателя
- Subject: тема письма
- Message: текст письма
Если ZABBIX не сможет отправить сообщение, то получим ошибку » Media type test failed «. В этом случае нужно разбираться, все ли порты открыты, правильно ли указаны настройки почтового сервера, разрешено ли почтовому серверу отправлять письма с IP адреса ZABBIX сервера.
Если ZABBIX сможет отправить сообщение, то увидим » Media type test successful «.
Теперь нужно разрешить ZABBIX серверу отправлять сообщения о проблемах администраторам. Переходим в раздел Configuration > Actions .
Здесь есть предустановленное действие Report problems to Zabbix administrators . Оно отправит уведомления через активные Media всем участникам группы Zabbix administrators . Переводим его в статус Enabled. Можно ткнуть в данное действие и настроить его под свои реалии, можно добавить своё действие, можно для каждого типа уведомления настроить разные действия. Можно выполнять действия для других групп пользователей. Меня пока всё устраивает, я есть в группе Zabbix administrators , так что действие должно для меня сработать.
Теперь нужно настроить свой профиль (или профиль другого пользователя), чтобы включить возможность получения писем. Переходим в раздел User Settings , вкладка Media .
Источник: dzen.ru
Настройка удаленных команд и скриптов в Zabbix
Скрипты в Zabbix могут использоваться для выполнения настраиваемых проверок мониторинга, сбора и обработки данных из внешних источников и автоматизации задач на основе событий мониторинга. Zabbix поддерживает различные языки программирования, включая Bash, Python, Perl и Ruby. В этой статье мы рассмотрим скрипты оповещения Zabbix, как их создавать и как настроить агента Zabbix для работы с ними.
Настройка агента Zabbix для работы с удаленными командами
Сначала нам понадобится настроить агент Zabbix для работы со скриптами:
- Войдите на хост, на котором запущен агент.
- Отредактируйте файл zabbix_agentd.conf:
- Пропишите 1 в параметр “EnableRemoteCommands”, чтобы агент мог выполнять удаленные команды.
- Так же поменяйте “UnsafeUserParameters” на 1, чтобы позволить агенту
- Zabbix выполнять пользовательские скрипты.
- Можно ещё включить “LogRemoteCommands”, если нужно вести журналы.
Перезапустите службу агента Zabbix, чтобы применить изменения.
Создание скриптов оповещения Zabbix
Чтобы создать скрипт оповещения в Zabbix, выполните следующие действия:
Перейдите в раздел “Administration” → “Scripts” в левом меню. Нажмите на кнопку “Create Script” в правом верхнем углу экрана.
Дайте скрипту имя, выберите нужный параметр области действия, заполните необходимую информацию, которая может включать параметры скрипта, аргументы команды или настройки типа медиа, и нажмите “Add”.
Теперь более подробно рассмотрим некоторые из вариантов настройки, такие как область действия и тип скрипта.
Направления скриптов
Скрипты операций действий:
Это скрипты, которые выполняются в рамках операции. Скрипты операций действий выполняются автоматически и могут использоваться для выполнения задач, таких как отправка уведомлений, запуск скриптов на удаленных хостах или обновление данных во внешних системах. Эти скрипты связаны с конкретным действием и выполняются при каждом его срабатывании.
Скрипты действий на хосте:
Это скрипты, которые можно выполнять вручную на конкретном хосте. Они связаны с конкретным хостом и могут использоваться для выполнения задач, таких как перезапуск сервиса, запуск диагностической команды или выполнение резервного копирования. Скрипты действий на хосте выполняются вручную пользователем из веб-интерфейса Zabbix или API и могут быть выполнены только на хосте, с которым они связаны.
Скрипты действий на событии:
Это скрипты, которые можно выполнять вручную на конкретном событии. Они связаны с конкретным событием и могут использоваться для выполнения задач, таких как отправка пользовательского уведомления, обновление системы учета инцидентов или запуск рабочего процесса. Скрипты действий на событии выполняются вручную пользователем из веб-интерфейса Zabbix или API и могут быть выполнены только на событии, с которым они связаны.
Типы скриптов
Скрипты webhook: webhook – это способ для одного приложения предоставлять данные другому приложению в режиме реального времени. Скрипты webhook в Zabbix могут использоваться для отправки данных во внешнюю систему, такую как чат-приложение или платформа управления инцидентами. Чтобы настроить скрипт webhook в Zabbix, вам нужно создать новый тип медиа с соответствующими настройками (например, URL webhook и любые необходимые заголовки или аутентификация), а затем связать этот тип медиа с действием.
Скрипты: Zabbix также поддерживает настраиваемые скрипты, которые могут быть написаны на различных языках программирования (таких как Bash, Perl, Python или PowerShell) и выполняться в различных областях действия в зависимости от того, где предполагается запуск скрипта. Существуют три разных области действия для настраиваемых скриптов, которые определяют, где они могут быть использованы:
- Агент Zabbix
- Прокси-сервер Zabbix
- Сервер Zabbix
Чтобы настроить настраиваемый скрипт в Zabbix, вам нужно создать новый скрипт с соответствующими настройками кода и языка. Затем вы сможете использовать этот скрипт в различных контекстах, таких как в действии или в настраиваемом ключе элемента.
Скрипты SSH: скрипты SSH в Zabbix могут использоваться для выполнения команд или скриптов на удаленном хосте через SSH. Чтобы настроить скрипт SSH в Zabbix, вам нужно создать новую пару ключей SSH и добавить открытый ключ в файл authorized_keys на удаленном хосте. Затем вам нужно создать новый скрипт в Zabbix, который указывает команду для выполнения на удаленном хосте вместе с необходимыми деталями подключения SSH.
Скрипты Telnet: Telnet – это протокол сетевого взаимодействия, который обеспечивает виртуальное терминальное соединение с удаленным хостом. Чтобы настроить скрипт Telnet в Zabbix, вам нужно создать новый элемент Telnet в конфигурации Zabbix (на любом выбранном вами хосте, это проверка без агента, которая может указывать на любой IP-адрес, что может быть полезно для мониторинга хостов, не способных запускать агент), указав имя хоста или IP-адрес удаленного хоста, а также номер порта и любые необходимые учетные данные для входа. Затем вам нужно создать новый скрипт в Zabbix, который указывает команду для выполнения на удаленном хосте.
Скрипты IPMI: IPMI (Intelligent Platform Management Interface) – это стандарт для удаленного управления сервером, который позволяет администраторам мониторить и управлять аппаратными компонентами, такими как блоки питания, вентиляторы и датчики температуры. Скрипты IPMI в Zabbix могут использоваться для выполнения IPMI-команд на удаленном сервере. Чтобы настроить скрипт IPMI в Zabbix, вам нужно включить IPMI на удаленном сервере и настроить необходимые сетевые настройки. Затем вам нужно создать новый скрипт в Zabbix, который указывает IPMI-команду для выполнения вместе с необходимыми деталями подключения.
Примеры скриптов оповещения Zabbix
После того, как вы создали свой скрипт оповещения, вы можете настроить его для выполнения конкретных действий при генерации оповещения. Например, вы можете настроить скрипт для перезапуска сервиса, отправки уведомления по электронной почте или выполнения команды на удаленном сервере.
Вот несколько примеров скриптов оповещения из базовой конфигурации Zabbix:
Обнаружение операционной системы: этот скрипт можно использовать для определения версии операционной системы на хосте
sudo /usr/bin/nmap -O/usr/bin/traceroute
Ping: говорит сам за себя
ping -c 3 ; case $? in [01]) true;; *) false;; esac
Перезапуск сервиса: перезапускает службу на хосте Windows, обнаруженном функцией автообнаружения
Заключение
Zabbix 5 — настраиваем Email уведомления
В пятом ZABBIX появилось много встроенных типов уведомлений. Если раньше была возможность отправить письмо или SMS, то теперь есть вебхуки для уведомлений в Discord, Telegram, Slack, Microsoft Teams, Jira, Redmine и прочее, на скриншоте будет виден полный список. Однако самый первый тип уведомлений, который будет настраивать системный администратор — это Email.
Настройка Email уведомлений в ZABBIX 5 немного изменилась, система стала, на мой взгляд, удобнее и логичнее.
Переходим в раздел Administration > Media types.
Все лишние типы уведомлений переводим в статус Disabled. Для Email устанавливаем (оставляем) статус Enabled.
Нажимаем на Email. Здесь нужно указать параметры почтового сервера для отправки сообщений.
- Name: Email.
- Type: Email
- SMTP server: указываем адрес почтового сервера, через который будем отправлять письма
- SMTP server port: порт для отправки писем, по умолчанию TCP 25
- SMTP helo: текст приветствия, который будем отправлять почтовому серверу, обычно он совпадает с доменом или именем сервера
- SMTP email: адрес отправителя
- Connection security: настройки безопасности соединения
- Authentication: тип аутентификации
- Message format: формат сообщения: текст или HTML.
- Description: описание
- Enabled: устанавливаем галку для включения
Указываем настройки своего почтового сервера. Update.
Если проскроллить страничку вправо (этот момент мне не нравится, весь интерфейс заточен на большие мониторы, неудобно), то можно найти ссылку Test, которая позволяет отправить тестовое письмо.
Нажимаю Test.
- Send to: указываем адрес получателя
- Subject: тема письма
- Message: текст письма
Test.
Если ZABBIX не сможет отправить сообщение, то получим ошибку «Media type test failed». В этом случае нужно разбираться, все ли порты открыты, правильно ли указаны настройки почтового сервера, разрешено ли почтовому серверу отправлять письма с IP адреса ZABBIX сервера.
Если ZABBIX сможет отправить сообщение, то увидим «Media type test successful».
Теперь нужно разрешить ZABBIX серверу отправлять сообщения о проблемах администраторам. Переходим в раздел Configuration > Actions.
Здесь есть предустановленное действие Report problems to Zabbix administrators. Оно отправит уведомления через активные Media всем участникам группы Zabbix administrators. Переводим его в статус Enabled. Можно ткнуть в данное действие и настроить его под свои реалии, можно добавить своё действие, можно для каждого типа уведомления настроить разные действия.
Можно выполнять действия для других групп пользователей. Меня пока всё устраивает, я есть в группе Zabbix administrators, так что действие должно для меня сработать.
Теперь нужно настроить свой профиль (или профиль другого пользователя), чтобы включить возможность получения писем. Переходим в раздел User Settings, вкладка Media.
Ни одного Media типа нет. Нажимаем Add.
- Type: Email
- Send to: email-адрес, на который слать письма, может быть несколько.
- When active: время активности, дни недели и время, в которое можно отправлять сообщения
- Use if severity: какие типы сообщения (по степени важности) отправлять
- Enabled: ставим галку
Add.
Минимальные настройки для получения уведомлений на почту заданы.
Источник: internet-lab.ru