1 Мониторинг Linux с помощью Zabbix агента
Введение
На этой странице вы узнаете о шагах, необходимых для запуска базового мониторинга машин Linux с помощью Zabbix. Шаги, описанные в этом руководстве, можно применить к любой операционной системе на базе Linux.
Для кого это руководство
Это руководство предназначено для новых пользователей Zabbix и содержит минимальный набор шагов, необходимых для включения базового мониторинга вашей машины Linux. Если вы ищете возможности глубокой настройки или вам требуется более продвинутая конфигурация, см. раздел Конфигурация руководства Zabbix.
Предварительные требования
Прежде чем продолжить работу с этим руководством, необходимо загрузить и установить сервер Zabbix и веб-интерфейс Zabbix в соответствии с инструкциями для вашей ОС.
Установка агента Zabbix
Агент Zabbix — это процесс, отвечающий за сбор данных.
Проверьте версию вашего сервера Zabbix:
zabbix_server -V
Установите агент Zabbix той же версии (рекомендуется) на Linux-машину, которую вы хотите отслеживать. В зависимости от ваших потребностей мониторинга это может быть та же машина, на которой установлен сервер Zabbix, или совершенно другая машина.
Выберите наиболее подходящий способ установки:
-
Запуск в виде Docker-контейнера — см. список доступных образов в репозитории Zabbix Docker.
-
Установка из пакетов Zabbix (доступно для Alma Linux, CentOS, Debian, Oracle Linux, Raspberry Pi OS, RHEL, Rocky Linux, SUSE Linux Enterprise Server, Ubuntu).
-
Компиляция из исходных кодов.
Настройка Zabbix для мониторинга
Zabbix агент может собирать метрики в активном или пассивном режиме (одновременно).
Пассивная проверка — это простой запрос данных. Zabbix сервер или прокси запрашивает некоторые данные (например, загрузку CPU), а Zabbix агент отправляет результат обратно на сервер. Активные проверки требуют более сложной обработки. Агент должен сначала получить с сервера(ов) список элементов данных для независимой обработки, а затем массово отправить данные обратно. Подробнее см. в разделе Пассивные и активные проверки агента.
Шаблоны мониторинга, предоставляемые Zabbix, обычно предлагают два варианта — шаблон для Zabbix агента и шаблон для Zabbix агента (active). В первом случае агент будет собирать метрики в пассивном режиме. Такие шаблоны обеспечивают идентичные результаты мониторинга, но используют разные протоколы обмена данными.
Дальнейшая настройка Zabbix зависит от того, выберете ли вы шаблон для активных или пассивных проверок Zabbix агента.
Пассивные проверки
Агент Zabbix
1. Откройте файл конфигурации агента на машине, где установлен агент.
sudo vi /etc/zabbix/zabbix_agentd.conf
2. Добавьте IP-адрес или DNS-имя (и при необходимости порт) вашего сервера Zabbix в параметр server. Например:
Server=192.0.2.0:10051
Агент Zabbix будет использовать этот адрес, чтобы принимать входящие соединения только от указанных серверов Zabbix или прокси для получения данных.
3. Перезапустите агент Zabbix.
systemctl restart zabbix-agent
Веб-интерфейс Zabbix
1. Войдите в веб-интерфейс Zabbix.
2. Создайте узел сети в веб-интерфейсе Zabbix.
- В поле Host name введите имя узла сети (например, "Linux server").
- В поле Templates введите или выберите шаблон "Linux by Zabbix agent", который будет привязан к узлу сети.
- В поле Host groups введите или выберите группу узлов сети (например, "Linux servers").
- В параметре Interfaces добавьте интерфейс Agent и укажите IP-адрес или DNS-имя Linux-машины, на которой установлен агент.

