Table of Contents

4 Zabbix агент 2 (UNIX)

Zabbix агент 2 - новое поколение Zabbix агента и может использоваться в качестве замены Zabbix агента.

Значения по умолчанию являются умолчаниями демона, но не значениями которые указаны в поставляемых файлах конфигурации.

Поддерживаемые параметры в файле конфигурации Zabbix агента 2 (zabbix_agent2):

Параметр Обязательный Диапазон Умолчание Описание
Alias нет Задает алиас ключу элемента данных. Его можно использовать для замены длинных и сложных ключей элементов данных на более простые и короткие.
Можно добавлять несколько параметров Alias. Разрешено указывать несколько параметров с одинаковым ключом Alias.
Несколько ключей Alias могут ссылаться на один и тот же ключ.
Алиасы можно использовать в HostMetadataItem, но нельзя в HostnameItem параметрах.

Примеры:

1. Получение ID пользователя 'zabbix'.
Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1]
Теперь можно использовать сокращенный ключ zabbix.userid, чтобы получать данные.

2. Получение утилизации CPU с параметрами по умолчанию и с пользовательскими параметрами.
Alias=cpu.util:system.cpu.util
Alias=cpu.util[*]:system.cpu.util[*]
Такая запись позволяет использовать cpu.util ключ для получения утилизации CPU в процентах с параметрами по умолчанию, а также использовать cpu.util[all, idle, avg15] для получения конкретных данных об утилизации CPU.

3. Выполнение нескольких правил низкоуровневого обнаружения, которые обрабатывают одни и те же элементы данных обнаружения.
Alias=vfs.fs.discovery[*]:vfs.fs.discovery
Теперь имеется возможность добавить несколько правил обнаружения, используя vfs.fs.discovery с разными параметрами для каждого правила, например, vfs.fs.discovery[foo], vfs.fs.discovery[bar], и т.д.
BufferSend нет 1-3600 5 Не хранить данные в буфере дольше N секунд.
BufferSize нет 2-65535 100 Максимальное количество значений в буфере памяти. Агент будет отправлять
все собранные данные Zabbix серверу или прокси при заполнении буфера.
ControlSocket нет /tmp/agent.sock Сокет управления, используется при отправке команд управления при помощи '-R' опции.
DebugLevel нет 0-5 3 Задает уровень журналирования:
0 - основная информация о запуске и остановки процессов Zabbix
1 - критичная информация
2 - информация об ошибках
3 - предупреждения
4 - для отладки (записывается очень много информации)
5 - расширенная отладка (записывается еще больше информации)
EnableRemoteCommands нет 0 Разрешены ли удаленные команды с Zabbix сервера.
0 - не разрешены
1 - разрешены

