11 Агент Zabbix в Microsoft Windows
Настройка агента
Обе версии агентов Zabbix работают как служба Windows. Для Zabbix agent 2 замените agentd на agent2 в приведенных ниже инструкциях.
Вы можете запустить один экземпляр Zabbix agent или несколько экземпляров агента на узле сети Microsoft Windows. Один экземпляр может использовать либо:
- файл конфигурации по умолчанию, расположенный в том же каталоге, что и двоичный файл агента;
- файл конфигурации, указанный в командной строке.
В случае нескольких экземпляров каждый экземпляр агента должен иметь собственный файл конфигурации (один из экземпляров может использовать файл конфигурации по умолчанию).
Пример файла конфигурации доступен в исходном архиве Zabbix как:
conf/zabbix_agentd.confдля Zabbix agent;conf/zabbix_agent2.confдля Zabbix agent2.
Если вы хотите установить Zabbix agent/agent 2 для Windows как службу из архива без явного указания файла конфигурации, то перед установкой агента:
conf/zabbix_agentd.confследует вручную скопировать в каталог, куда будет установлен zabbix_agentd.exe;conf/zabbix_agent2.confи каталогconf/zabbix_agent2.dследует вручную скопировать в каталог, куда будет установлен zabbix_agent2.exe.
См. параметры файла конфигурации для получения подробной информации о настройке агента Zabbix для Windows.
Параметр Hostname
Чтобы выполнять активные проверки на узле сети, агент Zabbix должен иметь заданное имя узла. Более того, значение hostname, установленное на стороне агента, должно в точности совпадать с "именем узла", настроенным для узла сети во веб-интерфейсе.
Значение hostname на стороне агента можно задать либо параметром Hostname, либо HostnameItem в файле конфигурации агента - либо будут использованы значения по умолчанию, если ни один из этих параметров не указан.
Значение по умолчанию для параметра HostnameItem - это значение, возвращаемое ключом агента "system.hostname". Для Windows он возвращает результат функции gethostname(), которая запрашивает у поставщиков пространств имен определение локального имени узла. Если ни один поставщик пространств имен не отвечает, возвращается имя NetBIOS.
Значение по умолчанию для Hostname - это значение, возвращаемое параметром HostnameItem. Таким образом, если оба этих параметра не указаны, фактическим hostname будет имя узла NetBIOS; агент Zabbix будет использовать имя узла NetBIOS для получения списка активных проверок от сервера Zabbix и отправки результатов на него.
Ключ "system.hostname" поддерживает два необязательных параметра - type и transform.
Type определяет тип имени, которое должен возвращать элемент данных:
- netbios (по умолчанию) - возвращает имя узла NetBIOS, которое ограничено 15 символами и содержит только символы в ВЕРХНЕМ РЕГИСТРЕ;
- host - с учетом регистра, возвращает полное, фактическое имя узла Windows (без домена);
- shorthost - возвращает часть имени узла до первой точки. Возвращает полную строку, если имя не содержит точки.
- fqdn - возвращает полное доменное имя (без завершающей точки).
Transform позволяет задать дополнительное правило преобразования имени узла:
- none (по умолчанию) - использовать исходный регистр букв;
- lower - преобразовать текст в нижний регистр.
Таким образом, чтобы упростить настройку файла zabbix_agentd.conf и сделать ее унифицированной, можно использовать три разных подхода:
- Оставить параметры Hostname или HostnameItem не заданными, и агент Zabbix будет использовать имя узла NetBIOS в качестве hostname.
- Оставить параметр Hostname не заданным и определить HostnameItem
следующим образом:
HostnameItem=system.hostname[host] - чтобы агент Zabbix использовал полное, фактическое (с учетом регистра) имя узла Windows в качестве hostname.
HostnameItem=system.hostname[shorthost,lower] - чтобы агент Zabbix использовал только часть имени узла до первой точки, преобразованную в нижний регистр.
HostnameItem=system.hostname[fqdn] - чтобы агент Zabbix использовал полное доменное имя в качестве hostname.
Имя узла также используется как часть имени службы Windows, которое применяется
для установки, запуска, остановки и удаления службы Windows. Например, если в
файле конфигурации агента Zabbix указано Hostname=Windows_db_server, то
агент будет установлен как служба Windows "Zabbix Agent [Windows_db_server]".
Следовательно, чтобы для каждого экземпляра агента Zabbix было разное имя
службы Windows, каждый экземпляр должен использовать разное имя узла.
Установка агента как службы Windows
Перед установкой агента вручную скопируйте conf/zabbix_agentd.conf в
каталог, где будет установлен zabbix_agentd.exe.
Чтобы установить один экземпляр Zabbix агент с файлом конфигурации по умолчанию:
zabbix_agentd.exe --install
В 64-разрядной системе для корректной работы всех проверок, связанных с запущенными 64-разрядными процессами, требуется 64-разрядная версия Zabbix агента.
Если вы хотите использовать файл конфигурации, отличный от файла по умолчанию, для установки службы следует использовать следующую команду:
zabbix_agentd.exe --config <your_configuration_file> --install
Необходимо указать полный путь к файлу конфигурации.
Несколько экземпляров Zabbix агента можно установить как службы следующим образом:
zabbix_agentd.exe --config <configuration_file_for_instance_1> --install --multiple-agents
zabbix_agentd.exe --config <configuration_file_for_instance_2> --install --multiple-agents
...
zabbix_agentd.exe --config <configuration_file_for_instance_N> --install --multiple-agents
Установленная служба теперь должна отображаться в Панели управления.
Запуск агента
Чтобы запустить службу агента, вы можете использовать Панель управления или сделать это из командной строки.
Чтобы запустить один экземпляр Zabbix агента с файлом конфигурации по умолчанию:
zabbix_agentd.exe --start
Чтобы запустить один экземпляр Zabbix агента с другим файлом конфигурации:
zabbix_agentd.exe --config <your_configuration_file> --start
Чтобы запустить один из нескольких экземпляров Zabbix агента:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents
Остановка агента
Чтобы остановить службу агента, вы можете использовать Панель управления или сделать это из командной строки.
Чтобы остановить один экземпляр Zabbix агента, запущенный с файлом конфигурации по умолчанию:
zabbix_agentd.exe --stop
Чтобы остановить один экземпляр Zabbix агента, запущенный с другим файлом конфигурации:
zabbix_agentd.exe --config <your_configuration_file> --stop
Чтобы остановить один из нескольких экземпляров Zabbix агента:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Удаление службы Windows агента
Чтобы удалить один экземпляр агента Zabbix, используя файл конфигурации по умолчанию:
zabbix_agentd.exe --uninstall
Чтобы удалить один экземпляр агента Zabbix, используя файл конфигурации не по умолчанию:
zabbix_agentd.exe --config <your_configuration_file> --uninstall
Чтобы удалить несколько экземпляров агента Zabbix из служб Windows:
zabbix_agentd.exe --config <configuration_file_for_instance_1> --uninstall --multiple-agents
zabbix_agentd.exe --config <configuration_file_for_instance_2> --uninstall --multiple-agents
...
zabbix_agentd.exe --config <configuration_file_for_instance_N> --uninstall --multiple-agents
Ограничения
Агент Zabbix для Windows не поддерживает нестандартные конфигурации Windows, в которых процессоры распределены по NUMA-узлам неравномерно. Если логические процессоры распределены неравномерно, то метрики производительности ЦП могут быть недоступны для некоторых процессоров. Например, если имеется 72 логических процессора и 2 NUMA-узла, то на каждом узле должно быть по 36 процессоров.