This is a translation of the original English documentation page. Help us make it better.

1 Red Hat Enterprise Linux

Overview

Cette section fournit les étapes requises pour une mise à niveau réussie de Zabbix 5.4.x vers Zabbix 6.0.x à l'aide des packages Zabbix officiels pour Red Hat Enterprise Linux.

Bien que la mise à niveau des agents Zabbix ne soit pas obligatoire (mais recommandée), le serveur Zabbix et les proxys doivent être de la même version majeure. Par conséquent, dans une configuration serveur-proxy, le serveur Zabbix et tous les proxys doivent être arrêtés et mis à niveau. Garder les proxys en cours d'exécution pendant la mise à niveau du serveur n'apportera plus aucun avantage car lors de la mise à niveau du proxy, leurs anciennes données seront supprimées et aucune nouvelle donnée ne sera collectée jusqu'à ce que la configuration du proxy soit synchronisée avec le serveur.

Notez qu'avec la base de données SQLite sur les proxys, les données d'historique des proxys avant la mise à niveau seront perdues, car la mise à niveau de la base de données SQLite n'est pas prise en charge et le fichier de base de données SQLite doit être supprimé manuellement. Lorsque le proxy est démarré pour la première fois et que le fichier de base de données SQLite est manquant, le proxy le crée automatiquement.

Selon la taille de la base de données, la mise à niveau de la base de données vers la version 6.0 peut prendre un certain temps.

Avant la mise à niveau, assurez-vous de lire les notes de mise à niveau pertinentes !

Les notes de mise à niveau suivantes sont disponibles :

Mise à niveau depuis Lire les notes de mise à niveau complètes Modifications les plus importantes entre les versions
5.4.x Pour :
Zabbix 6.0
Versions minimales requises de la base de données augmentées ;
Le serveur/proxy ne démarre pas si la base de données est obsolète ;
Enregistrements du journal d'audit perdus en raison d'un changement de structure de la base de données.
5.2.x Pour :
Zabbix 5.4
Zabbix 6.0
Versions de base de données minimales requises augmentées ;
Éléments agrégés supprimés en tant que type distinct.
5.0.x LTS Pour :
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
La version PHP minimale requise est passée de 7.2.0 à 7.2.5.
4.4.x Pour :
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
La prise en charge d'IBM DB2 a été abandonnée ;
La version PHP minimale requise est passée de 5.4.0 à 7.2.0 ;
Les versions de base de données minimales requises ont été augmentées ;
Le répertoire de fichiers PHP de Zabbix a été modifié.
4.2.x Pour :
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Suppression des types de médias Jabber, Ez Texting.
4.0.x LTS Pour :
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Les anciens proxys ne peuvent plus transmettre de données à un serveur mis à niveau ;
Les nouveaux agents ne pourront plus travailler avec un ancien serveur Zabbix.
3.4.x Pour :
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Les bibliothèques 'libpthread' et 'zlib' sont désormais obligatoires ;
La prise en charge du protocole de texte brut a été abandonnée et l'en-tête est obligatoire ;
Les agents Zabbix de la version antérieure à la 1.4 ne sont plus pris en charge ;
Le paramètre Server dans la configuration du proxy passif est maintenant obligatoire.
3.2.x Pour :
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Prise en charge de SQLite en tant que base de données principale abandonnée pour le serveur/frontend Zabbix ;
Expressions régulières compatibles Perl (PCRE) prises en charge au lieu de POSIX étendu ;
Bibliothèques 'libpcre' et 'libevent' obligatoires pour le serveur Zabbix ;
Vérifications du code de sortie ajouté pour les paramètres utilisateur, les commandes à distance et les éléments system.run[] sans le drapeau 'nowait' ainsi que les scripts exécutés par le serveur Zabbix ;
La passerelle Java Zabbix doit être mise à niveau pour prendre en charge les nouvelles fonctionnalités.
3.0.x LTS Pour :
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
La mise à niveau de la base de données peut être lente, selon la taille de la table d'historique.
2.4.x Pour :
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
Version PHP minimale requise passée de 5.3.0 à 5.4.0
Le paramètre de l'agent LogFile doit être spécifié
2.2.x LTS Pour :
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
Suppression de la surveillance distribuée basée sur les nœuds
2.0.x Pour :
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
Version PHP minimale requise passée de 5.1.6 à 5.3.0 ;
Base de données MySQL sensible à la casse requise pour le bon fonctionnement du serveur ; Le jeu de caractères utf8 et le classement utf8_bin sont requis pour que le serveur Zabbix fonctionne correctement avec la base de données MySQL. Voir les scripts de création de base de données.
Extension PHP 'mysqli' requise au lieu de 'mysql'

