1 Red Hat Enterprise Linux

Overzicht

Deze sectie biedt de stappen die nodig zijn voor een succesvolle upgrade van Zabbix 5.4.x naar Zabbix 6.0.x met behulp van officiële Zabbix-pakketten voor Red Hat Enterprise Linux.

Hoewel het upgraden van Zabbix-agenten niet verplicht is (maar wel aanbevolen wordt), moeten Zabbix-server en -proxies van dezelfde belangrijke versie zijn. In een server-proxyconfiguratie moeten de Zabbix-server en alle proxies worden gestopt en geüpgraded. Het is niet langer nodig om proxies actief te houden tijdens de upgrade van de server, omdat hun oude gegevens worden verwijderd tijdens de proxy-upgrade en er geen nieuwe gegevens worden verzameld totdat de proxyconfiguratie is gesynchroniseerd met de server.

Houd er rekening mee dat bij SQLite-databases op proxies historische gegevens van vóór de upgrade verloren gaan, omdat de upgrade van de SQLite-database niet wordt ondersteund en het SQLite-databasebestand handmatig moet worden verwijderd. Wanneer de proxy voor de eerste keer wordt gestart en het SQLite-databasebestand ontbreekt, wordt dit automatisch door de proxy aangemaakt.

Afhankelijk van de grootte van de database kan het enige tijd duren om de database te upgraden naar versie 6.0.

Zorg ervoor dat je voor de upgrade de relevante upgrade notes hebt gelezen!

De volgende upgrade-aantekeningen zijn beschikbaar:

Upgrade vanaf Lees de volledige upgrade-aantekeningen Belangrijkste wijzigingen tussen versies
5.4.x Voor:
Zabbix 6.0
Minimaal vereiste databaseversies verhoogd;
Server/proxy start niet als de database verouderd is;
Auditlogrecords verloren vanwege wijziging van de databasestructuur.
5.2.x Voor:
Zabbix 5.4
Zabbix 6.0
Minimaal vereiste databaseversies verhoogd;
Aggregate items verwijderd als afzonderlijk type.
5.0.x LTS Voor:
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Minimaal vereiste PHP-versie verhoogd van 7.2.0 naar 7.2.5.
4.4.x Voor:
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Ondersteuning voor IBM DB2 is stopgezet;
Minimaal vereiste PHP-versie verhoogd van 5.4.0 naar 7.2.0;
Minimaal vereiste databaseversies verhoogd;
Gewijzigde Zabbix PHP-bestandsdirectory.
4.2.x Voor:
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Jabber-, Ez Texting-media types verwijderd.
4.0.x LTS Voor:
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Oudere proxies kunnen geen gegevens meer rapporteren aan een geüpgradede server;
Nieuwere agenten kunnen niet langer werken met een oudere Zabbix-server.
3.4.x Voor:
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
'libpthread' en 'zlib'-bibliotheken zijn nu verplicht;
Ondersteuning voor het tekstprotocol is stopgezet en de kop is verplicht;
Versie vóór 1.4 van Zabbix-agenten worden niet langer ondersteund;
De Server-parameter in de passieve proxyconfiguratie is nu verplicht.
3.2.x Voor:
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Ondersteuning voor SQLite als backend-database is stopgezet voor Zabbix-server/frontend;
Perl Compatible Regular Expressions (PCRE) worden ondersteund in plaats van POSIX extended;
'libpcre' en 'libevent'-bibliotheken zijn verplicht voor Zabbix-server;
Exit-codecontroles toegevoegd voor gebruikersparameters, externe opdrachten en systeem.run[]-items zonder de 'nowait'-vlag, evenals door Zabbix-server uitgevoerde scripts;
Zabbix Java Gateway moet worden geüpgraded om nieuwe functionaliteit te ondersteunen.
3.0.x LTS Voor:
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
Database-upgrade kan langzaam zijn, afhankelijk van de grootte van de geschiedenistabel.
2.4.x Voor:
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
Minimaal vereiste PHP-versie verhoogd van 5.3.0 naar 5.4.0
LogFile-agentparameter moet worden gespecificeerd
2.2.x LTS Voor:
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
Gedistribueerde monitoring op basis van knooppunten verwijderd
2.0.x Voor:
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
Minimaal vereiste PHP-versie verhoogd van 5.1.6 naar 5.3.0;
Voor een goede werking van de Zabbix-server met een MySQL-database is een hoofdlettergevoelige MySQL-database vereist; tekenreeks utf8 en utf8_bin-collatie is vereist voor de Zabbix-server om correct te werken met een MySQL-database. Zie databasecreatie-scripts.
'mysqli'-PHP-extensie vereist in plaats van 'mysql'

Je wilt misschien ook de vereisten voor 6.0 controleren.

Tijdens de upgrade is het handig om twee parallelle SSH-sessies uit te voeren: een voor het uitvoeren van de upgradestappen en de andere voor het volgen van de server-/proxylogboeken. Voer bijvoorbeeld tail -f zabbix_server.log of tail -f zabbix_proxy.log uit in de tweede SSH-sessie om de nieuwste logboekvermeldingen en mogelijke fouten in realtime te bekijken. Dit kan van cruciaal belang zijn voor productieomgevingen.

Upgrade procedure

Sure, here are the steps to stop the Zabbix processes during the upgrade:

  1. Stop the Zabbix server by running the following command:

    systemctl stop zabbix-server
  2. If you are also upgrading the Zabbix proxy, stop the proxy process:

    systemctl stop zabbix-proxy

    Note that starting the upgraded server and having older unupgraded proxies report data to the newer server is no longer supported. The server will ignore data from unupgraded proxies. This practice was never recommended or supported by Zabbix and is now officially disabled.

