1 Мониторинг Linux с помощью агента Zabbix
Introduction
This page walks you through the steps required to start basic monitoring of Linux machines with Zabbix. The steps described in this tutorial can be applied to any Linux-based operating system.
Who this guide is for
This guide is designed for new Zabbix users and contains the minimum set of steps required to enable basic monitoring of your Linux machine. If you are looking for deep customization options or require more advanced configuration, see Configuration section of Zabbix manual.
Prerequisites
Before proceeding with this guide, you need to download and install Zabbix server and Zabbix frontend according to the instructions for your OS.
Установка Zabbix agent
Zabbix agent — это процесс, отвечающий за сбор данных.
Проверьте версию вашего сервера Zabbix:
zabbix_server -V
Установите Zabbix agent той же версии (рекомендуется) на 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.
Passive checks
Агент Zabbix
1. Откройте файл конфигурации агента на машине, где установлен агент.
sudo vi /etc/zabbix/zabbix_agentd.conf
2. Добавьте IP-адрес или DNS-имя (и необязательный порт) вашего сервера Zabbix в параметр server. Например:
Server=192.0.2.1: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-машину.
Active checks
Агент 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 menu section и нажмите Latest data рядом с узлом сети.

Это действие откроет список всех последних метрик, собранных с узла сети Linux server.

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

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

Если оповещения настроены, вы также получите уведомление о проблеме.
See also:
- Creating an item - how to start monitoring additional metrics (custom monitoring without templates).
- Zabbix agent items, Zabbix agent items for Windows - full list of metrics you can monitor using Zabbix agent on Windows.
- Problem escalations - how to create multi-step alert scenarios (e.g., first send message to the system administrator, then, if a problem is not resolved in 45 minutes, send message to the data center manager).
- Installation from packages - how to install Zabbix components using official RPM and DEB packages for various Linux distributions, ensuring access to the latest features and bug fixes.