Twórca | Alexei Vladishev ( d ) |
---|---|
Opracowany przez | Zabbix LLC ( d ) |
Pierwsza wersja | 1998 |
Ostatnia wersja | 5.2.4 (25 stycznia 2021 r) |
Wersja zaawansowana | 4.0.0alpha2 (8 stycznia 2018 r) |
Kaucja | git.zabbix.com |
Napisane w | C , PHP i Java |
System operacyjny | GNU / Linux , Solaris , macOS , HP-UX , NetBSD , FreeBSD , IBM Power Systems i AIX |
Rodzaj | Nadzór |
Licencja | Powszechna Licencja Publiczna GNU wersja 2 |
Stronie internetowej | www.zabbix.com |
ZABBIX to oprogramowanie typu open source do monitorowania stanu różnych usług sieciowych, serwerów i innego sprzętu sieciowego oraz tworzenia dynamicznych wykresów zużycia zasobów. Jest to oprogramowanie stworzone przez Aleksieja Władiszewa.
„Serwer ZABBIX” można podzielić na trzy oddzielne części: serwer danych, interfejs zarządzania i serwer przetwarzania. Każdy z nich można ustawić na innej maszynie, aby rozłożyć obciążenie i zoptymalizować wydajność.
System, którego wykorzystanie zasobów ma zostać przeanalizowane, obejmuje agenta działającego w postaci demona o nazwie zabbix-agentd i nasłuchującego domyślnie na porcie TCP 10050. Integruje to funkcje umożliwiające próbkowanie stanu zasobów różnych komponentów systemu (Pamięć , Procesor, prędkość sieci, I / O , liczba połączeń z aplikacją itp. ) I proponuje wykonanie skryptów, jeśli to konieczne. Dlatego serwer Zabbix regularnie dzwoni do tego agenta i pyta go o informacje dotyczące określonego zasobu.
ZABBIX używa MySQL , PostgreSQL lub Oracle do przechowywania danych. W zależności od wielkości liczby maszyn i danych do monitorowania, wybór DBMS ma duży wpływ na wydajność. W oficjalnym podręczniku znajduje się sekcja dotycząca tego wyboru. Mianowicie, że wydawca rozwija się przede wszystkim w ekosystemie MySQL (MariaDB, Percona, ...).
Interfejs sieciowy jest napisany w PHP . Działa bezpośrednio na informacje przechowywane w bazie danych. Każda informacja wymagana przez serwer przetwarzania jest aktualizowana automatycznie, nie ma żadnych działań, które należy podjąć na pliku binarnym, aby wskazać mu, że nastąpiła aktualizacja.
Ten interfejs ma następujące główne cechy:
Jest to istniejący demon binarny dla Linuksa, BSD i różnych Uniksów (patrz oficjalna strona: http://www.zabbix.com/requirements.php ). Oferuje różne opcje monitorowania . Proste sprawdzenie umożliwia sprawdzenie dostępności oraz czasu odpowiedzi standardowych usług, takich jak SMTP czy HTTP, bez konieczności instalowania oprogramowania na monitorowanym hoście. Agenta ZABBIX można również zainstalować na hostach Linux , UNIX i Windows w celu uzyskania statystyk, takich jak obciążenie procesora , wykorzystanie sieci, miejsce na dysku, itp. Oprogramowanie może prowadzić monitorowanie przez SNMP .
Ciekawostką jest możliwość skonfigurowania "proxy Zabbix" w celu dystrybucji obciążenia lub zapewnienia lepszej dostępności usług.
Oprogramowanie Zabbix jest napisane w języku C.
W przypadku ZABBIX każda pobrana wartość odpowiada pozycji . Z każdym z nich można skojarzyć jeden lub więcej testów zwanych wyzwalaczami . O działanie może być związane z wyzwalaczy , które pozwala na specjalnej obróbce (notyfikacji, rekultywacji, ...) dla każdego anomalia może wystąpić. Na przykład, jeśli maszyna stanie się niedostępna, możemy wysłać wiadomość e-mail do administratora systemu. Jeśli ładowanie programu staje się zbyt ważne przez zbyt długi czas, możemy uruchomić program, który będzie spłukiwał ...
Gromadzenie informacji jest zatem pierwszym przeprowadzanym przetwarzaniem (możemy dodać do tego zbioru pierwszy poziom transformacji zebranych danych);
Przechowywanie tych informacji w bazie danych jest drugim zabiegiem;
Analiza warunków wywołujących zdarzenie będzie trzecim krokiem;
Przywrócenie zdarzeń, ale także wskaźników zebranych w postaci wykresu w czasie, zostanie przeprowadzone przez front-end WWW.
Te elementy są wartościami pobierane przez serwer Zabbix. Można wybrać ich źródło. Mogą to być odpowiedzi lub pułapki SNMP, kody powrotne lub wynik programów zewnętrznych, wartości żądane od agenta ZABBIX, liczniki JMX, wartości wyliczone (wzór matematyczny kilku wskaźników surowych), wartości zagregowane (agregacja danych ). '' wartość zebrana dla grupy urządzeń), ...
Dla każdej pozycji można określić czas rejestracji na podstawie każdej raportowanej wartości.
Te wyzwalacze są testy na jedną lub więcej pozycji . Mogą mieć nałogi. Pozwala to uniknąć generowania alertów dla maszyn, jeśli sieć nadrzędna jest uszkodzona. W wyzwalające stanowi podstawę analizy warunków wyzwalania zdarzenie. Ponieważ analiza ta jest przeprowadzana na zebranych danych, możemy oprzeć naszą analizę na jednym lub kilku wskaźnikach pochodzących z jednego lub więcej urządzeń: jest to funkcja korelacji .
Działanie może być uruchomiony na 4 rodzaje wydarzeń: imprez odkrycie, środek wydarzeń samodzielnej rejestracji, wydarzenia wewnętrzne i wyzwalaczy . W tym drugim przypadku można zdefiniować działania powiadamiające (wysłanie wiadomości e-mail, zdarzenie na komunikatorze, utworzenie biletu na incydent itp.) Oraz działania naprawcze (próba automatycznego skorygowania anomalii).
Akcje umożliwiają projektowanie scenariuszy eskalacji, takich jak:
ZABBIX jest rozpowszechniany na podstawie Powszechnej Licencji Publicznej GNU w wersji 2 ( GPL v.2).