Zabbix agent w Microsoft Windows
Konfigurowanie agent
Obie generacje agentów Zabbixa działają jako usługa systemu Windows. W przypadku Zabbix agent 2 w poniższych instrukcjach należy zastąpić agentd przez agent2.
Na hoście Microsoft Windows można uruchomić pojedynczą instancję Zabbix agent lub wiele instancji agenta. Pojedyncza instancja może używać:
- domyślnego pliku konfiguracyjnego, znajdującego się w tym samym katalogu co plik binarny agenta;
- pliku konfiguracyjnego określonego w wierszu poleceń.
W przypadku wielu instancji każda instancja agenta musi mieć własny plik konfiguracyjny (jedna z instancji może używać domyślnego pliku konfiguracyjnego).
Przykładowy plik konfiguracyjny jest dostępny w archiwum źródłowym Zabbixa jako:
conf/zabbix_agentd.confdla Zabbix agent;conf/zabbix_agent2.confdla Zabbix agent2.
Jeśli chcesz zainstalować Zabbix agent/agent 2 dla Windows jako usługę z archiwum bez jawnego określania pliku konfiguracyjnego, to przed instalacją agenta:
conf/zabbix_agentd.confnależy ręcznie skopiować do katalogu, w którym zostanie zainstalowany zabbix_agentd.exe;conf/zabbix_agent2.conforaz katalogconf/zabbix_agent2.dnależy ręcznie skopiować do katalogu, w którym zostanie zainstalowany zabbix_agent2.exe.
Zobacz opcje pliku konfiguracyjnego , aby uzyskać szczegółowe informacje na temat konfiguracji agenta Zabbix dla Windows.
Parametr Hostname
Aby wykonać aktywnych sprawdzeń na hoście, agent Zabbix musi mieć zdefiniowaną nazwę hosta. Ponadto wartość nazwy hosta ustawiona po stronie agenta powinna dokładnie odpowiadać "nazwie hosta" skonfigurowanej dla hosta we frontend.
Wartość nazwy hosta po stronie agenta może być zdefiniowana za pomocą parametru Hostname lub HostnameItem w pliku konfiguracyjnym agenta - albo zostaną użyte wartości domyślne, jeśli żaden z tych parametrów nie zostanie określony.
Domyślną wartością parametru HostnameItem jest wartość zwracana przez klucz agenta "system.hostname". W systemie Windows zwraca on wynik funkcji gethostname(), która odpyta dostawców przestrzeni nazw w celu ustalenia lokalnej nazwy hosta. Jeśli żaden dostawca przestrzeni nazw nie odpowie, zwracana jest nazwa NetBIOS.
Domyślną wartością Hostname jest wartość zwracana przez parametr HostnameItem. W praktyce więc, jeśli oba te parametry nie zostaną określone, rzeczywista nazwa hosta będzie nazwą NetBIOS hosta; agent Zabbix użyje nazwy hosta NetBIOS do pobrania listy aktywnych sprawdzeń z serwer Zabbix i wysłania do niego wyników.
Klucz "system.hostname" obsługuje dwa opcjonalne parametry - type i transform.
Type określa typ nazwy, którą ma zwrócić pozycja:
- netbios (domyślnie) - zwraca nazwę hosta NetBIOS, która jest ograniczona do 15 znaków i występuje wyłącznie wielkimi literami;
- host - rozróżnia wielkość liter, zwraca pełną, rzeczywistą nazwę hosta Windows (bez domeny);
- shorthost - zwraca część nazwy hosta przed pierwszą kropką. Zwróci pełny ciąg, jeśli nazwa nie zawiera kropki.
- fqdn - zwraca w pełni kwalifikowaną nazwę domenową (bez końcowej kropki).
Transform pozwala określić dodatkową regułę transformacji nazwy hosta:
- none (domyślnie) - zachowuje oryginalną wielkość liter;
- lower - konwertuje tekst na małe litery.
Aby uprościć konfigurację pliku zabbix_agentd.conf i ujednolicić ją,
można zastosować trzy różne podejścia:
- Pozostawić parametry Hostname lub HostnameItem niezdefiniowane, a agent Zabbix użyje nazwy hosta NetBIOS jako nazwy hosta.
- Pozostawić parametr Hostname niezdefiniowany i zdefiniować
HostnameItem w następujący sposób:
HostnameItem=system.hostname[host] - aby agent Zabbix używał pełnej, rzeczywistej (rozróżniającej wielkość liter) nazwy hosta Windows jako nazwy hosta.
HostnameItem=system.hostname[shorthost,lower] - aby agent Zabbix używał tylko części nazwy hosta przed pierwszą kropką, przekształconej na małe litery.
HostnameItem=system.hostname[fqdn] - aby agent Zabbix używał w pełni kwalifikowanej nazwy domenowej jako nazwy hosta.
Nazwa hosta jest również używana jako część nazwy usługi Windows, która służy do
instalowania, uruchamiania, zatrzymywania i odinstalowywania usługi Windows.
Na przykład, jeśli plik konfiguracyjny agenta Zabbix określa
Hostname=Windows_db_server, to agent zostanie zainstalowany jako usługa
Windows "Zabbix Agent [Windows_db_server]". Dlatego, aby każda instancja
agenta Zabbix miała inną nazwę usługi Windows, każda instancja musi używać
innej nazwy hosta.
Instalowanie agenta jako usługi systemu Windows
Przed zainstalowaniem agenta skopiuj ręcznie conf/zabbix_agentd.conf do katalogu, w którym zostanie zainstalowany zabbix_agentd.exe.
Aby zainstalować pojedynczą instancję agenta Zabbix z domyślnym plikiem konfiguracyjnym:
zabbix_agentd.exe --install
W systemie 64-bitowym do poprawnego działania wszystkich kontroli związanych z uruchamianiem procesów 64-bitowych wymagana jest 64-bitowa wersja agenta Zabbix.
Jeśli chcesz użyć innego pliku konfiguracyjnego niż domyślny, powinieneś użyć następującego polecenia do instalacji usługi:
zabbix_agentd.exe --config <your_configuration_file> --install
Należy podać pełną ścieżkę do pliku konfiguracyjnego.
Wiele instancji agenta Zabbix można zainstalować jako usługi w następujący sposób:
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
Zainstalowana usługa powinna być teraz widoczna w Panelu sterowania.
Uruchamianie agent
Aby uruchomić usługę agenta, możesz użyć Panelu sterowania lub zrobić to z wiersza poleceń.
Aby uruchomić pojedynczą instancję Zabbix agent z domyślnym plikiem konfiguracyjnym:
zabbix_agentd.exe --start
Aby uruchomić pojedynczą instancję Zabbix agent z innym plikiem konfiguracyjnym:
zabbix_agentd.exe --config <your_configuration_file> --start
Aby uruchomić jedną z wielu instancji Zabbix agent:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents
Zatrzymywanie agent
Aby zatrzymać usługę agenta, możesz użyć Panelu sterowania lub wykonać to z wiersza poleceń.
Aby zatrzymać pojedynczą instancję agenta Zabbix uruchomioną z domyślnym plikiem konfiguracyjnym:
zabbix_agentd.exe --stop
Aby zatrzymać pojedynczą instancję agenta Zabbix uruchomioną z innym plikiem konfiguracyjnym:
zabbix_agentd.exe --config <your_configuration_file> --stop
Aby zatrzymać jedną z wielu instancji agenta Zabbix:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Odinstalowywanie usługi Windows agent
Aby odinstalować pojedynczą instancję Zabbix agent przy użyciu domyślnego pliku konfiguracyjnego:
zabbix_agentd.exe --uninstall
Aby odinstalować pojedynczą instancję Zabbix agent przy użyciu niestandardowego pliku konfiguracyjnego:
zabbix_agentd.exe --config <your_configuration_file> --uninstall
Aby odinstalować wiele instancji Zabbix agent z usług 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
Ograniczenia
Agent Zabbix dla Windows nie obsługuje niestandardowych konfiguracji Windows, w których procesory są rozmieszczone nierównomiernie między węzłami NUMA. Jeśli logiczne procesory są rozmieszczone nierównomiernie, metryki wydajności procesora mogą nie być dostępne dla niektórych procesorów. Na przykład, jeśli istnieje 72 logicznych procesorów i 2 węzły NUMA, oba węzły muszą mieć po 36 procesorów każdy.