2 Agent

Przegląd

agent Zabbix jest wdrażany na monitorowanym obiekcie, aby aktywnie monitorować lokalne zasoby i aplikacje (dyski twarde, pamięć, statystyki procesora itp.).

agent zbiera lokalnie informacje operacyjne i przesyła dane do serwer Zabbix w celu dalszego przetwarzania. W przypadku awarii (takich jak zapełnienie dysku twardego lub awaria procesu usługi), serwer Zabbix może aktywnie powiadomić administratorów konkretnej maszyny, która zgłosiła awarię.

agenty Zabbix są bardzo wydajne dzięki użyciu natywnych wywołań systemowych do zbierania informacji statystycznych.

Możliwe jest uruchomienie wielu instancji agenta na host.

Kontrole pasywne i aktywne

Agenty Zabbix mogą wykonywać kontrole pasywne i aktywne:

  • Kontrole pasywne - agent Zabbix odpowiada na żądanie z serwer Zabbix (lub proxy). Na przykład serwer żąda danych (np. obciążenia CPU), a agent zwraca wynik.
  • Kontrole aktywne - agent Zabbix zbiera i wysyła dane bez oczekiwania na żądanie z serwer Zabbix (lub proxy). Najpierw pobiera listę pozycji monitorowania z serwer (obciążenie CPU, dostępna pamięć itp.), a następnie zbiera wymagane dane i okresowo wysyła do niego nowe wartości.

Typ kontroli agenta jest konfigurowany przez wybranie odpowiedniego typu pozycji monitorowania. Agent Zabbix przetwarza pozycje typu Zabbix agent lub Zabbix agent (active).

Obsługiwane platformy

Informacje o obsługiwanych platformach można znaleźć na stronie Wymagania.

Agent w systemach uniksopodobnych

Agent Zabbixa w systemach uniksopodobnych jest uruchamiany na hostcie monitorowanym.

Instalacja

Zabbix agent można zainstalować w systemach opartych na Linuksie, korzystając z jednej z następujących metod:

  • Pakiety Zabbix — wybierz komponent Agent (po wybraniu wersji Zabbix, dystrybucji systemu operacyjnego i wersji systemu operacyjnego) i postępuj zgodnie z podanymi instrukcjami.
  • Źródła Zabbix — pobierz pliki źródłowe i skompiluj Zabbix agent, konfigurując źródła z opcją --enable-agent.

Ogólnie rzecz biorąc, 32-bitowe agenty Zabbix będą działać w systemach 64-bitowych, ale w niektórych przypadkach mogą zawieść.

Wstępnie skompilowane pliki binarne Zabbix agent są dostępne do pobrania dla systemów macOS, IBM AIX, FreeBSD, OpenBSD i Solaris. Starsze pliki binarne, zgodne z obecną wersją serwera/proxy Zabbix, są dostępne dla systemów NetBSD i HP-UX.

Jeśli zainstalowano jako pakiet

Agent Zabbix działa jako proces demona. Agent można uruchomić, wykonując:

systemctl start zabbix-agent

To zadziała w większości systemów GNU/Linux. W innych systemach może być konieczne uruchomienie:

/etc/init.d/zabbix-agent start

Aby zatrzymać, uruchomić ponownie lub sprawdzić status agenta Zabbix, użyj następujących poleceń:

systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
Uruchamianie ręczne

Możesz uruchomić agent Zabbix, lokalizując plik binarny zabbix_agentd i uruchamiając go bezpośrednio; na przykład:

zabbix_agentd

Agent w systemach Windows

Agent Zabbix w systemach Windows działa jako usługa systemu Windows.

Instalacja

Agent Zabbix może zostać zainstalowany w systemie Windows przy użyciu jednej z następujących metod:

Zobacz stronę Agent Zabbix w systemie Microsoft Windows, aby uzyskać dodatkowe informacje na temat instalacji agenta Zabbix (z archiwum ZIP) jako usługi systemu Windows.

Opcje

Następujące parametry wiersza poleceń można używać z agentem Zabbix:

Parameter Description
agent UNIX i Windows
-c --config <config-file> Ścieżka do pliku konfiguracyjnego.
Możesz użyć tej opcji, aby wskazać plik konfiguracyjny inny niż domyślny.
-f --foreground Uruchom agenta Zabbix na pierwszym planie (domyślnie: true).
-p --print Wyświetl znane pozycje i zakończ.
Pamiętaj, że aby zwrócić również wyniki parametru użytkownika, musisz podać plik konfiguracyjny (jeśli nie znajduje się w domyślnej lokalizacji).
-t --test <item key> Przetestuj określoną pozycję i zakończ.
Pamiętaj, że aby zwrócić również wyniki parametru użytkownika, musisz podać plik konfiguracyjny (jeśli nie znajduje się w domyślnej lokalizacji).
-T --test-config Sprawdź poprawność pliku konfiguracyjnego i zakończ.
-h --help Wyświetl informacje pomocy.
-V --version Wyświetl numer wersji.
Tylko agent UNIX
-R --runtime-control <option> Wykonaj funkcje administracyjne. Zobacz runtime control.
Tylko agent Windows
-m --multiple-agents Użyj wielu instancji agenta (z opcjami -i, -d, -s, -x).
Aby rozróżnić nazwy usług poszczególnych instancji, każda nazwa usługi będzie zawierać wartość Hostname z określonego pliku konfiguracyjnego.
-S --startup-type <value> Ustaw typ uruchamiania usługi agenta Zabbix dla Windows. Dozwolone wartości:
automatic - (domyślnie) uruchamiaj usługę automatycznie podczas startu Windows;
delayed - opóźnij uruchomienie usługi do czasu zakończenia startu usług uruchamianych automatycznie (dostępne w Windows Server 2008/Vista i nowszych wersjach);
manual - uruchamiaj usługę ręcznie (przez użytkownika lub aplikację);
disabled - wyłącz usługę, aby nie mogła zostać uruchomiona przez użytkownika lub aplikację.
Możesz użyć tej opcji razem z opcją -i albo osobno, aby zmodyfikować typ uruchamiania już zainstalowanej usługi.
-i --install Zainstaluj agenta Zabbix dla Windows jako usługę.
-d --uninstall Odinstaluj usługę agenta Zabbix dla Windows.
-s --start Uruchom usługę agenta Zabbix dla Windows.
-x --stop Zatrzymaj usługę agenta Zabbix dla Windows.

