11 Zabbix agent w systemie Microsoft Windows
Konfigurowanie agent
Obie generacje agentów Zabbix działają jako usługa systemu Windows. W przypadku Zabbix agent 2 w poniższych instrukcjach należy zastąpić agentd przez agent2.
Można uruchomić pojedynczą instancję agent Zabbix lub wiele instancji agent na hoście Microsoft Windows. Pojedyncza instancja może używać:
- domyślnego pliku konfiguracyjnego znajdującego się w tym samym katalogu co plik binarny agent;
- pliku konfiguracyjnego określonego w wierszu poleceń.
W przypadku wielu instancji każda instancja agent 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 Zabbix jako:
conf/zabbix_agentd.confdla Zabbix agent;conf/zabbix_agent2.confdla Zabbix agent2.
Jeśli chcesz zainstalować Zabbix agent/agent 2 dla systemu Windows jako usługę z archiwum bez jawnego określania pliku konfiguracyjnego, to przed instalacją agent:
conf/zabbix_agentd.confnależy ręcznie skopiować do katalogu, w którym zostanie zainstalowany plik zabbix_agentd.exe;conf/zabbix_agent2.conforaz katalogconf/zabbix_agent2.dnależy ręcznie skopiować do katalogu, w którym zostanie zainstalowany plik zabbix_agent2.exe.
Szczegółowe informacje na temat konfiguracji agenta Zabbix dla systemu Windows można znaleźć w opcjach pliku konfiguracyjnego.
Parametr Hostname
Aby wykonywać aktywne kontrole na hoście, agent Zabbix musi mieć zdefiniowaną nazwę hosta. Ponadto wartość nazwy hosta ustawiona po stronie agenta powinna dokładnie odpowiadać wartości „Host name” skonfigurowanej dla hosta we frontendzie.
Wartość nazwy hosta po stronie agenta można zdefiniować za pomocą parametru Hostname lub HostnameItem w pliku konfiguracyjnym agenta — albo zostaną użyte wartości domyślne, jeśli którykolwiek 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 odpytuje dostawców przestrzeni nazw w celu określenia lokalnej nazwy hosta. Jeśli żaden dostawca przestrzeni nazw nie odpowie, zwracana jest nazwa NetBIOS.
Domyślną wartością parametru Hostname jest wartość zwracana przez parametr HostnameItem. W praktyce oznacza to, że jeśli oba te parametry nie są określone, rzeczywistą nazwą hosta będzie nazwa NetBIOS hosta; agent Zabbix użyje nazwy hosta NetBIOS do pobrania listy aktywnych kontroli z serwera 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ą pozycja ma zwracać:
- netbios (domyślnie) — zwraca nazwę hosta NetBIOS, która jest ograniczona do 15 znaków i zawiera wyłącznie WIELKIE LITERY;
- host — z uwzględnieniem wielkości 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łę przekształcenia nazwy hosta:
- none (domyślnie) — użyj oryginalnej wielkości liter;
- lower — zamień tekst na małe litery.
Aby więc uprościć konfigurację pliku zabbix_agentd.conf i ją ujednolicić, 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 (z uwzględnieniem wielkości 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ą, zamienionej 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 zawiera
Hostname=Windows_db_server, 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.
Instalacja agent jako usługi Windows
Przed zainstalowaniem agent skopiuj ręcznie plik conf/zabbix_agentd.conf do
katalogu, w którym zostanie zainstalowany plik zabbix_agentd.exe.
Aby zainstalować pojedynczą instancję Zabbix agent z domyślnym plikiem konfiguracyjnym:
zabbix_agentd.exe --install
W systemie 64-bitowym wymagana jest 64-bitowa wersja Zabbix agent, aby wszystkie kontrole związane z uruchomionymi procesami 64-bitowymi działały prawidłowo.
Jeśli chcesz użyć pliku konfiguracyjnego innego 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 Zabbix agent 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ę agent, 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ę agent, możesz użyć Panelu sterowania lub zrobić to z wiersza poleceń.
Aby zatrzymać pojedynczą instancję Zabbix agent uruchomioną z domyślnym plikiem konfiguracyjnym:
zabbix_agentd.exe --stop
Aby zatrzymać pojedynczą instancję Zabbix agent uruchomioną z innym plikiem konfiguracyjnym:
zabbix_agentd.exe --config <your_configuration_file> --stop
Aby zatrzymać jedną z wielu instancji Zabbix agent:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Odinstalowywanie usługi agenta Windows
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 niedomyślnego 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
Zabbix agent dla systemu Windows nie obsługuje niestandardowych konfiguracji systemu Windows, w których procesory CPU są rozmieszczone nierównomiernie pomiędzy węzłami NUMA. Jeśli logiczne procesory CPU są rozmieszczone nierównomiernie, metryki wydajności CPU mogą nie być dostępne dla niektórych procesorów CPU. Na przykład, jeśli istnieją 72 logiczne procesory CPU i 2 węzły NUMA, oba węzły muszą mieć po 36 procesorów CPU.