2 Co nowego w Zabbix 8.0

Zabbix 8.0.0 jest kontynuacją Zabbix 7.4.0, dodając nowe funkcje i ulepszenia.

Zobacz niekompatybilne zmiany dla tej wersji.

Widżet wykresu rozrzutu

Widżet Scatter plot został dodany do widżetów pulpitu. Wyświetla zależność między dwiema metrykami poprzez nanoszenie pojedynczych punktów danych wzdłuż osi X i Y. Pomaga to ujawnić wzorce, skupiska, korelacje i wartości odstające w zbiorze danych.

Odwrócenie osi Y dla widżetu Graph

Wykresy w widżecie Graph mogą być teraz wyświetlane z odwróconymi wartościami osi Y. Nowe ustawienie Odwróć wartości umożliwia pomnożenie wartości osi Y przez −1 bez zmiany oryginalnych danych.

Zobacz także: Ulepszenia widżetu Graph.

Szablony

Nowe szablony

Zaktualizowane szablony

Pozycje

Typ danych JSON

Zabbix obsługuje teraz JSON jako typ danych dla wartości pozycji.

Wcześniej wartości JSON były zbierane przez pozycje tekstowe i przechowywane jako ciągi znaków z limitem 64 KB. Teraz Zabbix może przechowywać wartości JSON natywnie z limitem 128 MiB, a także odrzucać nieprawidłowe wartości JSON (np. zawierające klucze bez cudzysłowów, końcowe przecinki, niedopasowane nawiasy).

Typ danych JSON jest obsługiwany przez wszystkie typy pozycji i prototypy pozycji (z wyjątkiem Calculated) oraz jest dostępny w eksporcie danych w czasie rzeczywistym i konektorach. Wartości JSON mogą być przechowywane we wszystkich obsługiwanych bazach danych oraz w Elasticsearch. Jeśli używasz TimescaleDB, zobacz uwagi dotyczące aktualizacji.

Należy pamiętać, że pozycje JSON nie mogą być używane w wyzwalaczach; można jednak wyodrębniać pola JSON za pomocą pozycji zależnych, które mają typ danych inny niż JSON, i używać ich w wyzwalaczach.

Pozycje zwracające ciąg JSON (net.if.discovery, vfs.file.get itd.) nadal są pozycjami tekstowymi; w razie potrzeby można jednak zmienić je na JSON.

Więcej szczegółów oraz limity danych JSON można znaleźć w konfiguracji pozycji.

Parametr type dla wykrywania dysków S.M.A.R.T.

Pozycja smart.disk.discovery (wtyczka S.M.A.R.T. dla Zabbix agent 2) akceptuje teraz opcjonalny parametr type, aby określić wartość używaną do skanowania dysków.

Wtyczki

Wtyczka Ceph

Ta wtyczka działa teraz w dwóch trybach:

  • native - Ten tryb używa biblioteki go-ceph do bezpośredniej komunikacji z klastrem Ceph przy użyciu natywnego API Ceph (protokół msgr2). Jest to zalecany tryb dla nowoczesnych instalacji Ceph, ale jest obsługiwany tylko w systemie Linux i począwszy od Ceph 16.
  • restful (przestarzały) - Ten tryb używa Ceph RESTful API do komunikacji. Jest to tryb domyślny ze względu na zachowanie wstecznej kompatybilności, ale nie będzie działać z Ceph w wersji 20 (Tentacle) lub nowszej z powodu usunięcia modułu mgr/restful.

O tym, którego trybu użyć, decyduje wartość parametru mode (native/restful):

  • Plugins.Ceph.Default.Mode=native - ustaw natywny tryb dla wtyczki
  • Plugins.Ceph.Sessions.<SessionName>.Mode=native - ustaw natywny tryb dla nazwanej sesji

Należy pamiętać, że zestaw poświadczeń użytkownika różni się dla każdego trybu i nie są one ze sobą kompatybilne. Parametr Plugins.Ceph.InsecureSkipVerify jest ignorowany w trybie native, ponieważ bezpieczeństwo połączenia jest definiowane po stronie klastra Ceph przez protokół msgr2 (domyślnie bezpieczny).

Należy pamiętać, że wtyczka Ceph dla Zabbix agent 2 jest teraz wtyczką ładowalną i wymaga dodatkowych kroków instalacyjnych. Wynika to z wymogu pakietu librados (dla trybu native). Szczegóły znajdują się w pliku readme wtyczki Ceph.