Konkretne przykłady użycia parametrów wiersza poleceń:

  • Wyświetlenie wszystkich wbudowanych pozycji agenta wraz z wartościami.
  • Testowanie parametru użytkownika z kluczem mysql.ping zdefiniowanym w określonym pliku konfiguracyjnym.
  • Instalacja usługi Zabbix Agent dla Windows z użyciem domyślnej ścieżki do pliku konfiguracyjnego C:\\Program Files\\Zabbix Agent\\zabbix_agentd.conf.
  • Instalacja usługi Zabbix Agent [Hostname] dla Windows z użyciem pliku konfiguracyjnego zabbix_agentd.conf znajdującego się w tym samym folderze co plik wykonywalny agenta oraz nadanie nazwie usługi unikalności przez rozszerzenie jej o wartość Hostname z pliku konfiguracyjnego.
  • Modyfikacja typu uruchamiania zainstalowanej usługi Zabbix Agent dla Windows z użyciem pliku konfiguracyjnego zabbix_agentd.conf znajdującego się w tym samym folderze co plik wykonywalny agenta.
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
Sterowanie w czasie działania

Za pomocą opcji sterowania w czasie działania można zmieniać poziom logowania procesów agent.

Option Description Target
log_level_increase[=<target>] Zwiększa poziom logowania.
Jeśli target nie zostanie określony, dotyczy to wszystkich procesów.
Target można określić jako:
typ procesu - wszystkie procesy określonego typu (np. listener)
Zobacz wszystkie typy procesów agent.
typ procesu,N - typ procesu i numer (np. listener,3)
pid - identyfikator procesu (1 do 65535). Dla większych wartości określ target jako 'typ procesu,N'.
log_level_decrease[=<target>] Zmniejsza poziom logowania.
Jeśli target nie zostanie określony, dotyczy to wszystkich procesów.
userparameter_reload Wczytuje ponownie wartości opcji UserParameter i Include z bieżącego pliku konfiguracyjnego.

Przykłady:

  • Zwiększenie poziomu logowania wszystkich procesów
  • Zwiększenie poziomu logowania trzeciego procesu listener
  • Zwiększenie poziomu logowania procesu o PID 1234
  • Zmniejszenie poziomu logowania wszystkich procesów aktywnych kontroli
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"

Sterowanie w czasie działania nie jest obsługiwane w OpenBSD, NetBSD i Windows.

Typy procesów agenta

Typy procesów agenta są następujące:

  • active checks - proces do wykonywania aktywnych kontroli;
  • collector - proces do zbierania danych;
  • listener - proces do nasłuchiwania pasywnych kontroli.

Plik dziennika agenta może służyć do obserwowania tych typów procesów.

Plik dziennika agenta jest tworzony z uprawnieniami do odczytu i zapisu wyłącznie dla właściciela pliku. Dodatkowo plik jest czytelny dla grupy właściciela. Wszystkie pozostałe uprawnienia są zabronione.

Użytkownik procesu

agent Zabbix w systemie UNIX jest zaprojektowany do działania jako użytkownik inny niż root. Będzie działał jako ten użytkownik inny niż root, jako który został uruchomiony. Możesz więc uruchomić agent jako dowolnego użytkownika innego niż root bez żadnych problemów.

Jeśli spróbujesz uruchomić go jako root, przełączy się na zakodowanego na stałe użytkownika zabbix, który musi być obecny w twoim systemie. Możesz uruchomić agent jako root tylko wtedy, gdy odpowiednio zmodyfikujesz parametr AllowRoot w pliku konfiguracyjnym agenta.

Plik konfiguracyjny

Domyślna ścieżka do pliku konfiguracyjnego to:

  • W systemach UNIX domyślnie jest to /usr/local/etc/zabbix_agentd.conf lub wartość ustawiona przez zmienne czas kompilacji --sysconfdir albo --prefix.
  • W systemie Windows domyślnie jest to C:\\Program Files\\Zabbix Agent\\zabbix_agentd.conf.

Jeśli na hoście działa pojedyncza instancja agenta, może ona używać domyślnego pliku konfiguracyjnego lub 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).

Szczegółowe informacje o konfiguracji agenta Zabbix znajdują się w opcjach pliku konfiguracyjnego dla agenta Zabbix dla Unix lub agenta Zabbix dla Windows.

Ustawienia regionalne

Należy pamiętać, że agent wymaga ustawień regionalnych UTF-8, aby niektóre tekstowe pozycje agenta mogły zwracać oczekiwaną zawartość. Większość nowoczesnych systemów typu Unix domyślnie używa ustawień regionalnych UTF-8, jednak istnieją systemy, w których może być konieczne ich jawne skonfigurowanie.

Kod wyjścia

Zabbix agent zwraca 0 w przypadku pomyślnego zakończenia i 1 w przypadku niepowodzenia.