5 Zabbix агент (Windows)

Обзор

В этом разделе перечислены параметры, поддерживаемые в файле конфигурации агента Zabbix для Windows (zabbix_agentd.conf).

Обратите внимание, что:

  • Значения по умолчанию отражают значения по умолчанию самого демона, а не значения в поставляемых файлах конфигурации;
  • Zabbix поддерживает файлы конфигурации только в кодировке UTF-8 без BOM;
  • Комментарии, начинающиеся с «#», поддерживаются только в начале строки.

Параметры

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

Примеры:

1. Получение с сервера утилизации файла подкачки в процентах.
Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]
Теперь для получения данных можно использовать сокращённый ключ pg_usage.

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

3. Выполнение нескольких правил низкоуровневого обнаружения, которые обрабатывают одни и те же элементы данных обнаружения.
Alias=vfs.fs.discovery[*]:vfs.fs.discovery
Теперь имеется возможность настроить несколько правил обнаружения, используя vfs.fs.discovery с разными параметрами для каждого правила, например, vfs.fs.discovery[foo], vfs.fs.discovery[bar] и т.д.
AllowKey нет Разрешение выполнения тех ключей элементов данных, которые соответствуют шаблону. Шаблон ключа - это выражение с подстановочным знаком, которое поддерживает символ «*» для соответствия с любым количеством любых символов.
Можно задать несколько правил соответствия ключей в сочетании с DenyKey. Параметры обрабатываются по очереди в соответствии с порядком их появления.
Этот параметр поддерживается с версии Zabbix 5.0.0.
Смотрите также: Ограничение проверок агента.
BufferSend нет 1-3600 5 Не хранить данные в буфере дольше N секунд.
BufferSize нет 2-65535 100 Максимальное количество значений в буфере памяти. При заполнении буфера агент будет отправлять все собранные данные Zabbix серверу или прокси.
DebugLevel нет 0-5 3 Задаёт уровень журналирования:
0 - основная информация о запуске и остановке процессов Zabbix
1 - критичная информация
2 - информация об ошибках
3 - предупреждения
4 - для отладки (записывается очень много информации)
5 - расширенная отладка (записывается ещё больше информации)
DenyKey нет Запрет выполнения тех ключей элементов данных, которые соответствуют шаблону. Шаблон ключа - это выражение с подстановочным знаком, которое поддерживает символ «*» для соответствия с любым количеством любых символов.
Можно задать несколько правил соответствия ключей в сочетании с AllowKey. Параметры обрабатываются по очереди в соответствии с порядком их появления.
Этот параметр поддерживается с версии Zabbix 5.0.0.
Смотрите также: Ограничение проверок агента.
EnableRemoteCommands нет 0 Разрешены ли удалённые команды с Zabbix сервера. Этот параметр устарел, используйте вместо него AllowKey=system.run[*] или DenyKey=system.run[*].
Это внутренний алиас для параметров AllowKey/DenyKey, зависящий от значения:
0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*].
HostInterface нет 0-255 символов Опциональный параметр, который задаёт интерфейс узла сети.
Интерфейс узла сети используется в процессе авторегистрации узла сети.
Агент выдаст ошибку и не запустится, если значение превышает ограничение в 255 символов.
Если не задано, значение будет получено из HostInterfaceItem.
Этот параметр поддерживается с версии Zabbix 4.4.0.
HostInterfaceItem нет Опциональный параметр, который задаёт элемент данных, используемый для получения интерфейса узла сети.
Интерфейс узла сети используется в процессе авторегистрации узла сети.
Во время запроса на авторегистрацию агент будет выводить в журнал предупреждение, если значение, возвращаемое указанным элементом данных, превышает ограничение в 255 символов.
Элемент данных system.run[] поддерживается независимо от значений параметров AllowKey/DenyKey.
Данный параметр используется только когда HostInterface не определён.
Этот параметр поддерживается с версии Zabbix 4.4.0.
HostMetadata нет 0-255 символов Опциональный параметр, который задаёт метаданные узла сети. Метаданные узла сети используются только в процессе автоматической регистрации узлов сети (активный агент).
Если не определено, то значение берётся от HostMetadataItem.
Агент выдаст ошибку и не запустится, если указанное значение превышает ограничение длины строки или не является UTF-8 строкой.
HostMetadataItem нет Опциональный параметр, который задаёт элемент данных Zabbix агента, используемый для получения метаданных узла сети. Этот параметр используется, только если HostMetadata не определён.
Поддерживаются UserParameters, счётчики производительсности (performance counters) и алиасы. Поддерживается system.run[] независимо от значений AllowKey/DenyKey.
Значение HostMetadataItem извлекается на каждую попытку авторегистрации и используется только в процессе автоматической регистрации узлов сети (активный агент).
При запросе на авторегистрацию агент запишет в журнал предупреждение, если полученное от указанного элемента данных значение превышает ограничение в 255 символов.
Значение, возвращаемое указанным элементом данных, должно являться UTF-8 строкой, в противном случае оно будет игнорироваться.
Hostname нет Задаётся параметром HostnameItem Список (через запятую) уникальных, регистрозависимых имён узла сети.
Требуется для активных проверок и должно совпадать с именами узла сети, указанными на сервере. Если не задано, значение будет браться из HostnameItem.
Допустимые символы: буквенно-цифровые, '.', ' ', '_' and '-'.
Максимальная длина: 128 символов на имя узла сети, 2048 символов для всей строки.
HostnameItem нет system.hostname Опциональный параметр, который задаёт элемент данных Zabbix агента, используемый для получения имени узла сети. Этот параметр используется только, если Hostname не определён.
Не поддерживает UserParameters, счётчики производительсности (performance counters) или алиасы, но поддерживает system.run[], независимо от значений AllowKey/DenyKey.
Смотрите также более подробное описание.
Include нет Вы можете включить в файл конфигурации отдельные файлы или все файлы из папки (расположен по умолчанию в папке C:\Program Files\Zabbix Agent, если Zabbix агент устанавливается с использованием установщика пакетов Windows MSI; расположен в папке, указанной во время установки, если Zabbix агент устанавливается как zip-архив). Все включаемые файлы должны иметь корректный синтаксис, в противном случае агент не запустится.
Для включения только необходимых файлов из указанной папки, поддерживается символ звёздочки для поиска совпадения по маске. Например: C:\Program Files\Zabbix Agent\zabbix_agentd.d\*.conf.
Смотрите специальные заметки по поводу ограничений.
ListenBacklog нет 0 - INT_MAX SOMAXCONN Максимальное количество соединений в состоянии ожидания в очереди TCP.
Значение по умолчанию является зашитой в коде константой, которая зависит от системы.
Максимально поддерживаемое значение зависит от системы, слишком большие значения могут быть молча урезаны до «указанного в реализации максимума» ('implementation-specified maximum').
ListenIP нет 0.0.0.0 Список (через запятую) IP адресов, которые должен слушать агент.
ListenPort нет 1024-32767 10050 Агент будет слушать этот порт для подключений с сервера.
LogFile Да, если LogType задан как file, иначе нет. C:\zabbix_agentd.log Имя файла журнала агента.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключение автоматической ротации журнала.
Примечание: Если лимит размера файла достигнут, а ротация по каким-либо причинам не удалась, существующий файл журнала усекается и начинается заново.
LogType нет file Тип вывода журнала:
file - запись журнала в файл, указанный в параметре LogFile,
system - запись журнала в журнал событий Windows (Windows Event Log),
console - запись журнала в стандартный вывод.
Этот параметр поддерживается с версии Zabbix 3.0.0.
LogRemoteCommands нет 0 Включение журналирования выполняемых оболочкой команд как предупреждений.
0 - отключено
1 - включено
MaxLinesPerSecond нет 1-1000 20 Максимальное количество новых строк в секунду, которые агент будет отправлять серверу или прокси при обработке активных проверок 'log', 'logrt' и 'eventlog'.
Указаное значение будет переопределено параметром 'maxlines', указанным в ключах элементов данных 'log', 'logrt' и 'eventlog'.
Обратите внимание: при поиске нужной строки в элементах данных журналов Zabbix будет обрабатывать в 10 раз больше новых строк, чем указано в параметре MaxLinesPerSecond.
PerfCounter нет Определяет новый параметр <имя_параметра>, который является усреднённым значением системного счётчика производительности <путь_к_счётчику_производительности > за указанный период времени <период> (в секундах).
Синтаксис: <имя_параметра>,"<путь_к_счётчику_производительности>",<период>
Например, если хотите получать среднее количество прерываний процессора в секунду за последнюю минуту, вы можете задать новый параметр «interrupts» следующим образом:
PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60
Пожалуйста, обратите внимание на двойные кавычки вокруг пути счётчика производительности.
Имя параметра (interrupts) используется как ключ элемента данных при создании элемента данных.
Образцы для вычисления среднего значения берутся каждую секунду.
Вы можете выполнить «typeperf -qx», чтобы получить список всех счетчиков производительности, доступных в Windows.
PerfCounterEn нет Определяет новый параметр <имя_параметра>, который является усреднённым значением системного счётчика производительности <путь_к_счётчику_производительности > за указанный период времени <период> (в секундах).
Синтаксис: <имя_параметра>,"<путь_к_счётчику_производительности>",<период>
По сравнению с PerfCounter, пути к счётчику производительности должны быть записаны по-английски.
Поддерживается только на Windows Server 2008/Vista и выше.
Например, если хотите получать среднее количество прерываний процессора в секунду за последнюю минуту, вы можете задать новый параметр «interrupts» следующим образом:
PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60
Пожалуйста, обратите внимание на двойные кавычки вокруг пути счётчика производительности.
Имя параметра (interrupts) используется как ключ элемента данных при создании элемента данных.
Образцы для вычисления среднего значения берутся каждую секунду.
Вы можете найти список английских строк путём просмотра следующего ключа реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009.
Этот параметр поддерживается с версий Zabbix 4.0.13 и 4.2.7.
RefreshActiveChecks нет 60-3600 120 Как часто обновлять список активных проверок, в секундах.
Обратите внимание, что после неуспешного обновления активных проверок, следующая попытка будет предпринята через 60 секунд.
Server да, если StartAgents явно не выставлено в 0 Список (через запятую) IP адресов, опционально в CIDR нотации, или DNS имён хостов 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) поддерживаются, но являются устаревшими согласно RFC4291 [en].
Пример: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
Пробелы разрешены.
ServerActive нет (*) Адрес Zabbix сервера/прокси или конфигурация кластера для получения активных проверок.
Адрес Zabbix сервера/прокси - это IP адрес или DNS имя и опционально порт, разделённые двоеточием.
Конфигурация кластера - один или более адресов серверов, разделённые символом «точка с запятой».
Можно указать несколько серверов/кластеров/прокси Zabbix, разделяя их запятой.
От каждого сервера/кластера Zabbix должно быть указано не более одного Zabbix прокси.
Если указан Zabbix прокси, то сервер/кластер Zabbix для этого прокси не должны быть указаны.
Несколько адресов через запятую можно указать для использования нескольких независимых серверов Zabbix параллельно. Пробелы разрешены.
Если порт не указан, используется порт по умолчанию.
Адреса IPv6 должны быть заключены в квадратные скобки, если для этого хоста указан порт.
Если порт не указан, квадратные скобки для адресов IPv6 опциональны.
Если этот параметр не указан, активные проверки отключены.
Пример для Zabbix прокси:
ServerActive=127.0.0.1:10051
Пример для нескольких серверов:
ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
Пример для кластера высокой доступности:
ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3
Пример для конфигурации высокой доступности с двумя кластерами и одним сервером:
ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain
SourceIP нет Локальный IP адрес для:
- исходящих подключений к Zabbix серверу или прокси;
- создания подключений при выполнении некоторых элементов данных (web.page.get, net.tcp.port и т.п.)
StartAgents нет 0-63 (*) 3 Количество экземпляров запускаемых при старте процессов zabbix_agentd, обрабатывающих пассивные проверки.
Если выставлено в 0, отключает пассивные проверки и агент не будет слушать никакие TCP порты.
Timeout нет 1-30 3 Тратить не более Timeout секунд при обработке.
TLSAccept да, если заданы TLS сертификат или параметры PSK (даже при незашифрованном соединении), в противном случае - нет Какие входящие подключения принимать. Используется для пассивных проверок. Можно указывать несколько значений через запятую:
unencrypted - принимать подключения без шифрования (по умолчанию)
psk - принимать подключения с TLS и общим ключом (pre-shared key, PSK)
cert - принимать подключения с TLS и сертификатом
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSCAFile нет Абсолютный путь к файлу, который содержит сертификаты удостоверяющих центров (certificate authority, CA) верхнего уровня для проверки сертификата узла, используется для зашифрованных соединений между компонентами Zabbix.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSCertFile нет Абсолютный путь к файлу, который содержит сертификат агента или цепочку сертификатов, используется для зашифрованных соединений между компонентами Zabbix.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSConnect да, если заданы TLS сертификат или параметры PSK (даже при незашифрованном соединении), в противном случае - нет Как агент должен подключаться к Zabbix серверу или прокси. Используется для активных проверок. Можно указать только одно значение:
unencrypted - подключаться без шифрования (по умолчанию)
psk - подключаться, используя TLS и общий ключ (pre-shared key, PSK)
cert - подключаться, используя TLS и сертификат
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSCRLFile нет Абсолютный путь к файлу, содержащему отозванные сертификаты. Этот параметр используется для зашифрованных коммуникаций между компонентами Zabbix.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSKeyFile нет Абсолютный путь к файлу, содержащему закрытый ключ агента (private key), используется для зашифрованных коммуникаций между компонентами Zabbix.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSPSKFile нет Абсолютный путь к файлу, содержащему общий ключ (pre-shared key) агента. Используется для зашифрованных коммуникаций с сервером Zabbix.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSPSKIdentity нет Строка идентификатора PSK, используется для зашифрованных соединений с Zabbix сервером.
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSServerCertIssuer нет Разрешённый эмитент сертификата сервера (прокси).
Этот параметр поддерживается с версии Zabbix 3.0.0.
TLSServerCertSubject нет Разрешённый субъект сертификата сервера (прокси).
Этот параметр поддерживается с версии Zabbix 3.0.0.
UnsafeUserParameters нет 0-1 0 Разрешить передавать аргументами в пользовательские параметры все символы.
0 - не разрешать
1 - разрешать
Не разрешены следующие символы:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Кроме того, не разрешены символы новой строки.
UserParameter нет Пользовательский параметр для мониторинга. Можно указать несколько пользовательских параметров.
Формат: UserParameter=<ключ>,<shell команда>
Обратите внимание, что команда не должна возвращать только пустую строку или EOL.
Команды оболочки могут иметь относительные пути, если указан параметр UserParameterDir.
Примеры:
UserParameter=system.test,who|wc -l
UserParameter=check_cpu,./custom_script.sh
UserParameterDir нет Путь поиска по умолчанию для команд UserParameter. Если используется, агент перед выполнением команды сменит свою рабочую директорию на указанную здесь. Тем самым, команды UserParameter могут иметь относительный префикс ./ вместо полного пути.
Допустимо только одно значение.
Пример: UserParameterDir=/opt/myscripts

(*) Количество активных серверов, перечисленных в параметре ServerActive, плюс количество запускаемых при старте экземпляров для пассивных проверок, указанное в StartAgents, должно быть меньше 64.

Смотрите также

  1. Различия в конфигурациях Zabbix агента для активных и пассивных проверок, начиная с версии 2.0.0 [en].