11 Агент Zabbix в Microsoft Windows
Настройка агента
Оба поколения агентов Zabbix работают в качестве службы Windows (Windows service). Для Zabbix агента 2, замените agentd на agent2 в инструкциях ниже.
Вы можете запустить один экземпляр Zabbix агента или несколько экземпляров агента на хосте Microsoft Windows. Одиночный экземпляр может использовать одно из:
- файл конфигурации по умолчанию, расположенный в той же папке, что и бинарный файл агента;
- файл конфигурации, указанный в командной строке.
В случае нескольких экземпляров каждый экземпляр агента должен иметь свой собственный файл конфигурации (один из экземпляров может использовать файл конфигурации по умолчанию).
Пример файла конфигурации доступен в архиве с исходными кодами Zabbix в виде файла:
conf/zabbix_agentd.win.confдля Zabbix агента;conf/zabbix_agent2.confдля Zabbix агента2.
Если вы хотите установить Zabbix агента/агента 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 или HostnameItem в файле конфигурации агента - либо используются значения по умолчанию, если ни один из этих параметров не указан.
Значением по умолчанию для параметра HostnameItem является значение, возвращаемое ключом агента "system.hostname". В Windows этот ключ возвращает результат функции gethostname(), которая обращается к поставщикам пространства имен для определения локального имени узла сети. Если ни один поставщик пространства имен не отвечает, возвращается имя NetBIOS.
Значением по умолчанию для Hostname является значение, возвращаемое параметром HostnameItem. Таким образом, если оба параметра не указаны, фактическим именем узла сети будет имя NetBIOS; агент Zabbix будет использовать имя узла сети NetBIOS для получения списка активных проверок с сервера Zabbix и отправки ему результатов.
Ключ "system.hostname" поддерживает два необязательных параметра - type и transform.
Параметр type определяет тип имени, которое должен возвращать элемент данных:
- netbios (по умолчанию) - возвращает имя узла сети NetBIOS, ограниченное 15 символами и состоящее только из символов ВЕРХНЕГО регистра;
- host - с учетом регистра, возвращает полное фактическое имя узла сети Windows (без домена);
- shorthost - возвращает часть имени узла сети до первой точки. Если имя не содержит точки, возвращается полная строка.
- fqdn - возвращает полное доменное имя (Fully Qualified Domain Name) без завершающей точки.
Параметр transform позволяет указать дополнительное правило преобразования имени узла сети:
- none (по умолчанию) - использовать исходный регистр букв;
- lower - преобразовать текст в нижний регистр.
Таким образом, чтобы упростить настройку файла zabbix_agentd.conf и сделать ее унифицированной, можно использовать три разных подхода:
- Не указывать параметры Hostname или HostnameItem - агент Zabbix будет использовать имя узла сети NetBIOS в качестве имени узла сети.
- Не указывать параметр Hostname и определить HostnameItem следующим образом:
HostnameItem=system.hostname[host] - чтобы агент Zabbix использовал полное фактическое имя узла сети Windows с учетом регистра в качестве имени узла сети.
HostnameItem=system.hostname[shorthost,lower] - чтобы агент Zabbix использовал только часть имени узла сети до первой точки, преобразованную в нижний регистр.
HostnameItem=system.hostname[fqdn] - чтобы агент Zabbix использовал полное доменное имя (Fully Qualified Domain Name) в качестве имени узла сети.
Имя узла сети также используется как часть имени службы 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-битная версия Zabbix агента, чтобы все проверки, связанные с запущенными 64-битными процессами, работали корректно.
Если вы хотите использовать файл конфигурации, отличный от файла по умолчанию, вы должны использовать следующую команду для установки службы:
zabbix_agentd.exe --config <ваш_файл_конфигурации> --install
Необходимо указать полный путь к файлу конфигурации.
Можно установить несколько экземпляров Zabbix агента как службы, примерно следующим образом:
zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_1> --install --multiple-agents
zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_2> --install --multiple-agents
...
zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_N> --install --multiple-agents
Установленная служба теперь будет видна в Панели Управления.
Запуск агента
Для запуска службы агента, вы можете использовать Панель Управления или сделать это из командной строки.
Для запуска одиночного экземпляра Zabbix агента с файлом конфигурации по умолчанию:
zabbix_agentd.exe --start
Для запуска одиночного экземпляра Zabbix агента с отличным от умолчания файлом конфигурации:
zabbix_agentd.exe --config <ваш_файл_конфигурации> --start
Для запуска одного из нескольких экземпляров Zabbix агента:
zabbix_agentd.exe --config <файл_конфигурации_этого_экземпляра> --start --multiple-agents
Остановка агента
Для остановки службы агента, вы можете использовать Панель Управления или сделать это из командной строки.
Для остановки одиночного экземпляра Zabbix агента, который запущен с файлом конфигурации по умолчанию:
zabbix_agentd.exe --stop
Для остановки одиночного экземпляра Zabbix агента, который запущен с другим файлом конфигурации:
zabbix_agentd.exe --config <ваш_файл_конфигурации> --stop
Для остановки одного из нескольких экземпляров Zabbix агента:
zabbix_agentd.exe --config <файл_конфигурации_этого_экземпляра> --stop --multiple-agents
Удаление службы Windows агента
Для удаления одиночного экземпляра Zabbix агента, который использует файл конфигурации по умолчанию:
zabbix_agentd.exe --uninstall
Для удаления одиночного экземпляра Zabbix агента, который использует отличный от умолчания файл конфигурации:
zabbix_agentd.exe --config <ваш_файл_конфигурации> --uninstall
Для удаления нескольких экземпляров Zabbix агента из служб Windows:
zabbix_agentd.exe --config <файл_конфигурации_экземпляра_1> --uninstall --multiple-agents
zabbix_agentd.exe --config <файл_конфигурации_экземпляра_2> --uninstall --multiple-agents
...
zabbix_agentd.exe --config <файл_конфигурации_экземпляра_N> --uninstall --multiple-agents
Ограничения
Zabbix агент для Windows не поддерживает нестандартные конфигурации Windows, где CPU распределены неравномерно по узлам NUMA. Если логические CPU распределены неравномерно, то метрики производительности CPU могут быть недоступными для некоторых CPU. Например, если имеется 72 логических CPU с 2 нодами NUMA, обе ноды должны иметь по 36 CPU каждая.