Witaj na blogu Hawatel.

4 czerwca 2024 | Monitorowanie / Zarządzanie Infrastrukturą / Ogólne

Zabbix 7.0 już wydany! Co w nim nowego? Poznaj najważniejsze funkcje i ulepszenia

Zabbix 7.0, najnowsza wersja popularnego narzędzia do monitorowania IT, właśnie ujrzała światło dzienne. Przynosi ona szereg nowych funkcji oraz ulepszeń, które znacząco podnoszą możliwości monitoringu i zarządzania infrastrukturą IT. Z nowej wersji szczególnie mogą cieszyć się firmy klasy enterprise. Dlaczego? Przeczytaj nasz artykuł, aby dowiedzieć się więcej o najważniejszych zmianach i usprawnieniach w Zabbix 7.0.

 

Jeśli interesuje Cię optymalizacja systemu Zabbix, sprawdź nasz e-book! Znajdziesz w nim liczne wskazówki i porady na tematy związane z tuningiem wydajności. Ebook dostępny jest tutaj.

 

Syntetyczny monitoring użytkowników sieciowych

 

Syntetyczny monitoring użytkowników sieciowych to technika monitorowania, która symuluje działania rzeczywistych użytkowników na stronach internetowych lub w aplikacjach webowych za pomocą skryptów, przydatna szczególnie do testów. 

 

Zabbix 7.0 przynosi szereg nowinek w tym zakresie, szczególnie:

 

  • Symulowanie interakcji prawdziwego użytkownika za pomocą prawdziwej przeglądarki.
  • Testowanie różnych aspektów strony internetowej lub aplikacji webowej – dostępność, wydajność, statusy transakcji i więcej.
  • Wykorzystanie Selenium WebDriver do syntetycznego monitorowania sieci (Selenium WebDriver używa przeglądarki bez interfejsu graficznego do przeprowadzania testów).
  • Nowy typ itemu - przeglądarka (browser), item przeglądarki używa JavaScript do zbierania danych monitorujących sieć w formacie JSON. Tworzone są itemy zależne do zbierania różnych metryk z głównego itemu przeglądarki.
  • Nowy typ informacji Binary może być używany do zbierania i przechowywania obrazów

 

syntetyczny monitoring zabbix

 

Asynchroniczny polling danych w Zabbix 7.0

 

Polling danych to inaczej regularne zbieranie danych (np. zbieranie danych z serwera co 30 sekund). Asynchroniczny polling danych w Zabbix 7.0 oznacza, że możliwe jest niezależne zbieranie wielu danych z wielu źródeł. Jest to szczególnie istotne dla rozbudowanych środowisk, ponieważ znacząco zwiększa wydajność i skalowalność systemu. 

 

Zabbix zbiera dane przez różne kolektory danych, takie jak pollery, trappery, pingery i inne. 

 

W Zabbix 7.0 wprowadzono specyficzne typy pollerów:

  • SNMP poller: Zbiera dane za pomocą protokołu SNMP przez UDP, zoptymalizowany do pracy z urządzeniami sieciowymi (SNMPGET, SNMPBULKGET).
  • Zabbix Agent poller: Zbiera dane z pasywnych agentów Zabbixa, wykorzystując protokół komunikacyjny Zabbixa, zoptymalizowany do komunikacji z agentami w trybie pasywnym.
  • HTTP check poller: Zbiera dane ze stron internetowych, wykorzystując bibliotekę libcurl, zoptymalizowany do pracy z zapytaniami webowymi.

 

Każdy typ pollera jest teraz procesem asynchronicznym, co pozwala na zbieranie do 1000 wartości w pojedynczym cyklu przez każdy proces. Wartość maksymalnej liczby jednoczesnych sprawdzeń może być określona przez parametr MaxConcurrentChecksPerPoller, którego domyślna wartość to 1000. Asynchroniczne procesy pozwalają na wykonywanie zadań niezależnie od siebie, bez blokowania głównego programu, co znacznie zwiększa efektywność i szybkość działania systemu.

 

Wysoka dostępność (high availability, HA) i równoważenie obciążenia (load balancing, LB) w Zabbix 7.0

 

Zabbix 7.0 koncentruje się na wysokiej dostępności i równoważeniu obciążenia, co biznesowo przekłada się na bardziej niezawodne i skalowalne monitorowanie infrastruktury IT, minimalizując przestoje i zapewniając ciągłość działania kluczowych usług.

 

Nowości w grupach proxy:

  • Minimalna liczba online proxy: Można skonfigurować minimalną liczbę proxy online, aby grupa proxy była uznawana za online.
  • Wykluczanie starszych wersji proxy: Proxy w starszych wersjach (oraz hosty do nich przypisane) będą wykluczane z rebalansowania hostów.
  • Stan offline grupy proxy: Jeśli grupa proxy jest offline (mniej niż minimalna liczba proxy online), hosty przypisane do tej grupy przestaną być monitorowane.

 

