7 Zewnętrzny check
Omówienie
Zewnętrzne sprawdzenie to sprawdzenie wykonywane przez serwer Zabbix przez uruchomienie skryptu powłoki lub pliku binarnego. Jednak gdy hosty są monitorowane przez proxy Zabbix, zewnętrzne sprawdzenia są wykonywane przez proxy.
Zewnętrzne sprawdzenia nie wymagają uruchomionego agenta na monitorowanym hoście.
Składnia klucza pozycji jest następująca:
script[<parameter1>,<parameter2>,...]
Gdzie:
| ARGUMENT | DEFINITION |
|---|---|
| script | Nazwa skryptu powłoki lub pliku binarnego. |
| parameter(s) | Opcjonalne parametry wiersza poleceń. |
Jeśli nie chcesz przekazywać żadnych parametrów do skryptu, możesz użyć:
script[] or
script
Serwer Zabbix lub proxy wyszuka katalog określony dla zewnętrznych skryptów i wykona polecenie (zobacz parametr ExternalScripts w pliku konfiguracyjnym Zabbix serwer/proxy).
Polecenie zostanie wykonane z tym samym użytkownikiem co serwer/proxy Zabbix, więc w razie potrzeby wszelkie uprawnienia dostępu lub zmienne środowiskowe powinny być obsłużone w skrypcie opakowującym.
Uprawnienia do polecenia powinny również umożliwiać temu użytkownikowi jego wykonanie.
Do wykonania dostępne są tylko polecenia znajdujące się w określonym katalogu.
Nie nadużywaj zewnętrznych sprawdzeń, ponieważ każdy skrypt wymaga uruchomienia procesu fork przez serwer/proxy Zabbix, a uruchamianie wielu skryptów może znacząco obniżyć wydajność Zabbix.
Przykład użycia
Wykonanie skryptu check_oracle.sh z pierwszym parametrem '-h'. Drugi parametr zostanie zastąpiony adresem IP lub nazwą DNS, w zależności od wyboru we właściwościach hosta.
check_oracle.sh["-h","{HOST.CONN}"]
Zakładając, że host jest skonfigurowany do używania adresu IP, serwer/proxy Zabbix wykona:
check_oracle.sh '-h' '192.168.1.4'
Wynik zewnętrznej kontroli
Wartość zwracana przez zewnętrzną kontrolę to standardowe wyjście wraz ze standardowym wyjściem błędów wygenerowanym przez kontrolę.
Pozycja, która zwraca tekst (informacje typu character, log lub text), nie stanie się nieobsługiwana w przypadku standardowego wyjścia błędów.
Wartość zwracana jest ograniczona do 16 MB (w tym końcowe białe znaki, które są obcinane); obowiązują również limity bazy danych.
Jeśli żądany skrypt nie zostanie znaleziony lub serwer/proxy Zabbix nie ma uprawnień do jego wykonania, pozycja stanie się nieobsługiwana i zostanie wyświetlony odpowiedni komunikat o błędzie.
W przypadku przekroczenia limitu czasu pozycja stanie się nieobsługiwana, zostanie wyświetlony odpowiedni komunikat o błędzie, a proces utworzony metodą fork dla skryptu zostanie zakończony.