2. Агент
Обзор
Агент Zabbix развертывается на контролируемом объекте для активного мониторинга локальных ресурсов и приложений (жестких дисков, памяти, статистики процессора и т. д.).
Агент собирает эксплуатационную информацию локально и передает данные на сервер Zabbix для дальнейшей обработки. В случае сбоев (например, если жесткий диск заполнен или аварийно завершился процесс службы), сервер Zabbix может активно оповестить администраторов конкретной машины, которая сообщила о сбое.
Агенты Zabbix отличаются высокой эффективностью благодаря использованию нативных системных вызовов для сбора статистической информации.
На узле сети можно запустить несколько экземпляров агента.
Пассивные и активные проверки
Агенты Zabbix могут выполнять пассивные и активные проверки:
- Пассивные проверки - агент Zabbix отвечает на запрос от сервера Zabbix (или прокси). Например, сервер запрашивает данные (например, загрузку CPU), а агент возвращает результат.
- Активные проверки - агент Zabbix собирает и отправляет данные, не ожидая запроса от сервера Zabbix (или прокси). Сначала он получает список элементов мониторинга от сервера (загрузка CPU, доступная память и т. д.), затем собирает необходимые данные и периодически отправляет новые значения обратно.
Тип проверки агента настраивается путем выбора соответствующего типа элемента данных. Агент Zabbix обрабатывает элементы данных типа Zabbix agent или Zabbix agent (active).
Поддерживаемые платформы
Список поддерживаемых платформ приведён на странице Требования.
Агент в системах Unix-подобного типа
Агент Zabbix в системах Unix-подобного типа запускается на узле сети, который находится под мониторингом.
Установка
Агент Zabbix можно установить в системах на базе Linux одним из следующих способов:
- Пакеты Zabbix — выберите компонент Agent (после выбора версии Zabbix, дистрибутива ОС и версии ОС) и следуйте приведенным инструкциям.
- Исходный код Zabbix — загрузите исходные файлы и скомпилируйте агент Zabbix, настроив исходный код с параметром
--enable-agent.
В целом, 32-разрядные агенты Zabbix будут работать в 64-разрядных системах, но в некоторых случаях это может не сработать.
Предварительно скомпилированные двоичные файлы агента Zabbix доступны для загрузки для macOS, IBM AIX, FreeBSD, OpenBSD и Solaris. Устаревшие двоичные файлы, совместимые с текущей версией сервера/прокси Zabbix, доступны для NetBSD и HP-UX.
Если установлен из пакета
Агент Zabbix работает как процесс-демон. Агент можно запустить, выполнив:
systemctl start zabbix-agent
Это будет работать в большинстве систем GNU/Linux. В других системах может потребоваться выполнить:
/etc/init.d/zabbix-agent start
Чтобы остановить, перезапустить или проверить состояние агента Zabbix, используйте следующие команды:
systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
Запуск вручную
Вы можете запустить агент Zabbix, найдя исполняемый файл zabbix_agentd и запустив его напрямую; например:
zabbix_agentd
Агент на Windows системах
Zabbix агент на Windows работает как служба Windows.
Установка
Агент Zabbix можно установить в Windows одним из следующих способов:
- Предварительно скомпилированные бинарные файлы агента Zabbix — загрузите пакет установщика MSI агента Zabbix и следуйте инструкциям на странице Установка агента Windows из MSI.
- Исходный код Zabbix — загрузите исходные файлы и следуйте инструкциям на странице Сборка агента Zabbix в Windows.
Дополнительные сведения об установке агента Zabbix (из ZIP-архива) в качестве службы Windows см. на странице Агент Zabbix в Microsoft Windows.
Параметры
Следующие параметры командной строки можно использовать с агентом Zabbix:
| Parameter | Description |
|---|---|
| Агент UNIX и Windows | |
-c --config <config-file> |
Путь к файлу конфигурации. Этот параметр можно использовать, чтобы указать файл конфигурации, отличный от файла по умолчанию. |
-f --foreground |
Запустить агент Zabbix в режиме переднего плана (по умолчанию: true). |
-p --print |
Вывести известные элементы данных и завершить работу. Обратите внимание: чтобы также вернуть результаты пользовательского параметра, необходимо указать файл конфигурации (если он не находится в расположении по умолчанию). |
-t --test <item key> |
Проверить указанный элемент данных и завершить работу. Обратите внимание: чтобы также вернуть результаты пользовательского параметра, необходимо указать файл конфигурации (если он не находится в расположении по умолчанию). |
-T --test-config |
Проверить файл конфигурации и завершить работу. |
-h --help |
Показать справочную информацию. |
-V --version |
Показать номер версии. |
| Только агент UNIX | |
-R --runtime-control <option> |
Выполнить административные функции. См. управление во время выполнения. |
| Только агент Windows | |
-m --multiple-agents |
Использовать несколько экземпляров агента (с параметрами -i, -d, -s, -x).Чтобы различать имена служб экземпляров, каждое имя службы будет включать значение Hostname из указанного файла конфигурации. |
-S --startup-type <value> |
Установить тип запуска службы агента Zabbix для Windows. Допустимые значения:automatic - (по умолчанию) запускать службу автоматически при старте Windows;delayed - отложить запуск службы до завершения запуска служб, стартующих автоматически (доступно в Windows Server 2008/Vista и более поздних версиях);manual - запускать службу вручную (пользователем или приложением);disabled - отключить службу, чтобы ее нельзя было запустить пользователем или приложением.Этот параметр можно использовать вместе с параметром -i или отдельно, чтобы изменить тип запуска уже установленной службы. |
-i --install |
Установить агент Zabbix для Windows как службу. |
-d --uninstall |
Удалить службу агента Zabbix для Windows. |
-s --start |
Запустить службу агента Zabbix для Windows. |
-x --stop |
Остановить службу агента Zabbix для Windows. |
Примеры использования параметров командной строки:
- Вывод всех встроенных элементов данных агента со значениями.
- Проверка пользовательского параметра с ключом
mysql.ping, определенного в указанном файле конфигурации. - Установка службы Zabbix Agent для Windows с использованием пути по умолчанию к файлу конфигурации
C:\\Program Files\\Zabbix Agent\\zabbix_agentd.conf. - Установка службы Zabbix Agent [Hostname] для Windows с использованием файла конфигурации
zabbix_agentd.conf, расположенного в той же папке, что и исполняемый файл агента, и обеспечение уникальности имени службы путем добавления к нему значения Hostname из файла конфигурации. - Изменение типа запуска установленной службы Zabbix Agent для Windows с использованием файла конфигурации
zabbix_agentd.conf, расположенного в той же папке, что и исполняемый файл агента.
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
Управление во время работы
С помощью параметров управления во время работы можно изменить уровень журналирования процессов агента.
| Option | Description | Target |
|---|---|---|
log_level_increase[=<target>] |
Увеличить уровень журналирования. Если цель не указана, это затронет все процессы. |
Цель можно указать как: тип процесса - все процессы указанного типа (например, listener)См. все типы процессов агента. тип процесса,N - тип процесса и номер (например, listener,3)pid - идентификатор процесса ( 1 to 65535). Для больших значений указывайте цель как 'тип процесса,N'. |
log_level_decrease[=<target>] |
Уменьшить уровень журналирования. Если цель не указана, это затронет все процессы. |
|
userparameter_reload |
Перезагрузить значения параметров UserParameter и Include из текущего файла конфигурации. |
Примеры:
- Увеличение уровня журналирования всех процессов
- Увеличение уровня журналирования третьего процесса listener
- Увеличение уровня журналирования процесса с PID 1234
- Уменьшение уровня журналирования всех процессов active checks
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"
Управление во время работы не поддерживается в OpenBSD, NetBSD и Windows.
Типы процессов агента
Типы процессов агента следующие:
active checks- процесс для выполнения активных проверок;collector- процесс для сбора данных;listener- процесс для прослушивания пассивных проверок.
Файл журнала агента можно использовать для наблюдения за этими типами процессов.
Файл журнала агента создается с правами на чтение и запись только для владельца файла. Кроме того, файл доступен для чтения группе владельца. Все остальные права запрещены.
Пользователь процесса
Агент Zabbix в UNIX предназначен для работы от имени пользователя, не являющегося root. Он будет запускаться от имени того пользователя, не являющегося root, от имени которого был запущен. Таким образом, вы можете запускать агент от имени любого пользователя, не являющегося root, без каких-либо проблем.
Если вы попытаетесь запустить его от имени root, он переключится на жестко заданного пользователя zabbix, который должен присутствовать в вашей системе.
Вы можете запускать агент от имени root только в том случае, если соответствующим образом измените параметр AllowRoot в файле конфигурации агента.
Файл конфигурации
Путь по умолчанию к файлу конфигурации:
- В UNIX по умолчанию используется
/usr/local/etc/zabbix_agentd.confили путь, заданный переменными на этапе компиляции--sysconfdirили--prefix. - В Windows по умолчанию используется
C:\\Program Files\\Zabbix Agent\\zabbix_agentd.conf.
Если на узле сети запущен один экземпляр агента, он может использовать файл конфигурации по умолчанию или файл конфигурации, указанный в командной строке. В случае нескольких экземпляров каждый экземпляр агента должен иметь собственный файл конфигурации (один из экземпляров может использовать файл конфигурации по умолчанию).
Подробнее о настройке агента Zabbix см. параметры файла конфигурации для агента Zabbix для Unix или агента Zabbix для Windows.
Локаль
Обратите внимание, что агенту требуется локаль UTF-8, чтобы некоторые текстовые элементы данных агента могли возвращать ожидаемое содержимое. В большинстве современных Unix-подобных систем локаль UTF-8 используется по умолчанию, однако существуют системы, где её необходимо задать явно.
Код выхода
Агент Zabbix возвращает 0 в случае успешного завершения и 1 в случае ошибки.