Przypisywanie hostów jest wyzwalane przez:

  • Zmianę statusu proxy
  • Zmianę statusu hosta

 

Hosty są równoważone między proxy w oparciu o liczbę hostów monitorowanych przez każdy proxy w grupie.

 

Aby zapobiec ciągłemu rebalansowaniu hostów, zostanie zaimplementowana następująca logika:

  • Brak rebalansowania obciążenia, jeśli część hostów monitorowanych przez proxy przechodzi w tryb offline.
  • Jeśli host przechodzi w tryb online, zostanie przypisany do proxy z najmniejszą liczbą hostów.

 

Agent musi być skonfigurowany do akceptowania połączeń od proxy w grupie proxy:

  • Tryb aktywnego agenta: Parametr ServerActive musi zawierać IP przynajmniej jednego (najlepiej kilku) węzłów proxy grupy.
  • Tryb pasywnego agenta: Parametr Server musi zawierać adresy IP wszystkich węzłów proxy w grupie proxy.

 

Bufor pamięci proxy w Zabbix 7.0

 

W Zabbix 7.0 wprowadzone zostaną nowe tryby bufora proxy:

 

  • Dysk: Aktualne działanie
  • Pamięć: Dane przechowywane są wyłącznie w pamięci współdzielonej
  • Hybrydowy: Bufor działa w trybie pamięciowym z bazą danych jako kopią zapasową

 

Każda wartość zebrana przez proxy Zabbixa przechodzi przez bazę danych. Wymagana jest baza danych (MySQL, Postgres lub SQLITE) na każdym proxy. W przypadku dużych proxy może to powodować wąskie gardło. 

 

Dane historyczne są przechowywane w pamięci współdzielonej i przesyłane bezpośrednio z niej.Jeśli buforowi zabraknie pamięci, stare dane zostaną odrzucone.

 

Dane są wysyłane bezpośrednio do serwera Zabbix. Bufor normalnie działa w trybie pamięciowym i jest opróżniany do bazy danych, jeśli nie ma wystarczająco dużo miejsca. 

 

Scentralizowana kontrola timeoutów zbierania danych

 

W Zabbix 7.0 możliwe będzie centralne kontrolowanie timeoutów zbierania danych. Dotychczasowy ogólny timeout określany w pliku konfiguracyjnym będzie miał wpływ na całe zbieranie danych na serwerze lub proxy. Jednak Zabbix 7.0 wprowadzi timeout na poziomie itemu dla większości sprawdzeń, co pozwoli na dostosowanie czasu oczekiwania indywidualnie dla każdego itemu. 

 

Timeout będzie można definiować za pomocą interfejsu użytkownika Zabbixa w zakresie od 1 do 600 sekund. Możliwe będzie także określenie timeoutu na poziomie serwera globalnie dla wszystkich itemów, na proxy dla itemów monitorowanych przez nie, oraz dla każdego itemu indywidualnie. To nowe rozwiązanie pozwoli na lepszą kontrolę i dostosowanie czasu oczekiwania do specyficznych potrzeb monitorowanych zasobów. 

 

Dodatkowo, timeout na poziomie proxy będzie miał wpływ na wszystkie itemy zbierane przez to proxy, ale każdy typ itemu będzie można dostroić indywidualnie, a timeouty będą działać jako wartości domyślne, z możliwością wymuszonego nadpisania. Dzięki temu użytkownicy Zabbixa będą mieli większą elastyczność w zarządzaniu timeoutami i lepszą kontrolę nad procesem zbierania danych.

 

timeouts zabbix

 

Równoległe wykrywanie sieci

 

W Zabbixie 7.0 wprowadzono równoległe wykrywanie sieci, co pozwoli przyspieszyć proces wykrywania na dużych segmentach sieci. 

 

W ramach aktualizacji Zabbixa 7.0 pojawią się nowe procesy, takie jak discovery manager i discovery worker (wcześniej znany jako discoverer process). 

 

Możliwość jednoczesnego przetwarzania będzie konfigurowana na poziomie reguły odkrywania. Dodatkowo, zostaną wprowadzone nowe wewnętrzne itemy, takie jak liczba sprawdzeń sieciowych w kolejce odkrywania oraz wykorzystanie discovery managera i workera. Dzięki tym nowym funkcjom administratorzy będą mogli lepiej zarządzać procesem odkrywania sieciowego, zwłaszcza w przypadku dużych i złożonych sieci.

 

