13.04.20224 min

Adrian UrbaniakIT AdministratorPruftechnik-Technology

Jak monitorować infrastrukturę IT za pomocą systemu Zabbix

Poznaj Zabbix — bezpłatny system klasy enterprise z otwartym oprogramowaniem na licencji GPL drugiej edycji do monitorowania infrastruktury IT.

Jak monitorować infrastrukturę IT za pomocą systemu Zabbix

Jeżeli zarządzasz środowiskiem złożonym z więcej niż kilku serwerów, usług na pewno znany jest Ci scenariusz, kiedy to pracownik Twojej organizacji informuje Cię, że jakiś serwer lub usługa jest niedostępna, lub nie działa prawidłowo. Moim zdaniem to najgorsze co może usłyszeć zwłaszcza z samego rana administrator. Zwiastuje to często ciężki dzień w pracy, czyli tak zwane gaszenie pożaru. 


Jak tego uniknąć?

Tego typu sytuacja wymusza na administratorze działanie reaktywne, czyli podejmowane już po fakcie wystąpienia awarii infrastruktury. Znacznie lepsze jest podejście proaktywne, które charakteryzuje się przewidywaniem możliwych problemów i im zapobieganie. 

Możesz sobie zadać pytanie „co możesz zrobić?” Nie będziesz przecież 24h przez 7 dni w tygodniu przeglądał logów i alarmów z wielu rozproszonych systemów, które masz pod swoją opieką.

Tutaj właśnie na scenę wchodzi system monitoringu infrastruktury IT. Jego zadaniem, jest zbieranie, agregowanie i analiza wszelkich zdarzeń. System monitoringu może nadzorować m.in.:

  • Serwery. 
  • Sprzęt sieciowy (switch’e, router’y, NGFW itp.).
  • Serwery, domeny WWW. 
  • Endpointy API.
  • Kontenery dockera.
  • Klastry Kubernetes.
  • Drukarki np. poziom materiałów eksploatacyjnych. 
  • UPS, systemy AC.


Poprawne skonfigurowanie oraz wdrożenie takiego systemu pozwoli Ci reagować, nawet zanim użytkownicy końcowi zauważą problem z dostępnością usług. 


Co wybrać i dlaczego?

Wpisując w Google frazę "monitoring IT” znajdziesz wiele artykułów oraz systemów takich jak Datadog,  Nagios, Cacti, Icinga, OpenNSM oraz Zabbix. Sam stanąłem przed takim wyzwaniem kilka lat temu, kiedy konieczny okazało się wdrożenie jakiegoś  systemu monitoringu  w mojej organizacji. Stojąc w obliczu tego wyzwania, przetestowałem wiele projektów i ostatecznie do wdrożenia wybrałem Zabbixa. Wśród zalet można wymienić:

  • Licencje GPLv2
  • Popularność jest to rozwiązanie używane m.in. przez takie globalne organizacje jak Dell, ICANN, Orange, T-Systems, Salesforce, a więc wiodące marki z sektora IT.
  • Duże możliwości integracji. Dostępne Out of Box template’y dla urządzeń wielu producentów sprzętu, jak i oprogramowania.
  • Wsparcie wielu protokołów.
  • Monitorowanie zarówno dostępności, jak i wydajności.
  • Network Disovery (automatyczna rejestracja agentów, wykrywanie systemów plików, interaface’ów sieciowych i SNMP OIDs).
  • Skalowalność.
  • Duże możliwości dostosowania prezentacji danych (wykresy, tabele, statystyki itp.). 
  • Bogate możliwości wysyłania alarmów w razie wykrycia anomalii, wiele możliwości integracji komunikatów tak jak m. n. Microsoft Teams, Slack, Jabber, modemów SMS i innych. 
  • Integracja z Microsoft Active Directory on-premise I Azure Active Directory.
  • REST API.


To wszystko jest dostępne zupełnie za darmo, tak jak podaje producent Zabbix to system klasy enterprise czemu ciężko zaprzeczyć biorąc pod uwagę wszystkie możliwości, jakie oferuje ogromne wsparcie społeczności skupionej wokół tego projektu. 


