Jak się tworzy skrypty zewnętrzne w monitoringu Zabbix

Poprzedni artykuł dotyczący Zabbixa – „Jak się tworzy własny monitoring?” – w przydatny i ciekawy mam nadzieję sposób, przedstawił monitorowanie infrastruktury bezpośrednio z serwera źródłowego. To nie wszystkie możliwości Zabbixa. Umożliwia on również monitorowanie systemów „z boku”, czyli sprawdzanie stanu danej usługi, poprawności działania serwera, poprzez wykonywanie cyklicznie skryptów z poziomu Zabbix serwera. W Zabbixie taka pozycja nazywa się „Zewnętrzne skrypty” (ang. External Scripts).

Co to skrypty zewnętrzne

Zewnętrzny skrypt to skrypt znajdujący się na Zabbix Serverze w katalogu podanym w pliku konfiguracyjnym:

w sekcji External scripts:

Domyślnie katalog ten znajduje się pod ścieżką:

Serwer Zabbixa może zostać zainstalowany tylko i wyłącznie na serwerach z rodziny Linux. Zewnętrzny skrypt jest wykonywany po stronie serwera Zabbix, więc ograniczeniem jest język skryptowy po stronie Zabbix Servera, który musi być dla niego zrozumiały. W ten sposób stosowanymi językami mogą być np. Python, PHP, bash itp.

Sprawdź jak możemy Ci pomóc!

  • proof of concept, czyli wdrożenie prezentacyjnej wersji systemu Zabbix
  • konsultacje w zakresie konfiguracji monitoringu i automatyzacji infrastruktury
  • monitoring IT 24/7
  • wsparcie powdrożeniowe w tym autoryzowane wsparcie producenta
  • szkolenia użytkownika
×

Mamy nadzieję, że lektura tego tekstu sprawi Ci przyjemność.

Jeśli chcesz, byśmy pokazali Ci jak to narzędzie sprawdzi się w Twojej firmie, po prostu zarezerwuj rozmowę.

Po co się tworzy skrypty zewnętrzne

Przedstawię zastosowanie takiego monitoringu na podstawie serwerów czasu. Wytworzymy skrypt w języku bash, który sprawdzi nam opóźnienie pomiędzy serwerami NTP, a serwerem Zabbixa. Posłuży nam do tego polecenie ntpdate.

Oto jego przykładowy wynik:

Tworzymy skrypt w języku bash o nazwie: ntp.sh, który poda nam opóźnienie „delay” w milisekundach pomiędzy serwerami.

Następnie nadajemy uprawnienia wykonania dla użytkownika „zabbix” dla naszego skryptu:

Przykładowy wynik naszego skryptu to:

Posiadając już taką wartość możemy utworzyć nową pozycję w Zabbix. Tworzymy na hoście nową pozycję typu „Test zewnętrzny” (ang. External check), z kluczem jako nazwą skryptu:

Sprawdzając „Ostatnie dane” jesteśmy w stanie zaobserwować jak generuje się wykres opóźnień pomiędzy serwerami w milisekundach:

Oczywiście możemy rozszerzyć funkcjonalność skryptu modyfikując linijkę:

Na:

W konsekwencji tego, za pomocą jednego skryptu możemy monitorować kilka serwerów NTP (gdyż $1 w języku bash oznacza parametr podawany przy wywołaniu skryptu). Zmieniamy więc taką linijkę w skrypcie, modyfikujemy pozycję i dodajemy dla porównania nową z ntp2.pl.

W ten sposób jesteśmy w stanie monitorować dwa serwery NTP i opóźnienie, z jakim przekazują dane. 0.03 ms to naprawdę bardzo dobry wynik.

Jednak zastosowanie Zewnętrznych skryptów niesie ze sobą pewne ograniczenia:

  • klucz musi być unikalny
  • czas wykonania skryptu nie może być dłuższy niż wartość w polu Timeout zadeklarowana w pliku /etc/zabbix/zabbix_server.conf
  • serwer musi zwrócić jedną wartość (int, float, boolean, text)
  • skrypt wykonywany musi być napisany w języku zrozumiałym dla systemu operacyjnego Linux
  • użytkownik „zabbix” musi mieć uprawnienia do wykonania skryptu

 

Jeśli ten temat był dla Ciebie zbyt skomplikowany i nadal nie wiesz w jakim celu wykonuje się daną operację, skontaktuj się z nami. Z chęcią pomożemy! 😉

Summary
Jak się tworzy skrypty zewnętrzne w Zabbixie
Article Name
Jak się tworzy skrypty zewnętrzne w Zabbixie
Description
Co to są skrypty zewnętrzne w systemie Zabbix? Po co się tworzy skrypty? Jak prawidłowo utworzyć skrypty? Sprawdź!
Author
Publisher Name
Aplitt sp. z o.o.
Publisher Logo

Podziel się treścią:

Zostaw kontakt, aby dowiedzieć się więcej!

Mateusz Dampc
Mateusz DampcArchitekt ds. monitoringu infrastruktury IT w Aplitt
Mateusz Dampc jest ekspertem w dziedzinie monitoringu Zabbix, posiada tytuł certyfikowanego trenera w wersjach 6.0 i 7.0. Na co dzień wspiera swoją wiedzą polską społeczność IT na forach społecznościowych, w ramach szkoleń, publicznych prelekcji i webinarów. W pracy skupia się głównie na realizacji ekstremalnych wymogów dotyczących monitoringu u klientów zewnętrznych. Posiada doświadczenie w zakresie Zabbix od wersji 2.2, a także certyfikaty Zabbix Certified Professional dla wszystkich wersji począwszy od 3.0. Autor książki "Efektywny monitoring infrastruktury IT dla każdego".

Zobacz także:

thumb image

22 lipca 2024

Jakie problemy rozwiążesz z Zabbix 7.0


Czytaj
thumb image

14 kwietnia 2021

2 Zabbix MeetUp Online – zapis sesji Q&A cz.3


Czytaj
thumb image

7 kwietnia 2025

Jak Zabbix wspiera realizację wymagań dyrektywy NIS2


Czytaj

Obejrzyj nasze filmy:

Summary
Jak się tworzy skrypty zewnętrzne w Zabbixie
Article Name
Jak się tworzy skrypty zewnętrzne w Zabbixie
Description
Co to są skrypty zewnętrzne w systemie Zabbix? Po co się tworzy skrypty? Jak prawidłowo utworzyć skrypty? Sprawdź!
Author
Publisher Name
Aplitt sp. z o.o.
Publisher Logo