Wtyczka MongoDB

Zabbix agent 2 wtyczka MongoDB oferuje wiele usprawnień:

  • Pełne wsparcie dla standardowego parsowania URI MongoDB, z obsługą schematów mongodb:// i mongodb+srv://.
  • Automatyczne wykrywanie węzłów zestawu replik MongoDB, co zwiększa możliwości monitorowania klastrów MongoDB.
  • Obsługa uwierzytelniania x509, umożliwiająca bezpieczne połączenia z MongoDB przy użyciu certyfikatów klienta.

Wtyczka Oracle

Oracle plugin w Zabbix agent 2 obsługuje teraz szyfrowane połączenia z bazami danych Oracle przy użyciu protokołu TCPS (TLS). Dodaje to możliwość monitorowania instancji Oracle przez gniazda zabezpieczone TLS, zwiększając bezpieczeństwo zdalnego monitorowania.

Wtyczka Redis — obsługa TLS i walidacja podczas uruchamiania

Do wtyczki Redis dla Zabbix agent 2 dodano obsługę TLS.

Zaimplementowano walidację konfiguracji TLS wtyczki podczas uruchamiania oraz ulepszono komunikaty walidacyjne/błędów. Nieprawidłowa logika konfiguracji (na przykład użycie typu połączenia verify_full bez określenia TLSCAFile) może uniemożliwić uruchomienie Zabbix agent 2.

Tryb wykonywania testowego dla ładowalnych pluginów

Ładowalne pluginy można teraz uruchamiać w trybie testowym przy użyciu flagi -t (--test), przekazując jako argument klucz pozycji. W tym trybie plugin działa do celów debugowania i programowania, a pliki konfiguracyjne pluginu są ignorowane.

Wykrywanie niskiego poziomu

Pole wyboru Convert to JSON w formularzach wykrywania

Nowe pole wyboru Convert to JSON zostało dodane do formularza reguły wykrywania oraz formularza prototypu wykrywania, które jest wyświetlane po wybraniu opcji "HTTP agent" z listy rozwijanej Type. Ta opcja pozwala oznaczyć pobrane dane do automatycznej konwersji do formatu JSON przed dalszym przetwarzaniem.

Obsługa makr w zagnieżdżonym wykrywaniu niskiego poziomu

Makra wykrywania niskiego poziomu są teraz obsługiwane w zagnieżdżonych regułach wykrywania niskiego poziomu w:

Edytowalne tagi dla wyzwalaczy utworzonych przez wykrywanie niskiego poziomu

Wyzwalacze utworzone z prototypów wyzwalaczy mogą teraz mieć tagi dodawane ręcznie. Tagi dziedziczone z prototypów wyzwalaczy są nadal stosowane automatycznie. Tagi dodane ręcznie mogą być modyfikowane w odkrytych wyzwalaczach i będą uwzględniane w tablicach tagów zdarzeń oraz dostępne dla funkcji obsługujących tagi, takich jak filtry, widżety pulpitu i makra powiadomień.

Procesy

Buforowanie i ponowne użycie EngineID SNMPv3

Zabbix buforuje teraz mapowania EngineID SNMPv3 → IP i będzie próbował ponownie używać zbuforowanych EngineID przy kolejnych kontrolach SNMPv3, ograniczając ruch sondujący i poprawiając wydajność pollera. Jeśli ponownie użyty EngineID nie odpowiada, poller wraca do sondowania EngineID i może usuwać nieaktualne wpisy po zmianach interfejsu lub w przypadku utrzymujących się błędów.

Udoskonalone ograniczanie proxy podczas odzyskiwania pamięci podręcznej historii

Logika ograniczania proxy została udoskonalona, aby poprawić stabilność serwera podczas odzyskiwania pamięci podręcznej historii. Gdy wykorzystanie pamięci podręcznej historii osiągnie próg ograniczania, serwer nadal przestaje przyjmować dane z proxy, tak jak wcześniej. Gdy wykorzystanie pamięci podręcznej spadnie do 60%, serwer zaczyna przetwarzać listę ograniczania, ale nadal może odrzucać przesyłanie danych z proxy zawierające bardzo duże partie danych (w przybliżeniu ponad 10 tys. rekordów), dopóki obciążenie pamięci podręcznej nie zmniejszy się bardziej. Ta zmiana zmniejsza ryzyko powtarzających się przeciążeń pamięci podręcznej podczas odzyskiwania przez serwer.

