3 Agent 2

Przegląd

Zabbix agent 2 to nowa generacja Zabbix agent, napisana w Go (z wykorzystaniem części kodu C ponownie użytego z Zabbix agent). Został zaprojektowany, aby:

  • Zmniejszyć liczbę połączeń TCP.
  • Zapewnić lepszą współbieżność kontroli.
  • Umożliwić łatwe rozszerzanie za pomocą wtyczek, które zapewniają proste kontrole przy minimalnej ilości kodu oraz obsługują złożone kontrole składające się z długotrwale działających skryptów i niezależnego zbierania danych z okresowym raportowaniem.
  • Działać jako zamiennik Zabbix agent, obsługując wszystkie wcześniejsze funkcje.
Kontrole pasywne i aktywne

Zabbix agent 2 obsługuje kontrole pasywne i aktywne, podobnie jak Zabbix agent. Dodatkowo, kontrole aktywne Zabbix agent 2 obsługują elastyczne interwały/harmonogramy oraz współbieżność kontroli w ramach jednego aktywnego serwera.

Domyślnie po restarcie Zabbix agent 2 zaplanuje pierwsze pobranie danych dla kontroli aktywnych na warunkowo losowy moment w ramach interwału aktualizacji pozycji, aby zapobiec skokom wykorzystania zasobów. Aby wykonywać kontrole aktywne, które nie mają interwału aktualizacji Scheduling update interval bezpośrednio po restarcie agenta, ustaw parametr ForceActiveChecksOnStart (na poziomie globalnym) lub Plugins.<Plugin name>.System.ForceActiveChecksOnStart (wpływa tylko na kontrole określonej wtyczki) w pliku konfiguracyjnym. Parametr na poziomie wtyczki, jeśli jest ustawiony, zastąpi parametr globalny.

Współbieżność sprawdzeń

Sprawdzenia z różnych wtyczek mogą być wykonywane współbieżnie. Liczba współbieżnych sprawdzeń w ramach jednej wtyczki jest ograniczona przez ustawienie pojemności wtyczki. Każda wtyczka może mieć zakodowane na stałe ustawienie pojemności (domyślnie 1000), które można obniżyć za pomocą ustawienia Plugins.<PluginName>.System.Capacity=N w konfiguracyjnym parametrze Plugins.

Obsługiwane platformy

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

Agent 2 w systemach uniksopodobnych

Zabbix agent 2 w systemach uniksopodobnych jest uruchamiany na monitorowanym hoście.

Instalacja

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

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

Możliwości monitorowania Zabbix agent 2 można rozszerzyć za pomocą ładowalnych wtyczek, które są dostępne oddzielnie. Szczegółowe informacje można znaleźć w sekcji Ładowalne wtyczki.

Jeśli zainstalowano jako pakiet

Zabbix agent 2 działa jako proces pierwszoplanowy i polega na zewnętrznym menedżerze usług (np. systemd) w zakresie uruchamiania w tle; Zabbix agent 2 nie ma wbudowanej obsługi demonizacji w systemie Linux.

Agent można uruchomić, wykonując:

systemctl start zabbix-agent2

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

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

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

zabbix_agent2

Agent 2 w systemach Windows

Zabbix agent 2 działa jako samodzielny proces; może jednak również działać jako usługa systemu Windows.

Instalacja

Zabbix agent 2 można zainstalować w systemie Windows, korzystając z jednej z następujących metod:

Możliwości monitorowania Zabbix agent 2 można rozszerzyć za pomocą ładowalnych wtyczek, które są dostępne oddzielnie. Szczegółowe informacje można znaleźć w sekcji Ładowalne wtyczki.

Dodatkowe informacje na temat instalacji Zabbix agent 2 (z archiwum ZIP) jako usługi systemu Windows można znaleźć na stronie Zabbix agent w systemie Microsoft Windows.

Opcje

Następujące parametry wiersza poleceń mogą być używane z Zabbix agent 2:

