Мониторинг 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 агента (активный). В первом варианте агент будет собирать метрики в пассивном режиме. Такие шаблоны обеспечивают одинаковые результаты мониторинга, но используют разные коммуникационные протоколы.
Дальнейшая настройка Zabbix зависит от того, выбираете ли вы шаблон для активных или пассивных проверок агента Zabbix.
Пассивные проверки
Zabbix агент
1. Откройте файл конфигурации агента на машине, где установлен агент.
sudo vi /etc/zabbix/zabbix_agentd.conf
2. Добавьте IP-адрес или DNS-имя вашего сервера Zabbix в параметр Server.
Server=192.0.2.22
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.1: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 server.

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

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

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