Zwiększono maksymalny limit czasu dla zabbix_get i zabbix_js

Maksymalna wartość parametru timeout dla narzędzi wiersza poleceń zabbix_get i zabbix_js została zwiększona do 600 sekund.

Zoptymalizowane housekeeping

Housekeeping został zoptymalizowany poprzez przeniesienie tworzenia zadań housekeepera do wyzwalaczy bazy danych. Gdy pozycje (w tym reguły wykrywania niskiego poziomu), wyzwalacze, usługi lub reguły wykrywania sieci są usuwane, wyzwalacze bazy danych (zamiast jawnych wywołań na poziomie aplikacji) wypełniają teraz tabelę housekeeper zadaniami czyszczenia. Szczegóły znajdują się w opisie procedury housekeeping.

Housekeeper usuwa teraz również zdarzenia wykrywania sieci wygenerowane na podstawie wykrytych hostów lub usług, które zostały następnie usunięte, a także wszystkie zdarzenia powiązane z problemami wyzwalaczy, które również zostały usunięte (wcześniej usuwane były tylko same problemy; powiązane zdarzenia były usuwane dopiero po upływie okresu Trigger data storage period housekeepera).

Ręczne zamknięcie — tagi wyzwalacza dziedziczone przez zdarzenia odtworzenia

Zdarzenia odtworzenia utworzone po ręcznym zamknięciu dziedziczą tagi wyzwalacza oprócz tagów pozycji i hosta. Tagi te są obecne w tablicy tagów zdarzenia i są dostępne dla makr powiadomień, takich jak {EVENT.RECOVERY.TAGS} oraz {EVENT.RECOVERY.TAGSJSON}.

Buforowanie zapytań DNS dla demonów Zabbix

Zabbix serwer, Zabbix proxy i Zabbix agent otrzymały obsługę używania resolvera c-ares dla wszystkich żądań DNS, zapewniając buforowanie zapytań DNS oraz ulepszone przełączanie awaryjne resolvera, gdy Zabbix jest zbudowany z --with-ares. Buforowanie zapytań DNS wymaga c-ares 1.26.0 lub nowszego.

Obsługa kompilacji c-ares w systemie Windows

Zabbix agent można teraz skompilować z resolverem c-ares w systemie Microsoft Windows. c-ares można zainstalować za pomocą vcpkg, a kompilacja agenta obsługuje zarówno ARES=<vcpkg prefix>, jak i oddzielne ścieżki ARESINCDIR/ARESLIBDIR dla katalogów plików nagłówkowych i bibliotek.

Uwierzytelnianie

Importowalne certyfikaty SAML do logowania jednokrotnego

Użytkownicy typu Super admin mogą teraz importować certyfikaty i klucze prywatne bezpośrednio we frontendzie na potrzeby konfiguracji SAML. Do Administration > Authentication > SAML dodano trzy nowe pola:

  • Certyfikat IdP — certyfikat X.509 przedstawiany przez dostawcę tożsamości
  • Certyfikat SP — certyfikat dostawcy usług używany do wymiany danych SAML
  • Klucz prywatny SP — klucz prywatny odpowiadający certyfikatowi SP

Te elementy sterujące umożliwiają dodawanie nowych wartości lub modyfikowanie istniejących z poziomu karty ustawień SAML. Certyfikaty i klucze prywatne są sprawdzane przed zapisaniem w wybranym backendzie pamięci masowej; nieprawidłowe lub uszkodzone wartości są odrzucane wraz z objaśniającym błędem.

Widżety

Grupowanie markerów hostów na mapie geomap

Widget Geomap obsługuje teraz parametr Clustering, który pozwala kontrolować, w jaki sposób pobliskie markery hostów są łączone w jeden marker z licznikiem. Ustawiając poziom powiększenia mapy dla grupowania, można zachować czytelność dużych map i utrzymać precyzyjną widoczność po przybliżeniu.

Kolumny agregowane w Top items

