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 przekazuje dane do serwer Zabbix w celu dalszego przetwarzania. W przypadku awarii (takich jak zapełniony dysk twardy 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.

Zobacz także:

Kontrole pasywne i aktywne

Agenty Zabbix mogą wykonywać kontrole pasywne i aktywne:

  • Kontrole pasywne - agent Zabbix odpowiada na żądanie z serwera Zabbix (lub proxy). Na przykład serwer pobiera dane (np. obciążenie CPU), a agent zwraca wynik.
  • Kontrole aktywne - agent Zabbix zbiera i wysyła dane bez czekania na żądanie z serwera Zabbix (lub proxy). Najpierw pobiera listę pozycji monitorowania z serwera (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 znajdują się na stronie Wymagania.

Agent w systemach uniksopodobnych

Agent Zabbixa w systemach uniksopodobnych jest uruchamiany na hostcie, który jest monitorowany.

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 systemie Windows działa jako usługa systemu Windows.

Instalacja

agent Zabbix można zainstalować w systemie Windows jedną z następujących metod:

Dodatkowe informacje na temat instalacji agenta Zabbix (z archiwum ZIP) jako usługi systemu Windows znajdują się na stronie agent Zabbix w Microsoft Windows.

Opcje

Z agent można używać następujących parametrów wiersza poleceń:

Parametr Opis
agent UNIX i Windows
-c --config <config-file> Ścieżka do pliku konfiguracyjnego.
Tej opcji można użyć, aby określić 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 działanie.
Aby zwrócić również wyniki parametru użytkownika, należy określić plik konfiguracyjny (jeśli nie znajduje się on w domyślnej lokalizacji).
-t --test <item key> Przetestuj określoną pozycję i zakończ działanie.
Aby zwrócić również wyniki parametru użytkownika, należy określić plik konfiguracyjny (jeśli nie znajduje się on w domyślnej lokalizacji).
-T --test-config Sprawdź poprawność pliku konfiguracyjnego i zakończ działanie.
-h --help Wyświetl informacje pomocy.
-V --version Wyświetl numer wersji.
Tylko agent UNIX
-R --runtime-control <option> Wykonaj funkcje administracyjne. Zobacz sterowanie w czasie działania.
Tylko agent Windows
-m --multiple-agents Używaj 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 systemu Windows. Dozwolone wartości:
automatic - (domyślnie) automatycznie uruchom usługę podczas uruchamiania systemu Windows;
delayed - opóźnij uruchomienie usługi do czasu zakończenia uruchamiania usług uruchamianych automatycznie (dostępne w systemach Windows Server 2008/Vista i nowszych);
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 ani aplikację.
Tej opcji można użyć razem z opcją -i lub osobno, aby zmodyfikować typ uruchamiania już zainstalowanej usługi.
-i --install Zainstaluj agenta Zabbix dla systemu Windows jako usługę.
-d --uninstall Odinstaluj usługę agenta Zabbix dla systemu Windows.
-s --start Uruchom usługę agenta Zabbix dla systemu Windows.
-x --stop Zatrzymaj usługę agenta Zabbix dla systemu Windows.

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

  • Wyświetlanie wszystkich wbudowanych pozycji agenta wraz z wartościami.
  • Testowanie parametru użytkownika z kluczem mysql.ping zdefiniowanym w określonym pliku konfiguracyjnym.
  • Instalowanie usługi agenta Zabbix dla systemu Windows przy użyciu domyślnej ścieżki do pliku konfiguracyjnego.
  • Instalowanie usługi agenta Zabbix [Hostname] dla systemu Windows przy użyciu pliku konfiguracyjnego znajdującego się w tym samym folderze co plik wykonywalny agenta oraz nadanie nazwie usługi unikatowego rozszerzenia na podstawie wartości Hostname z pliku konfiguracyjnego.
  • Modyfikowanie typu uruchamiania zainstalowanej usługi agenta Zabbix dla systemu Windows przy użyciu pliku konfiguracyjnego 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 rejestrowania procesów agent.

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

Przykłady:

  • Zwiększenie poziomu rejestrowania wszystkich procesów
  • Zwiększenie poziomu rejestrowania trzeciego procesu listener
  • Zwiększenie poziomu rejestrowania procesu o PID 1234
  • Zmniejszenie poziomu rejestrowania wszystkich procesów kontroli aktywnej
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 systemach 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ą odrzucone.

Uruchamianie agenta jako użytkownik

agent Zabbix w systemie UNIX jest przeznaczony do uruchamiania jako użytkownik inny niż root. Będzie działać jako dowolny użytkownik inny niż root, z którego uprawnieniami został uruchomiony. Dlatego agent można uruchomić 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 istnieć w systemie. agenta można uruchomić jako „root” tylko po odpowiedniej modyfikacji parametru AllowRoot w pliku konfiguracyjnym agenta.

Plik konfiguracyjny

Domyślna ścieżka do pliku konfiguracyjnego zależy od systemu operacyjnego i metody instalacji Zabbix:

  • W systemie UNIX domyślna ścieżka to:
    • W przypadku instalacji ze źródeł: /usr/local/etc/zabbix_agentd.conf lub ścieżka określona przez zmienne w czasie kompilacji --sysconfdir lub --prefix.
    • W przypadku instalacji z pakietów i urządzenia: /etc/zabbix/zabbix_agentd.conf.
  • W systemie Windows domyślna ścieżka 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 dotyczące konfigurowania agenta Zabbix zawierają opcje pliku konfiguracyjnego dla agenta Zabbix w systemie Unix lub agenta Zabbix w systemie Windows.

Lokalizacja

Należy pamiętać, że agent wymaga lokalizacji UTF-8, aby niektóre tekstowe pozycje agenta mogły zwracać oczekiwaną zawartość. Większość nowoczesnych systemów typu Unix ma domyślnie ustawioną lokalizację UTF-8, jednak w niektórych systemach może być konieczne jej ręczne ustawienie.

Kod wyjścia

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