Мониторинг Linux с помощью агента Zabbix
Введение
На этой странице вы пройдете через шаги, необходимые для начала базового мониторинга машин Linux с помощью Zabbix. Описанные в этом руководстве шаги можно применить к любой операционной системе на базе Linux.
Для кого предназначено это руководство
Это руководство предназначено для новых пользователей Zabbix и содержит минимальный набор шагов, необходимых для включения базового мониторинга вашего компьютера под Linux. Если вам нужны возможности глубокой настройки или более расширенная конфигурация, см. раздел Configuration руководства 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.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 agent
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
menu section и нажмите 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 agent, Элементы данных Zabbix agent для Windows - полный список метрик, которые можно отслеживать с помощью агента Zabbix в Windows.
- Эскалации проблем - как создавать многошаговые сценарии оповещений (например, сначала отправить сообщение системному администратору, а затем, если проблема не решена в течение 45 минут, отправить сообщение менеджеру центра обработки данных).
- Установка из пакетов - как устанавливать компоненты Zabbix с помощью официальных пакетов RPM и DEB для различных дистрибутивов Linux, обеспечивая доступ к последним возможностям и исправлениям ошибок.