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 sprawdzanie na hoście, Zabbix agent musi mieć zdefiniowaną nazwę hosta. Ponadto wartość nazwy hosta ustawiona po stronie agenta powinna dokładnie odpowiadać wartości „Nazwa hosta” 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 używane są wartości domyślne, jeśli żaden z tych parametrów nie został określony.
Wartością domyślną 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.
Wartością domyślną parametru Hostname jest wartość zwracana przez parametr HostnameItem. W praktyce oznacza to, że jeśli oba te parametry nie zostaną określone, rzeczywistą nazwą hosta będzie nazwa hosta NetBIOS; Zabbix agent użyje nazwy hosta NetBIOS do pobrania listy aktywnych sprawdzeń 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ą powinna zwracać pozycja:
- netbios (domyślnie) - zwraca nazwę hosta NetBIOS, która jest ograniczona do 15 znaków i składa się wyłącznie z wielkich liter;
- host - rozróżnia wielkość liter, zwraca pełną, rzeczywistą nazwę hosta Windows (bez domeny);
- shorthost - zwraca część nazwy hosta znajdującą się przed pierwszą kropką. Jeśli nazwa nie zawiera kropki, zwróci cały ciąg znaków.
- fqdn - zwraca w pełni kwalifikowaną nazwę domenową (bez końcowej kropki).
Transform umożliwia określenie dodatkowej reguły przekształcania nazwy hosta:
- none (domyślnie) - używa oryginalnej wielkości liter;
- lower - konwertuje tekst na małe litery.
Aby uprościć konfigurację pliku zabbix_agentd.conf i ją ujednolicić, można zastosować trzy różne podejścia:
- Pozostawić parametry Hostname lub HostnameItem niezdefiniowane - Zabbix agent 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 Zabbix agent używał pełnej, rzeczywistej nazwy hosta Windows (z rozróżnianiem wielkości liter) jako nazwy hosta.
HostnameItem=system.hostname[shorthost,lower] - aby Zabbix agent używał tylko części nazwy hosta znajdującej się przed pierwszą kropką, przekonwertowanej na małe litery.
HostnameItem=system.hostname[fqdn] - aby Zabbix agent 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 Zabbix agent określa
Hostname=Windows_db_server, agent zostanie zainstalowany jako usługa
Windows „Zabbix Agent [Windows_db_server]”. Dlatego aby każda instancja
Zabbix agent 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.