3. Нажмите Add, чтобы добавить узел сети. Этот узел сети будет представлять отслеживаемую Linux-машину.
Активные проверки
Агент Zabbix
1. Откройте файл конфигурации агента на машине, где установлен агент.
sudo vi /etc/zabbix/zabbix_agentd.conf
2. Добавьте IP-адрес или DNS-имя (и необязательный порт) вашего сервера Zabbix в параметр ServerActive. Например:
ServerActive=192.0.2.0:10051
Агент Zabbix будет использовать этот адрес для подключения к порту trapper сервера Zabbix (по умолчанию: 10051) и запроса данных конфигурации для активных проверок.
3. Укажите параметр Hostname, который должен совпадать с именем узла сети, заданным в веб-интерфейсе Zabbix. В нашем примере это:
Hostname=Linux server
Значение Hostname должно совпадать, потому что для активных проверок агент Zabbix использует его для получения правильной конфигурации узла сети с сервера. В частности, агент инициирует соединение с сервером и идентифицирует себя с помощью значения Hostname. Затем сервер предоставляет конфигурацию мониторинга для этого узла сети. Если эти значения различаются, агент не получит соответствующую конфигурацию, что приведет к отсутствию метрик или проблемам с мониторингом.
4. Перезапустите агент Zabbix.
systemctl restart zabbix-agent
Веб-интерфейс Zabbix
1. Войдите в веб-интерфейс Zabbix.
2. Создайте узел сети в веб-интерфейсе Zabbix.
- В поле Host name введите имя узла сети (например, "Linux server"), которое соответствует значению параметра Hostname, ранее заданному в файле конфигурации агента.
- В поле Templates введите или выберите шаблон "Linux by Zabbix agent active", который будет привязан к узлу сети.
- В поле Host groups введите или выберите группу узлов сети (например, "Linux servers").
- Оставьте Interfaces неопределённым; интерфейс не требуется для активных проверок, поскольку агент сам инициирует соединение с сервером, а не ожидает соединения от сервера.

3. Нажмите Add, чтобы добавить узел сети. Этот узел сети будет представлять контролируемую Linux-машину.
Просмотр собранных метрик
Поздравляем! На этом этапе Zabbix уже отслеживает вашу Linux-машину.
Чтобы просмотреть собранные метрики, откройте Monitoring->Hosts раздел меню и нажмите Latest data рядом с узлом сети.

В результате откроется список всех последних метрик, собранных с узла сети Linux-сервера.

Настройка оповещений о проблемах
Zabbix может уведомлять вас о проблеме в вашей инфраструктуре различными способами. В этом руководстве приведены шаги по настройке отправки оповещений по электронной почте.
1. Перейдите в Настройки пользователя -> Профиль, откройте вкладку Способы оповещений и добавьте свой адрес электронной почты.

2. Следуйте руководству Получение уведомлений о проблемах.
В следующий раз, когда Zabbix обнаружит проблему, вы должны получить оповещение по электронной почте.
Проверьте вашу конфигурацию
В Linux вы можете сымитировать высокую нагрузку на CPU и в результате получить оповещение о проблеме, выполнив:
cat /dev/urandom | md5sum
Вам может потребоваться запустить несколько процессов md5sum, чтобы нагрузка на CPU превысила пороговое значение.
Когда Zabbix обнаружит проблему, она появится в разделе Мониторинг->Проблемы.

Если оповещения настроены, вы также получите уведомление о проблеме.
См. также:
- Создание элемента данных - как начать мониторинг дополнительных метрик (пользовательский мониторинг без шаблонов).
- Элементы данных агента Zabbix, Элементы данных агента Zabbix для Windows - полный список метрик, которые можно отслеживать с помощью агента Zabbix в Windows.
- Эскалации проблем - как создавать многошаговые сценарии оповещений (например, сначала отправить сообщение системному администратору, затем, если проблема не будет устранена в течение 45 минут, отправить сообщение менеджеру центра обработки данных).
- Установка из пакетов - как установить компоненты Zabbix с использованием официальных пакетов RPM и DEB для различных дистрибутивов Linux, обеспечивая доступ к новейшим возможностям и исправлениям ошибок.