Wsparcie techniczne

System Zabbix jest wydawany jako wolne i otwarte oprogramowanie na licencji GPL drugiej edycji. Użytkownicy mogą uzyskać wsparcie na dedykowanym forum projektu, gdzie developerzy zaangażowani w rozwój oprogramowania oraz sami użytkownicy końcowi dzielą się rozwiązaniami pojawiających się problemów.

Wychodząc naprzeciw klientom korporacyjnym, producent oferuje też kilka planów komercyjnego wsparcia. W zależności od wybranego planu mamy dostęp do dedykowanego wsparcie inżyniera systemowego poprzez dostęp do szkoleń, a nawet możliwej wizyty inżyniera w siedzibie klienta. Więcej na temat dostępnych planów można znaleźć tutaj >>.

Dzięki temu, że Zabbix posiada pełne wsparcie producenta, może być z powodzeniem stosowany w środowisku korporacyjnym, gdzie jest to nie rzadko warunek konieczny.


Architektura systemu Zabbix

Zabbix jest typowym reprezentantem modelu klient-serwer, jednak ma pewne możliwości działania w sytuacji braku dostępu do centralnego serwera. Tą opcją jest Zabbix Proxy Server, jest to serwer pośrednik agregujący w buforze dyskowym dane z przypisanych urządzeń czy posługując się nomenklaturą Zabbixa hostów.

Proxy Server może zbierać informacje z hostów, dopóki nie zapełni się dysk maszyny na, której jest zainstalowany. Po odzyskaniu łączności z głównym serwerem proxy przesyła zebrane dane, po czym są one przetworzone i zapisane w głównej bazie danych systemu. Dzięki temu Zabbix może działać niejako w architekturze rozproszonej

Typowym zastosowanie tej własności jest obsługa kilku lokalizacji geograficznych (np. oddziałów organizacji)
znajdujących się w sieci lokalnej za firewall’em. Elementem głównym jest Zabbix Server, z którym współpracują serwery Zabbix Proxy.

Hosty mogą być monitorowane przez agentów lub bez ich zastosowania np. przez bardzo popularny protokół SNMP. Stosowany głównie w sprzęcie sieciowym i drukarkach. Zabbix Agent jest małym programem dostępnym dla wszystkich wiodących systemów operacyjnych działającym jako usługa systemu Windows lub daemon w Linuxie.

Jego zadanie jest zbieranie i przesyłanie w określonych interwałach danych z monitorowanych hostów do głównego serwera Zabbixa, gdzie są zapisywane w bazie danych. Taka architektura pozwala na uniknięcie problemów w razie braku dostępu do Internetu lub połączenia site2site VPN między lokalizacjami.

W takiej sytuacji dane metryk mogą być gromadzone na dysku w buforze proxy servera. W momencie odzyskania połączenia do serwera proxy przesyła wszystkie zebrane dane do centralnego serwera. Logując się do panelu zarządzania, nie zauważymy dzięki temu żadnych symptomów zaistniałej awarii. 

Kolejną zaletą zastosowania serwera proxy jest zmniejszenie obciążenia głównego serwera, ponieważ nie musi on przetwarzać zapytań dla każdego agenta. Tę rolę przejmuję proxy, natomiast serwer otrzymuje dane wynikowe. Odpowiednie zaprojektowanie i wdrożenie Zabbixa zapewnia duży poziom skalowalności.


Co dalej?

Mam nadzieje, że to teoretyczne wprowadzenie zachęciło Cię, do zgłębienia zagadnień związanych z monitorowaniem stanu infrastruktury IT.  W następnej części zajmiemy się stroną praktyczną.  Jak zaplanować i przeprowadzić wdrożenie Zabbixa (najnowsze wydanie w chwili publikacji nosi numer 6.0 LTS) w Twojej organizacji, podłączyć przekładowy serwer, skonfigurować podstawowe metryki i powiadomienia uwzględniając najlepsze praktyki.

<p>Loading...</p>