7 Procedura aktualizacji
Omówienie
Ta sekcja zawiera informacje dotyczące aktualizacji Zabbix 7.0:
- Przy użyciu pakietów dla Red Hat Enterprise Linux lub Debian/Ubuntu
- Przy użyciu źródeł
- Przy użyciu kontenerów
Powiązane instrukcje:
- Dla serwerów w klastrze wysokiej dostępności (HA) zobacz Aktualizacja klastra HA
- Dla bazy danych TimescaleDB zobacz Aktualizacja schematu TimescaleDB
Aktualizacja agentów Zabbix jest zalecana, ale nie jest obowiązkowa.
Aktualizacja proxy Zabbix jest wysoce zalecana. Serwer Zabbix w pełni obsługuje proxy w tej samej głównej wersji co serwer. Serwer Zabbix obsługuje również proxy, które nie są starsze niż wersja poprzedniego wydania LTS serwera Zabbix, ale z ograniczoną funkcjonalnością (zbieranie danych, wykonywanie zdalnych poleceń, natychmiastowe sprawdzanie wartości pozycji). Aktualizacja konfiguracji jest również wyłączona, a nieaktualne proxy będą działać tylko ze starą konfiguracją.
Proxy starsze niż poprzednie wydanie LTS serwera Zabbix lub nowsze niż główna wersja serwera Zabbix nie są obsługiwane. Serwer Zabbix będzie ignorował dane z nieobsługiwanych proxy, a cała komunikacja z serwerem Zabbix zakończy się niepowodzeniem z ostrzeżeniem. Więcej informacji można znaleźć w sekcji Version compatibility.
Aby zminimalizować przestoje i utratę danych podczas aktualizacji, zaleca się zatrzymanie, zaktualizowanie i uruchomienie serwera Zabbix, a następnie zatrzymywanie, aktualizowanie i uruchamianie proxy kolejno, jeden po drugim. Podczas przestoju serwera działające proxy będą kontynuować zbieranie danych. Gdy serwer zostanie ponownie uruchomiony i będzie działał, nieaktualne proxy wyślą dane do nowszego serwera (konfiguracja proxy nie zostanie jednak zaktualizowana) i pozostaną częściowo funkcjonalne. Wszelkie powiadomienia o problemach podczas przestoju serwera Zabbix zostaną wygenerowane dopiero po uruchomieniu zaktualizowanego serwera.
Jeśli proxy Zabbix jest uruchamiany po raz pierwszy i plik bazy danych SQLite jest brakujący, proxy utworzy go automatycznie.
Uwaga: jeśli proxy Zabbix używa SQLite3 i podczas uruchamiania wykryje, że istniejący plik bazy danych ma starszą wersję niż wymagana, automatycznie usunie plik bazy danych i utworzy nowy. W związku z tym dane historyczne zapisane w pliku bazy danych SQLite zostaną utracone. Jeśli wersja proxy Zabbix jest starsza niż wersja pliku bazy danych, Zabbix zapisze błąd w logu i zakończy działanie.
W zależności od rozmiaru bazy danych, aktualizacja bazy danych do wersji 7.0 może potrwać długo.
Bezpośrednia aktualizacja do Zabbix 7.0.x jest możliwa z Zabbix 6.4.x, 6.2.x, 6.0.x, 5.4.x, 5.2.x, 5.0.x, 4.4.x, 4.2.x, 4.0.x, 3.4.x, 3.2.x, 3.0.x, 2.4.x, 2.2.x oraz 2.0.x. W przypadku aktualizacji z wcześniejszych wersji należy zapoznać się z dokumentacją Zabbix dla wersji 2.0 i wcześniejszych.
Należy pamiętać, że po aktualizacji niektóre integracje Zabbix z oprogramowaniem firm trzecich mogą zostać naruszone, jeśli zewnętrzne oprogramowanie nie jest zgodne z zaktualizowaną wersją Zabbix.
Poniżej dostępne są następujące uwagi dotyczące aktualizacji:
| Upgrade from | Read full upgrade notes | Most important changes between versions |
|---|---|---|
| 6.4.x | For: Zabbix 7.0 |
Minimalna wymagana wersja PHP została podniesiona z 7.4.0 do 8.0.0. Asynchroniczne pollery dla agent, HTTP agent, SNMP walk[OID] oraz nowo dodanego sprawdzania SNMP get[OID]. Oddzielna tabela bazy danych dla proxy. Zmieniono domyślną lokalizację pliku konfiguracji agenta dla systemu Windows. Oracle DB oznaczono jako przestarzałą. Usunięto stary typ wartości numerycznej (float). |
| 6.2.x | For: Zabbix 6.4 Zabbix 7.0 |
Minimalna wymagana wersja MySQL została podniesiona z 8.0.0 do 8.0.30. Biblioteka 'libevent_pthreads' jest wymagana dla serwer/proxy Zabbix. Przy pierwszym uruchomieniu po aktualizacji proxy Zabbix z SQLite3 automatycznie usuwa starą wersję bazy danych (wraz z całą historią) i tworzy nową. |
| 6.0.x LTS | For: Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalna wymagana wersja PHP została podniesiona z 7.2.5 do 7.4.0. Monitorowanie usług zostało znacząco przeprojektowane. Podczas aktualizacji trzeba utworzyć deterministyczne wyzwalacze. Jeśli w MySQL/MariaDB włączone jest binarne logowanie, wymaga to uprawnień superużytkownika lub ustawienia parametru zmiennej/konfiguracji log_bin_trust_function_creators = 1. Instrukcje dotyczące ustawienia tej zmiennej znajdują się w sekcji Database creation scripts. |
| 5.4.x | For: Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalne wymagane wersje baz danych zostały podniesione. Serwer/proxy nie uruchomi się, jeśli baza danych jest nieaktualna. Rejestr dziennika audytu zapisuje utracone wpisy z powodu zmiany struktury bazy danych. |
| 5.2.x | For: Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalne wymagane wersje baz danych zostały podniesione. Pozycje agregujące zostały usunięte jako osobny typ. |
| 5.0.x LTS | For: Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalna wymagana wersja PHP została podniesiona z 7.2.0 do 7.2.5. Algorytm haszowania haseł został zmieniony z MD5 na bcrypt. |
| 4.4.x | For: Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Wsparcie dla IBM DB2 zostało usunięte. Minimalna wymagana wersja PHP została podniesiona z 5.4.0 do 7.2.0. Minimalne wymagane wersje baz danych zostały podniesione. Zmieniono katalog plików PHP Zabbix. |
| 4.2.x | For: Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Usunięto typy mediów Jabber i Ez Texting. |
| 4.0.x LTS | For: Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Starsze proxy nie mogą już raportować danych do zaktualizowanego serwer. Nowsze agenty nie będą już mogły współpracować ze starszym serwer Zabbix. |
| 3.4.x | For: Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Biblioteki 'libpthread' i 'zlib' są teraz obowiązkowe. Wsparcie dla protokołu tekstowego zostało usunięte, a nagłówek jest obowiązkowy. Agenty Zabbix w wersji wcześniejszej niż 1.4 nie są już obsługiwane. Parametr Server w pasywnej konfiguracji proxy jest teraz obowiązkowy. |
| 3.2.x | For: Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Usunięto obsługę SQLite jako bazy zaplecza dla serwer/frontend Zabbix. Zamiast POSIX extended obsługiwane są wyrażenia regularne zgodne z Perl Compatible Regular Expressions (PCRE). Biblioteki 'libpcre' i 'libevent' są obowiązkowe dla serwer Zabbix. Dodano sprawdzanie kodu wyjścia dla parametrów użytkownika, zdalnych poleceń i pozycji system.run[] bez flagi 'nowait', a także dla skryptów wykonywanych przez serwer Zabbix. Java gateway Zabbix musi zostać zaktualizowany, aby obsługiwać nową funkcjonalność. |
| 3.0.x LTS | For: Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Aktualizacja bazy danych może być powolna, w zależności od rozmiaru tabeli historii. |
| 2.4.x | For: Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalna wymagana wersja PHP została podniesiona z 5.3.0 do 5.4.0. Parametr agenta LogFile musi być określony. |
| 2.2.x LTS | For: Zabbix 2.4 Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Usunięto rozproszone monitorowanie oparte na węzłach. |
| 2.0.x | For: Zabbix 2.2 Zabbix 2.4 Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 Zabbix 6.2 Zabbix 6.4 Zabbix 7.0 |
Minimalna wymagana wersja PHP została podniesiona z 5.1.6 do 5.3.0. Do poprawnego działania serwer wymagany jest MySQL z uwzględnianiem wielkości liter; do prawidłowego działania serwer Zabbix z bazą MySQL wymagany jest zestaw znaków utf8 oraz sortowanie utf8_bin. Zobacz database creation scripts. Wymagane jest rozszerzenie PHP 'mysqli' zamiast 'mysql'. |