Vous pouvez également vérifier les pré-requis pour 6.0.

Il peut être pratique d'exécuter deux sessions SSH parallèles pendant la mise à niveau, en exécutant les étapes de mise à niveau dans une et en surveillant les journaux du serveur/proxy dans une autre. Par exemple, exécutez tail -f zabbix_server.log ou tail -f zabbix_proxy.log dans la deuxième session SSH pour afficher les dernières entrées du fichier journal et les erreurs possibles en temps réel. Cela peut être critique pour les instances de production.

Procédure de mise à niveau

1 Arrêt des processus Zabbix

Arrêtez le serveur Zabbix pour vous assurer qu'aucune nouvelle donnée n'est insérée dans la base de données.

# systemctl stop zabbix-server

Si vous mettez à niveau le proxy Zabbix, arrêtez également le proxy.

# systemctl start zabbix-server

Il n'est plus possible de démarrer le serveur mis à niveau et de faire en sorte que des proxys plus anciens, mais non mis à niveau, transmettent des données à un serveur plus récent. Cette approche, qui n'a jamais été recommandée ni prise en charge par Zabbix, est désormais officiellement désactivée, car le serveur ignorera les données des proxys non mis à niveau.

2 Sauvegarder la base de données Zabbix existante

Ceci est une étape très importante. Assurez-vous d'avoir une sauvegarde de votre base de données. Cela aidera si la procédure de mise à niveau échoue (manque d'espace disque, mise hors tension, tout problème inattendu).

3 Sauvegarder les fichiers de configuration, les fichiers PHP et les binaires Zabbix

Faites une copie de sauvegarde des binaires Zabbix, des fichiers de configuration et du répertoire de fichiers PHP.

Fichiers de configuration :

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

Fichiers PHP et binaires Zabbix :

# cp -R /usr/share/zabbix/ /opt/zabbix-backup/
       # cp -R /usr/share/zabbix-* /opt/zabbix-backup/
4 Mettre à jour le package de configuration du référentiel

Pour procéder à la mise à niveau, votre package de référentiel actuel doit être mis à jour.

# rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
5 Mettre à niveau les composants Zabbix

Pour mettre à niveau les composants Zabbix, vous pouvez exécuter quelque chose comme :

# dnf upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent

Si vous utilisez PostgreSQL, remplacez mysql par pgsql dans la commande. Si vous mettez à niveau le proxy, remplacez server par proxy dans la commande. Si vous mettez à niveau l'agent 2, remplacez zabbix-agent par zabbix-agent2 dans la commande.

Pour mettre à niveau correctement l'interface Web avec Apache sur RHEL 8, exécutez également :

# dnf install zabbix-apache-conf
6 Examen des paramètres de configuration des composants

Assurez-vous de consulter les Notes de mise à jour pour vérifier si des modifications des paramètres de configuration sont nécessaires.

7 Démarrer les processus Zabbix

Démarrez les composants Zabbix mis à jour.

# systemctl start zabbix-server
       # systemctl start zabbix-proxy
       # systemctl start zabbix-agent
       # systemctl start zabbix-agent2
8 Effacer les cookies et le cache du navigateur Web

Après la mise à niveau, vous devrez peut-être effacer les cookies du navigateur Web et le cache du navigateur Web pour que l'interface Web de Zabbix fonctionne correctement.

Mise à niveau entre versions mineures

Il est possible de mettre à niveau entre les versions mineures de 6.0.x (par exemple, de 6.0.1 à 6.0.3). La mise à niveau entre les versions mineures est facile.

Pour exécuter la mise à niveau de la version mineure de Zabbix, il est nécessaire d'exécuter :

$ sudo dnf upgrade 'zabbix-*'

Pour exécuter la mise à niveau de la version mineure du serveur Zabbix, exécutez :

$ sudo dnf upgrade 'zabbix-server-*'

Pour exécuter la mise à niveau de la version mineure de l'agent Zabbix, exécutez :

$ sudo dnf upgrade 'zabbix-agent-*'

ou, pour l'agent Zabbix 2 :

$ sudo dnf upgrade 'zabbix-agent2-*'