Parameter Description
UNIX and Windows agent
-c --config <config-file> Ścieżka do pliku konfiguracyjnego.
Możesz użyć tej opcji, aby wskazać plik konfiguracyjny inny niż domyślny.
W systemach UNIX domyślną wartością jest /usr/local/etc/zabbix_agent2.conf lub wartość ustawiona przez zmienne compile-time --sysconfdir lub --prefix
W systemie Windows domyślną wartością jest C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
-f --foreground Uruchom Zabbix agent na pierwszym planie (domyślnie: true).
-p --print Wyświetl znane pozycje i zakończ.
Uwaga: Aby zwracać również wyniki parametrów użytkownika, musisz określić plik konfiguracyjny (jeśli nie znajduje się w domyślnej lokalizacji).
-t --test <item key> Przetestuj określoną pozycję i zakończ.
Uwaga: Aby zwracać również wyniki parametrów użytkownika, musisz określić plik konfiguracyjny (jeśli nie znajduje się w domyślnej lokalizacji).
-T --test-config Zweryfikuj plik konfiguracyjny i zakończ.
-h --help Wyświetl informacje pomocy i zakończ.
-v --verbose Wyświetl informacje debugowania. Używaj tej opcji z opcjami -p i -t.
-V --version Wyświetl wersję agent oraz informacje o licencji.
-R --runtime-control <option> Wykonaj funkcje administracyjne. Zobacz runtime control.
Windows agent only
-m --multiple-agents Używaj wielu instancji agent (z opcjami -i, -d, -s, -x).
Aby rozróżnić nazwy usług 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 Zabbix Windows agent. Dozwolone wartości:
automatic - (domyślnie) uruchom usługę automatycznie podczas startu systemu Windows;
delayed - opóźnij uruchomienie usługi do momentu zakończenia uruchamiania usług startowanych automatycznie;
manual - uruchom 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 lub osobno, aby zmodyfikować typ uruchamiania już zainstalowanej usługi.
-i --install Zainstaluj Zabbix Windows agent jako usługę.
-d --uninstall Odinstaluj usługę Zabbix Windows agent.
-s --start Uruchom usługę Zabbix Windows agent.
-x --stop Zatrzymaj usługę Zabbix Windows agent.

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

  • wyświetlenie wszystkich wbudowanych pozycji agent wraz z wartościami
  • przetestowanie parametru użytkownika z kluczem "mysql.ping" zdefiniowanym w określonym pliku konfiguracyjnym
  • instalacja usługi "Zabbix Agent" dla systemu Windows przy użyciu domyślnej ścieżki do pliku konfiguracyjnego C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
  • modyfikacja typu uruchamiania zainstalowanej usługi "Zabbix Agent" dla systemu Windows przy użyciu pliku konfiguracyjnego zabbix_agent2.conf znajdującego się w tym samym folderze co plik wykonywalny agent
zabbix_agent2 --print
zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agent2.exe -i
zabbix_agent2.exe -c zabbix_agent2.conf -S delayed
Kontrola w czasie działania

Kontrola w czasie działania udostępnia kilka opcji zdalnego sterowania.

Opcja Opis
log_level_increase Zwiększ poziom logowania.
log_level_decrease Zmniejsz poziom logowania.
metrics Wyświetl listę dostępnych metryk.
version Wyświetl wersję agenta.
userparameter_reload Przeładuj wartości opcji UserParameter i Include z bieżącego pliku konfiguracyjnego.
help Wyświetl informacje pomocy dotyczące kontroli w czasie działania.

Przykłady:

  • zwiększenie poziomu logowania dla agenta 2
  • wyświetlenie opcji kontroli w czasie działania
zabbix_agent2 -R log_level_increase
zabbix_agent2 -R help

Plik konfiguracyjny

Parametry konfiguracyjne agent 2 są w większości zgodne z Zabbix agent, z kilkoma wyjątkami.

Nowe parametry Opis
ControlSocket Ścieżka do gniazda sterowania w czasie działania. Agent 2 używa gniazda sterowania do poleceń wykonywanych w czasie działania.
EnablePersistentBuffer,
PersistentBufferFile,
PersistentBufferPeriod
Te parametry są używane do konfiguracji trwałej pamięci na agent 2 dla aktywnych pozycji.
ForceActiveChecksOnStart Określa, czy agent powinien wykonywać aktywne testy natychmiast po restarcie, czy rozłożyć je równomiernie w czasie.
Plugins Wtyczki mogą mieć własne parametry w formacie Plugins.<Plugin name>.<Parameter>=<value>. Wspólnym parametrem wtyczek jest System.Capacity, ustawiający limit testów, które mogą być wykonywane jednocześnie.
StatusPort Port, na którym agent 2 będzie nasłuchiwał żądań statusu HTTP oraz wyświetlał listę skonfigurowanych wtyczek i niektóre parametry wewnętrzne
Usunięte parametry Opis
AllowRoot, User Nieobsługiwane, ponieważ daemonizacja nie jest obsługiwana.
LoadModule, LoadModulePath Ładowalne moduły nie są obsługiwane.
StartAgents Ten parametr był używany w Zabbix agent do zwiększenia współbieżności testów pasywnych lub ich wyłączenia. W Agent 2 współbieżność jest konfigurowana na poziomie wtyczki i może być ograniczona ustawieniem pojemności.

Aby uzyskać więcej informacji, zobacz opcje pliku konfiguracyjnego dla zabbix_agent2.

Kody wyjścia

Zabbix agent 2 może być również skompilowany ze starszymi wersjami OpenSSL (1.0.1, 1.0.2).

W takim przypadku Zabbix udostępnia muteksy do blokowania w OpenSSL. Jeśli zablokowanie lub odblokowanie muteksu zakończy się niepowodzeniem, w standardowym strumieniu błędów (STDERR) zostanie wyświetlony komunikat o błędzie, a Agent 2 zakończy działanie z kodem wyjścia odpowiednio 2 lub 3.