Please make sure to execute these commands with the necessary permissions and consider any other procedures or preparations specific to your environment before performing the upgrade.

Certainly, backing up your Zabbix database is a crucial step before performing the upgrade. Here's how you can do it:

  1. Database Dump: Depending on the type of database you are using (MySQL, PostgreSQL, SQLite, etc.), you'll need to create a backup of your Zabbix database. This is typically done by performing a database dump using the appropriate command-line tool. For example, if you're using MySQL, you can use the mysqldump command:

    mysqldump -u <username> -p <database_name> > zabbix_backup.sql

    Replace <username> with your database username and <database_name> with your Zabbix database name. You will be prompted to enter the database password.

  2. Backup Configuration Files: Additionally, make sure to back up your Zabbix server configuration files. These are usually located in /etc/zabbix/ or a similar directory, and they contain important settings that you may need to restore.

  3. Backup Zabbix Frontend Files: If you have a customized Zabbix frontend (web interface), consider backing up any modifications or customizations you've made. These files are often located in the web server's document root directory.

  4. Backup Zabbix AlertScripts Path: If you have custom alert scripts in the AlertScriptsPath directory (specified in your Zabbix configuration), make sure to back up these scripts as well.

  5. Snapshot or Image: Depending on your environment, you might also consider taking a snapshot or image of your Zabbix server's virtual machine or physical server as an additional backup measure.

Remember to store these backups in a secure location where they can be easily accessed in case the upgrade encounters any issues. Having a backup ensures that you can restore your Zabbix system to its previous state if needed.

Certainly, creating backups of configuration files, PHP files, and Zabbix binaries is crucial before performing the upgrade. Here's how you can do it:

  1. Backup Configuration Files:

    Copy the Zabbix server configuration file and any relevant web server configuration files:

    mkdir /opt/zabbix-backup/
           cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
           cp /etc/httpd/conf.d/zabbix.conf /opt/zabbix-backup/

    Modify the paths and filenames if your setup differs.

  2. Backup PHP Files and Zabbix Binaries:

    Copy the PHP files and Zabbix binaries:

    cp -R /usr/share/zabbix/ /opt/zabbix-backup/
           cp -R /usr/share/zabbix-* /opt/zabbix-backup/

    This will create a backup of the Zabbix frontend PHP files and any additional packages related to Zabbix (like Zabbix agent).

After running these commands, you'll have created a backup copy of the configuration files, PHP files, and Zabbix binaries in the /opt/zabbix-backup/ directory. This backup will be important in case you need to revert to the previous state due to any issues during the upgrade process.

Remember to keep this backup in a safe location until the upgrade process is complete and you are confident that everything is functioning as expected after the upgrade.

Absolutely, updating the repository configuration package is an important step before the upgrade. Here's how to do it on RHEL 9:

rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm

This command fetches and installs the latest Zabbix repository configuration package for RHEL 9. The package is essential for obtaining the appropriate Zabbix packages during the upgrade process.

If you're using an older version of RHEL, make sure to replace the URL in the command with the correct link from the Zabbix repository that corresponds to your RHEL version.

Absolutely, upgrading Zabbix components is a key step in the upgrade process. Here are the commands you need based on the components you're using:

  • To upgrade Zabbix server, web frontend, and agent (MySQL version):

    dnf upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent
  • If you're using PostgreSQL, replace mysql with pgsql:

    dnf upgrade zabbix-server-pgsql zabbix-web-pgsql zabbix-agent
  • To upgrade the Zabbix proxy, use proxy instead of server:

    dnf upgrade zabbix-proxy-mysql

    Replace mysql with pgsql if you're using PostgreSQL.

  • If you're upgrading the Zabbix Agent 2 (and not Zabbix Agent), use:

    dnf upgrade zabbix-agent2

If you're upgrading the web frontend with Apache on RHEL 8, run this command:

dnf install zabbix-apache-conf

Remember to substitute dnf with yum if you're using a version of RHEL older than RHEL 8. This step will ensure that your Zabbix components are updated to the latest version.

6 Beoordeling van componentconfiguratieparameters

Zorg ervoor dat je de Upgrade-opmerkingen doorneemt om te controleren of er wijzigingen in de configuratieparameters vereist zijn.

7 Start Zabbix-processen

Start de bijgewerkte Zabbix-componenten.

systemctl start zabbix-server
       systemctl start zabbix-proxy
       systemctl start zabbix-agent
       systemctl start zabbix-agent2
8 Verwijder cookies en cache van de webbrowser

Na de upgrade moet je mogelijk cookies en cache van de webbrowser wissen voor de Zabbix-webinterface om correct te functioneren.

Upgrade tussen kleine versies

Het is mogelijk om te upgraden tussen kleine versies van 6.0.x (bijvoorbeeld, van 6.0.1 naar 6.0.3). Upgraden tussen kleine versies is eenvoudig.

Om de upgrade naar een kleine versie van Zabbix uit te voeren, moet je het volgende uitvoeren:

sudo dnf upgrade 'zabbix-*'

Om de upgrade naar een kleine versie van de Zabbix-server uit te voeren, voer je het volgende uit:

sudo dnf upgrade 'zabbix-server-*'

Om de upgrade naar een kleine versie van de Zabbix-agent uit te voeren, voer je het volgende uit:

sudo dnf upgrade 'zabbix-agent-*'

of, voor Zabbix-agent 2:

sudo dnf upgrade 'zabbix-agent2-*'