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
Skontaktuj się!
×

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ę.

SKONTAKTUJ SIĘ

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!

    Potrzebujesz wsparcia? Skontaktuj się z nami!

    * Imię i nazwisko:

    * Firma:

    * Telefon:

    E-mail:

    Wyrażam zgodę na przetwarzanie przez Aplitt sp. z o.o. moich danych osobowych wskazanych w formularzu kontaktowym w celu otrzymywania informacji handlowych i marketingowych dotyczących produktów i usług z oferty Aplitt sp. z o.o.. Więcej informacji w Polityce Prywatności.* Wyrażam zgodę na przetwarzanie przez Aplitt sp. z o.o. moich danych osobowych wskazanych w formularzu kontaktowym w celu otrzymywania informacji handlowych i marketingowych dotyczących produktów i usług z oferty Aplitt sp. z o.o.. Więcej informacji w Polityce Prywatności.

    Wyrażam zgodę na kontakt za pomocą wyżej wymienionych kanałów komunikacji w celu przedstawienia mi informacji handlowych lub w celu marketingu bezpośredniego Aplitt sp. z o.o..* Wyrażam zgodę na kontakt za pomocą wyżej wymienionych kanałów komunikacji w celu przedstawienia mi informacji handlowych lub w celu marketingu bezpośredniego Aplitt sp. z o.o..

    * pola wymagane


    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

    19 września 2022

    Handy Tips #5: Monitorowanie wpisów w pliku dziennika przy pomocy agenta Zabbix


    Czytaj
    thumb image

    14 grudnia 2021

    3 Zabbix MeetUp Online – zapis sesji Q&A


    Czytaj
    thumb image

    21 czerwca 2020

    Słowniczek podstawowych pojęć dla Zabbix


    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