Wysyłanie metryk przez HTTP

 

W Zabbixie 7.0 wprowadzono nową metodę API - history.push:

 

  • Dane otrzymane przez metodę history.push mogą być akceptowane tylko przez itemy typu Zabbix trapper (przechwytywanie) oraz typu HTTP Agent, gdy włączona jest opcja trappingu.
  • Adres IP nadawcy będzie weryfikowany zgodnie z parametrem konfiguracji Pozwól na hosty.
  • Uprawnienia do wykonywania metody API można dodać/usunąć w konfiguracji ról użytkownika.

 

Przekazywanie niestandardowych danych wejściowych do skryptów frontendowych

 

Skrypty mogą używać makr {MANUALINPUT} do odwoływania się do niestandardowych danych wejściowych. Dane wejściowe mogą być określone w formie listy opcji oddzielonych przecinkami lub mogą być dowolnym ciągiem znaków pasującym do wzorca.

 

Nowe sposoby wizualizacji danych

 

W Zabbix 7.0 wprowadzono różnorodne nowe widżety:

 

  • Plaster miodu (Honeycomb)
  • Miernik (Gauge)
  • Wykres kołowy
  • Nawigator hostów i itemów 
  • Najważniejsze wyzwalacze (Top triggers)

 

new widgets, zabbix

 

Dynamiczna nawigacja widgetami na dashboardzie

 

Wprowadzono nowy framework komunikacyjny dla widgetów, umożliwiający komunikację między nimi:

 

  • Widget może zachowywać się jako źródło danych dla innych widgetów
  • Informacje wyświetlane w widgetach tablicy rozdzielczej są dynamicznie aktualizowane na podstawie źródła danych
  • Widgety mogą służyć jako źródło danych dla hosta lub itemu.

 

Uwierzytelnianie dwuskładnikowe

 

Zabbix 7.0 oferuje wsparcie dla uwierzytelniania dwuskładnikowego (MFA). Autoryzacja oparta jest na jednorazowych hasłach czasowych (TOTP) i dokonywana za pomocą Duo Universal Prompt. 

 

mfa, zabbix

 

Inne funkcje i ulepszenia

 

  • Model licencjonowania Zabbixa został zaktualizowany do wersji GNU Affero General Public License w wersji 3 (AGPLv3)
  • Wprowadzono opcjonalne sprawdzanie aktualizacji serwera i interfejsu Zabbixa za pomocą sekcji/widgetu “Informacje systemowe”
  • Nowe itemy net.dns.perf i net.dns.get
  • Wsparcie dla makr użytkownika w prototypach itemów oraz nazwach itemów
  • Możliwość dostosowania mediów dla użytkowników JIT
  • Główne usprawnienia wydajności w sprawdzaniu uprawnień frontendu
  • HTTP Connector dla natywnych tematów Kafka
  • Poprawione zachowanie, gdy ta sama grupa hostów jest odkrywana przez wiele LLDs
  • Szybsze ponowne obliczanie statusu konserwacji hosta
  • Możliwość wykonywania poleceń zdalnych przez aktywnego agenta Zabbixa
  • Wykonywanie poleceń zdalnych za pomocą aktywnych sprawdzeń
  • Poprawiona obsługa itemów nieobsługiwanych w obliczeniach agregacji
  • Rozszerzone dopasowywanie wartości obliczeń agregacji i inne ulepszenia
  • Możliwość przypisywania tagów podczas automatycznej rejestracji hosta
  • Wsparcie dla generowania raportów PDF 
  • Ulepszona obsługa komunikatów o błędach itemów za pomocą walidacji przedprocessingowej
  • Testowanie/walidacja plików konfiguracyjnych za pomocą wiersza poleceń
  • Nowe funkcje wyzwalaczy jsonpath i xmlpath
  • ...I wiele więcej!

 

Jeśli interesuje Cię wdrożenie Zabbix lub chcesz dokonać upgrade'u do wersji 7.0, skontaktuj się z nami

Sprawdź również:

IT infrastructure, zabbix, nagios, border

15 kwietnia 2024 | Blog

Zabbix vs. Nagios. Który z nich wybrać?

Okladka ebooka Zabbix. Strategie optymalizacji systemu monitorowania

29 lutego 2024 | Wiedza

Zabbix. Strategie optymalizacji systemu monitorowania

paying using mobile phone

7 września 2023 | Case Study

Wdrożenie Zabbix w sieci sklepów sprzedaży detalicznej

Zabbix certificate for Hawatel

2 lutego 2023 | Blog

Hawatel certyfikowanym partnerem Zabbix!

Pozostańmy w kontakcie.

Dołącz do naszego newslettera! Przesyłamy ciekawe treści ze świata IT.