Обратите внимание, этот параметр заменен Plugins.SystemRun.EnableRemoteCommands параметром в 4.4.2.
HostMetadata нет 0-255 символов Опциональный параметр, который задает метаданные узла сети. Метаданные узла сети используются только в процессе автоматической регистрации узлов сети (активный агент).
Агент выдаст ошибку и не запустится, если указанное значение выходит за лимит длины строки или не является UTF-8 строкой.
Если не определено, то значение берётся от HostMetadataItem.
HostMetadataItem нет Опциональный параметр, который задает элемент данных, чтобы затем использовать его для получения метаданных узла сети.
В процессе запроса авторегистрации агент запишет в журнал предупреждающее сообщение, если полученное значение от указанного элемента данных выходит за лимит в 255 символов.
Этот параметр используется только, если HostMetadata не определен.
Поддерживаются UserParameters и алиасы. Поддерживается system.run[] независимо от значения EnableRemoteCommands.
Значение полученное от указанного элемента данных должно являться UTF-8 строкой, в противном случае оно будет игнорироваться.
Hostname нет Задается HostnameItem'ом Уникальное, регистрозависимое имя хоста.
Требуется для активных проверок и должно совпадать с именем узла сети указанном на сервере.
Допустимые символы: буквенно-цифровые, '.', ' ', '_' и '-'.
Максимальная длина: 128
HostnameItem нет system.hostname Элемент данных, который используется для формирования Hostname, если этот параметр не указан. Игнорируется, если задан параметр Hostname.
Не поддерживает UserParameters, счетчики производительности и алиасы, но поддерживает system.run[], независимо от значения EnableRemoteCommands.
Include нет Вы можете включить отдельные файлы или все файлы из папки с файлом конфигурации.
В процессе инсталляции Zabbix будет создана директория для включения файлов в /usr/local/etc, независимо от того изменена она или нет в процессе компиляции.
Для включения только необходимых файлов из указанной папки, поддерживается символ звездочки для поиска совпадения по маске. Например: /абсолютный/путь/к/файлам/конфигурации/*.conf.
Смотрите специальные заметки по поводу ограничений.
ListenIP нет 0.0.0.0 Список IP адресов разделенных запятыми, которые должен слушать агент.
Первый IP адрес отправляется на Zabbix сервер, если удается подключиться к нему, тогда происходит получение списка активных проверок.
ListenPort нет 1024-32767 10050 Агент будет слушать этот порт для подключений с сервера.
LogFile Да, если LogType задан как file, иначе
нет.
/tmp/zabbix_agentd.log Имя файла журнала, если LogType равен значению 'file'.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключение автоматической ротации журнала.
Примечание: Если лимит достигнут и ротация не удалась, по каким-либо причинам, существующий файл журнала очищается и начинается новый.
LogRemoteCommands нет 0 Включение журналирования выполняемых shell команд как предупреждений.
0 - отключено
1 - включено

Обратите внимание, этот параметр заменен Plugins.SystemRun.LogRemoteCommands параметром в 4.4.2.
LogType нет file Задает место куда будут записываться сообщения журнала:
system - запись журнала в syslog,
file - запись журнала в файл указанный в LogFile параметре,
console - вывод журнала в стандартный вывод.
MaxLinesPerSecond нет 1-1000 20 Максимальное количество новых строк в секунду, которые агент будет отправлять Zabbix серверу или прокси при обработке активных проверок 'log' и 'eventlog'.
Указаное значение будет перезаписано параметром 'maxlines',
указанное в ключах элементов данных 'log' и 'eventlog'.
Обратите внимание: Zabbix будет обрабатывать в 10 раз больше новых строк, чем указано в MaxLinesPerSecond при поиске требуемой строки в элементах данных журналов.

Обратите внимание, этот параметр заменен Plugins.Log.MaxLinesPerSecond параметром в 4.4.2.
PidFile нет /tmp/zabbix_agent2.pid Имя PID файла.
Plugins нет Плагины могут иметь один и более специфичных параметров конфигурации в формате:
Plugins.<ИмяПлагина>.<Параметр1>=<значение1>
Plugins.<ИмяПлагина>.<Параметр2>=<значение2>
Plugins.SystemRun.EnableRemoteCommands нет 0 Разрешены ли удаленные команды с Zabbix сервера.
0 - не разрешены
1 - разрешены
Этот параметр поддерживается начиная с 4.4.2 и заменяет EnableRemoteCommands.
Plugins.SystemRun.LogRemoteCommands нет 0 Включение журналирования выполняемых shell команд как предупреждений.
0 - отключено
1 - включено
Этот параметр поддерживается начиная с 4.4.2 и заменяет LogRemoteCommands.
Plugins.Log.MaxLinesPerSecond нет 1-1000 20 Максимальное количество новых строк в секунду, которые агент будет отправлять Zabbix серверу или прокси при обработке активных проверок 'log' и 'eventlog'.
Указаное значение будет перезаписано параметром 'maxlines',
указанное в ключах элементов данных 'log' и 'eventlog'.
Обратите внимание: Zabbix будет обрабатывать в 10 раз больше новых строк, чем указано в MaxLinesPerSecond при поиске требуемой строки в элементах данных журналов.
Этот параметр поддерживается начиная с 4.4.2 и заменяет MaxLinesPerSecond.
RefreshActiveChecks нет 60-3600 120 Как часто обновлять список активных проверок, в секундах.
Обратите внимание, что после неуспешного обновления активных проверок, следующая попытка будет предпринята через 60 секунд.
Server да Список разделенных запятой IP адресов, опционально в CIDR нотации, или имен хостов Zabbix серверов и Zabbix прокси.
Входящие соединения будут приниматься только с хостов указанных в этом списке.
Если включена поддержка IPv6, то '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' обрабатываются одинаково и '::/0' разрешает все IPv4 и IPv6 адреса.
'0.0.0.0/0' можно использовать, чтобы разрешить любой IPv4 адрес.
Обратите внимание, что "IPv4-совместимые IPv6 адреса" (0000::/96 prefix) поддерживаются, но являются устаревшими согласно RFC4291 [en].
Пример: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
Пробелы допускаются.
ServerActive нет Список пар IP:порт (или имя хоста:порт) Zabbix серверов или Zabbix прокси для активных проверок.
Можно указывать несколько адресов разделенных запятыми, чтобы параллельно использовать несколько независимых Zabbix серверов. Пробелы допускаются.
Если порт не указан, то используется порт по умолчанию.
IPv6 адреса должны быть заключены в квадратные скобки, если для хоста указывается порт.
Если порт порт не указан, то квадратные скобки для IPv6 адресов опциональны.
Если параметр не указан, активные проверки будут отключены.
Пример: ServerActive=127.0.0.1:20051,zabbix.example.com,[::1]:30051,::1,[12fc::1]
SourceIP нет Локальный IP адрес для исходящих подключений.
StatusPort нет 1024-32767 Если задае, агент будет слушать указанный порт для HTTP запросов состояния (http://localhost:<порт>/status).
Timeout нет 1-30 3 Тратить не более Timeout секунд при обработке.
TLSAccept да, если заданы TLS сертификат или параметры PSK (даже при незашифрованном соединении), в противном случае - нет Какие принимаются входящие подключения. Используется пассивными проверками. Можно указывать несколько значений, разделенных запятой:
unencrypted - принимать подключения без шифрования (по умолчанию)
psk - принимать подключения с TLS и pre-shared ключом (PSK)
cert - принимать подключения с TLS и сертификатом
TLSCAFile нет Абсолютный путь к файлу, который содержит сертификаты верхнего уровня CA(и) для верификации сертификата узла, используется для зашифрованных соединений между Zabbix компонентами.
TLSCertFile нет Абсолютный путь к файлу, который содержит сертификат или цепочку сертификатов, используется для зашифрованных соединений между Zabbix компонентами.
TLSConnect да, если заданы TLS сертификат или параметры PSK (даже при незашифрованном соединении), в противном случае - нет Как агент должен соединяться с Zabbix сервером или прокси. Используется активными проверками. Можно указать только одно значение:
unencrypted - подключаться без шифрования (по умолчанию)
psk - подключаться, используя TLS и pre-shared ключом (PSK)
cert - подключаться, используя TLS и сертификат
TLSCRLFile нет Абсолютный путь к файлу, который содержит отозванные сертификаты. Этот параметр используется для зашифрованных соединений между Zabbix компонентами.
TLSKeyFile нет Абсолютный путь к файлу, который содержит приватный ключ агента, используется для зашифрованных соединений между Zabbix компонентами.
TLSPSKFile нет Абсолютный путь к файлу, который содержит pre-shared ключ агента, используется для зашифрованных соединений с Zabbix сервером.
TLSPSKIdentity нет Строка идентификатор pre-shared ключа, используется для зашифрованных соединений с Zabbix сервером.
TLSServerCertIssuer нет Разрешенный эмитент сертификата сервера (прокси).
TLSServerCertSubject нет Разрешенная тема сертификата сервера (прокси).
UnsafeUserParameters нет 0,1 0 Разрешить все символы, которые можно передать аргументами в пользовательские параметры.
Не разрешены следующие символы:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Кроме того, не разрешены символы новой строки.
UserParameter нет Пользовательский параметр для мониторинга. Можно указать нескольких пользовательских параметров.
Формат: UserParameter=<ключ>,<shell команда>
Обратите внимание, что команда не должна возвращать только пустую строку или только EOL.
Например: UserParameter=system.test,who|wc -l

Zabbix поддерживает файлы конфигурации только в кодировке UTF-8 без BOM.

Комментарии, начинающиеся с "#", поддерживаются только в начале строки.