Widget Top items może teraz grupować wzorce pozycji w pojedynczą agregowaną kolumnę lub wiersz, co ułatwia prezentowanie połączonych metryk (na przykład: całkowity ruch przychodzący na wszystkich interfejsach sieciowych hosta). Podczas konfigurowania kolumn pozycji dodano trzy nowe opcje: Agreguj kolumny, Funkcja agregacji kolumn oraz Nazwa kolumny łączonej.

Ulepszenia widgetu Graph

Widget Graph oferuje wiele usprawnień zwiększających użyteczność:

  • Pozycje w podpowiedzi danych wykresu, która pojawia się po najechaniu kursorem na wykres, są sortowane według wartości w kolejności malejącej.
  • Najechanie kursorem na pozycję w podpowiedzi powoduje wyróżnienie jej wykresu przy jednoczesnym przyciemnieniu pozostałych.
  • Wybranie pozycji w podpowiedzi rozgłasza jej dane do innych widgetów, które obsługują ich nasłuchiwanie.
  • Usunięto limit liczby pozycji wyświetlanych w podpowiedzi.
  • Nowe ustawienie Host names in labels pozwala wybrać, czy nazwy hostów mają być wyświetlane w podpowiedzi i legendzie wykresu.

  • Nowe ustawienie Invert values umożliwia odwrócenie wykresu.

Frontend

Nowe i osadzone czcionki

Zabbix zawiera teraz nowe i osadzone czcionki, które poprawiają czytelność, ładują się szybciej i wyświetlają dodatkowe języki frontend z minimalnym wpływem na układ. Dzięki osadzeniu czcionki te zapewniają również spójny wygląd w różnych systemach.

Nowe czcionki:
Starsze czcionki:

Nowe czcionki są używane w niemal wszystkich motywach. W razie potrzeby nowo dodane motywy Blue (classic) i Dark (classic) są dostępne ze starszymi czcionkami.

Rodzina czcionek dla treści o stałej szerokości i wykresów pozostaje bez zmian.

Walidacja wbudowana

Następujące formularze we frontendzie zostały dodane do zestawu formularzy obsługujących walidację wbudowaną:

Błędy danych wejściowych są wyświetlane natychmiast po wypełnieniu pól, co poprawia użyteczność i ogranicza liczbę błędów konfiguracyjnych.

Formularze modalne

W konfiguracji wykrywania niskiego poziomu formularz konfiguracji prototypu hosta jest teraz otwierany w modalnym oknie (wyskakującym oknie).

Dziedziczone tagi widoczne w hostach, szablonach, pozycjach i wyzwalaczach

Dziedziczone tagi są teraz wyświetlane i zwracane w spójny sposób w szablonach, hostach, pozycjach, scenariuszach WWW i wyzwalaczach. Tagi dziedziczone z łańcuchów szablonów/hostów są widoczne w Monitoring > Latest data. Filtrowanie według dziedziczonych tagów jest dostępne wszędzie tam, gdzie obsługiwane jest filtrowanie po tagach — w tym w sekcjach Monitoring > Latest data i Data collection, a także we wszystkich widżetach pulpitu, które umożliwiają filtrowanie według tagów hosta, pozycji, wyzwalacza lub scenariusza WWW — dzięki czemu wybór i podfiltrowywanie oparte na tagach działają tak samo niezależnie od tego, gdzie tag został zdefiniowany.

Karta Tags w formularzach konfiguracji szablonu, hosta i prototypu hosta udostępnia teraz element opcji pozwalający wybrać sposób prezentacji tagów: szablony pokazują Template tags / Inherited and template tags, a hosty i prototypy hostów pokazują Host tags / Inherited and host tags. Dziedziczone tagi są wizualnie wyróżnione nową ikoną obramowanego dokumentu obok etykiety tagu.

Widżety Graph i Pie chart zawierają nowe ustawienie Item tags.

Pozycjonowanie podpowiedzi

Podpowiedzi można teraz przestawiać, przeciągając je w nowe miejsce. Dotyczy to na przykład podpowiedzi Graph, a także podpowiedzi z opisami w sekcjach Latest Data lub Problems.

Dokumentacja

Skonsolidowane strony dokumentacji dla wydań pobocznych

Dokumentacja wydań dla wersji pobocznych głównego wydania Zabbix będzie teraz gromadzona odpowiednio na pojedynczych stronach dokumentacji dotyczących nowych funkcji i uwag dotyczących aktualizacji.