Mettre à jour Proxmox VE 7 vers Proxmox VE 8
Ce guide décrit la mise à niveau sur place (in-place) d'un nœud Proxmox VE 7 vers Proxmox VE 8 avec apt. La mise à niveau fait passer le système de Debian 11 Bullseye à Debian 12 Bookworm et remplace le noyau 5.15 par un noyau plus récent. Prévoyez une interruption de service : le nœud doit être redémarré au moins une fois, et généralement deux.
Proxmox VE 7 a atteint sa fin de vie (EOL) fin juillet 2024, et Proxmox VE 8 a atteint sa fin de vie le 31 août 2026. La mise à niveau vers la version 8 est une étape intermédiaire obligatoire, mais elle ne vous laisse pas sur une version prise en charge. Une fois ce guide terminé, prévoyez la mise à niveau suivante vers Proxmox VE 9.
Avant de commencer
Prérequis
Vérifiez les points suivants avant de toucher à un dépôt :
- tous les nœuds exécutent les derniers paquets de Proxmox VE 7.4 (
pve-manager7.4-15 ou plus récent) ; - au moins 5 Go d'espace libre sur le système de fichiers racine ;
- le cluster est en bon état, si le nœud fait partie d'un cluster ;
- vous disposez d'un accès au serveur qui ne dépend pas de son réseau, comme un IP-KVM ;
- une sauvegarde valide et testée de toutes les machines virtuelles et de tous les conteneurs existe.
Vérifiez l'espace libre sur le système de fichiers racine :
df -h /
Sauvegardez chaque machine virtuelle et chaque conteneur avant la mise à niveau et assurez-vous que les sauvegardes peuvent être restaurées. Une mise à niveau majeure remplace le système de base, le noyau et les paquets du chargeur d'amorçage. En cas de problème, une restauration est le seul moyen fiable de revenir en arrière. Conservez les sauvegardes en dehors du nœud mis à niveau, par exemple sur un stockage séparé ou dans INTROSERV Backup Service. Copiez également /etc/pve, /etc/network/interfaces, /etc/passwd et /etc/resolv.conf.
Si vous disposez d'un cluster Ceph hyperconvergé, il doit exécuter Ceph 17.2 Quincy avant de commencer. Vérifiez la version dans le panneau Ceph de chaque nœud. Si le cluster exécute Octopus ou Pacific, mettez d'abord Ceph à niveau vers Quincy, puis seulement ensuite poursuivez avec ce guide.
Si Proxmox Backup Server est installé sur le même hôte, mettez-le à niveau de la version 2 à la version 3 avant de mettre à niveau Proxmox VE. Suivez le guide officiel de mise à niveau de Proxmox Backup Server de la version 2 à la version 3.
Comment se connecter au nœud
N'exécutez pas la mise à niveau majeure depuis le Shell (console) de l'interface web de Proxmox VE. La console web est fournie par des services Proxmox VE qui redémarrent pendant la mise à niveau, et la session sera interrompue en cours de processus.
Connectez-vous par SSH ou via IP-KVM. Avec SSH, démarrez une session tmux afin que la mise à niveau continue si la connexion est interrompue :
apt update apt install tmux tmux new -s upgrade
Si la connexion est perdue, reconnectez-vous et revenez à la session :
tmux attach -t upgrade
L'option la plus sûre est l'IP-KVM, car il continue de fonctionner même si le réseau du nœud ne démarre pas après le redémarrage. Pour vous connecter à un serveur dédié via IP-KVM, consultez Connexion à IDRAC KVM ou Guide d'accès IP-KVM via OpenVPN (serveurs DC2, DC3).
Machines virtuelles et conteneurs sur le nœud
Arrêtez les machines virtuelles et les conteneurs du nœud, ou migrez-les vers un autre nœud s'ils doivent rester en fonctionnement. La migration d'une ancienne version de Proxmox VE vers une version plus récente est prise en charge. La migration d'une version plus récente vers une version plus ancienne n'est pas prise en charge.
Si le nœud fait partie d'un cluster, mettez les nœuds à niveau un par un et placez chaque nœud en mode maintenance avant de le mettre à niveau. Le mode maintenance déplace les invités gérés par HA vers d'autres nœuds : ha-manager crm-command node-maintenance enable <node>. Les invités qui ne sont pas gérés par HA ne sont pas déplacés automatiquement : migrez-les ou arrêtez-les manuellement. Un redémarrage ne désactive pas le mode maintenance. Une fois le nœud mis à niveau et redémarré, désactivez-le manuellement : ha-manager crm-command node-maintenance disable <node>.
Étape 1. Mettre à niveau Proxmox VE 7 vers la version 7.4
L'outil de vérification pve7to8 et un chemin de mise à niveau sûr ne sont disponibles qu'avec les derniers paquets 7.4. Vous pouvez installer les mises à jour dans l'interface web ou en ligne de commande.
Configurer les dépôts
Ouvrez le nœud dans l'interface web et allez dans Updates → Repositories.
Si vous n'avez pas d'abonnement payant, sélectionnez le dépôt pve-enterprise et cliquez sur Disable. Ce dépôt nécessite une clé d'abonnement.

Cliquez sur Add, sélectionnez No-Subscription et cliquez sur Add dans la boîte de dialogue.

Si vous avez un abonnement payant, conservez le dépôt pve-enterprise et passez cette partie.
Installer les mises à jour
Allez dans Updates et cliquez sur Refresh. Attendez que la liste des paquets soit mise à jour.

Cliquez sur Upgrade. Une fenêtre de terminal s'ouvre. Lorsqu'on vous demande de continuer, saisissez Y et appuyez sur Entrée.

Attendez la fin du processus et ne fermez pas la fenêtre. À la fin, la sortie vous demande de redémarrer le nœud.

La même mise à jour en ligne de commande. Sans abonnement payant, désactivez d'abord le dépôt enterprise et ajoutez le dépôt no-subscription, comme dans l'interface web ci-dessus :
sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list echo "deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
Installez ensuite les mises à jour :
apt update apt dist-upgrade
Debian 11 n'est plus prise en charge et ses paquets peuvent à terme être déplacés des miroirs habituels vers archive.debian.org. Si apt update renvoie des erreurs 404 pour bullseye, remplacez les lignes Debian de /etc/apt/sources.list par :
deb http://archive.debian.org/debian bullseye main contrib deb http://archive.debian.org/debian-security bullseye-security main contrib
Ces lignes ne sont nécessaires que pour terminer l'Étape 1. À l'Étape 3, remplacez-les par les lignes Bookworm indiquées à cet endroit au lieu d'exécuter sed.
Redémarrer et vérifier la version
Redémarrez le nœud :
reboot
Une fois le nœud démarré, actualisez la page du navigateur et vérifiez la version dans Summary du nœud, ou exécutez :
pveversion
La sortie doit afficher 7.4-15 ou plus récent.

Étape 2. Exécuter l'outil de vérification pve7to8
Proxmox VE 7.4 inclut le script pve7to8. Il se contente de vérifier le système et de signaler les problèmes ; il ne modifie rien. Exécutez-le avec toutes les vérifications activées :
pve7to8 --full

Examinez le résultat :
- les éléments
FAILdoivent être corrigés avant la mise à niveau ; - les éléments
WARNdoivent être lus et évalués, même s'ils ne bloquent pas la mise à niveau ; - après chaque correction, exécutez à nouveau le script pour confirmer que le problème a disparu.
Avant de continuer, supprimez les paquets, les plugins et les modules de stockage tiers qui ne sont pas pris en charge par Proxmox VE 8. Un plugin de stockage tiers doit avoir une version compatible avec Proxmox VE 8 ; sinon, attendez que son auteur en publie une.
Si Proxmox VE a été installé sur un système Debian 11 standard et non à partir de l'ISO de Proxmox VE, vérifiez si le paquet linux-image-amd64 est installé. Il entre en conflit avec les paquets du noyau Proxmox VE et peut conduire apt à tenter de supprimer le paquet proxmox-ve. Supprimez-le avant de continuer : apt remove linux-image-amd64.
Étape 3. Basculer les dépôts vers Bookworm
Dépôts Debian
Remplacez Bullseye par Bookworm dans la liste de sources principale :
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
Si vous avez basculé vers archive.debian.org à l'Étape 1, sed ferait pointer les lignes vers un chemin Bookworm qui n'existe pas dans l'archive. Remplacez plutôt le contenu de /etc/apt/sources.list par les lignes standard de Debian 12 :
deb http://deb.debian.org/debian bookworm main contrib deb http://deb.debian.org/debian bookworm-updates main contrib deb http://security.debian.org/debian-security bookworm-security main contrib
Assurez-vous ensuite qu'aucune entrée Bullseye ne subsiste dans aucun fichier :
grep -r bullseye /etc/apt/sources.list /etc/apt/sources.list.d/
Si la commande trouve des lignes, mettez-les à jour vers Bookworm ou commentez-les avec #. Supprimez toutes les lignes backports : la mise à niveau n'a pas été testée avec des paquets de backports.
Vérifiez également qu'il n'y a aucun paquet retenu (held) ou partiellement installé. Les deux commandes doivent renvoyer une sortie vide :
apt-mark showhold dpkg --audit
Dépôt Proxmox VE
Le nom du fichier du dépôt dépend de la manière dont le dépôt a été ajouté. Listez d'abord les fichiers :
ls /etc/apt/sources.list.d/
Sans abonnement, mettez à jour le fichier qui contient la ligne pve-no-subscription. Sur un système installé à partir de l'ISO, il s'agit généralement de pve-install-repo.list :
sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pve-install-repo.list
La ligne correcte pour Proxmox VE 8 sans abonnement est :
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
Sur certains systèmes, la ligne contient aussi [arch=amd64] après deb. C'est normal, conservez-le.
Assurez-vous que le dépôt enterprise est désactivé : si pve-enterprise.list existe, sa ligne doit être commentée avec #, comme elle l'est après sa désactivation à l'Étape 1.
Avec un abonnement payant, écrivez le dépôt enterprise et assurez-vous qu'aucune ligne pve-no-subscription active ne subsiste dans d'autres fichiers :
echo "deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise" > /etc/apt/sources.list.d/pve-enterprise.list
Dépôt Ceph
Passez cette partie si Ceph n'est pas installé sur le nœud.
Avec un abonnement payant :
echo "deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise" > /etc/apt/sources.list.d/ceph.list
Sans abonnement :
echo "deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription" > /etc/apt/sources.list.d/ceph.list
Si apt update renvoie une erreur 401 pour le dépôt enterprise de Ceph, actualisez l'abonnement avec pvesubscription update --force et réessayez.
Actualiser l'index des paquets
apt update
La sortie ne doit contenir aucune erreur. Chaque ligne doit pointer vers bookworm.
Étape 4. Mettre le système à niveau vers Proxmox VE 8
Lancez la mise à niveau :
apt dist-upgrade
La durée dépend de la vitesse du disque racine : quelques minutes sur SSD, jusqu'à une heure ou plus sur un HDD lent.
Invites pendant la mise à niveau
Si une page de notes de version s'ouvre au début, appuyez sur q pour la fermer et continuez.
Lorsqu'on vous demande si les services doivent être redémarrés automatiquement pendant les mises à niveau de paquets, sélectionnez Yes avec les touches fléchées et appuyez sur Entrée.

Invites relatives aux fichiers de configuration
Pendant la mise à niveau, apt demande quoi faire des fichiers de configuration modifiés à la fois par vous et par le paquet. Appuyez sur D pour voir la différence avant de répondre. Réponses recommandées pour les fichiers courants :
/etc/issue: conservez votre version (N). Proxmox VE régénère ce fichier au démarrage, il n'affecte que l'écran de connexion ;/etc/lvm/lvm.conf: installez la version du mainteneur du paquet (Y) si vous n'avez pas modifié le fichier vous-même ;/etc/apt/sources.list.d/pve-enterprise.list: siaptpose la question pour ce fichier, conservez votre version (N), sinonaptécrase le dépôt que vous avez configuré à l'Étape 3 ;/etc/ssh/sshd_config: si vous n'avez pas modifié le fichier, installez la version du mainteneur (Y), qui remplace l'option obsolèteChallengeResponseAuthenticationparKbdInteractiveAuthentication. Si vous avez modifié vous-même les paramètres SSH, comparez soigneusement les fichiers ;/etc/default/grub: cette invite n'apparaît généralement que si vous avez modifié le fichier, par exemple pour ajouter des paramètres de noyau. Vérifiez la différence ; en cas de doute, conservez votre version (N).
Sur un système qui démarre en mode UEFI avec une racine sur LVM, GRUB peut échouer à démarrer après la mise à niveau avec l'erreur disk 'lvmid/...' not found. Sur un tel système, installez le bon paquet GRUB avant de redémarrer :
[ -d /sys/firmware/efi ] && apt install grub-efi-amd64
Exécutez cette commande sur les systèmes UEFI qui démarrent avec GRUB, ce qui est le cas par défaut des installations à partir de l'ISO de Proxmox VE avec une racine sur LVM. Sur un système en BIOS hérité (legacy), elle ne fait rien. Passez-la si la racine est sur ZFS : ces systèmes démarrent via proxmox-boot-tool et ne sont pas concernés.
Vérifier le résultat
Lorsque apt dist-upgrade se termine sans erreur, exécutez à nouveau l'outil de vérification :
pve7to8 --full
Avant le redémarrage, l'outil peut afficher des éléments WARN concernant le noyau en cours d'exécution et LXCFS, qui utilise encore l'ancienne bibliothèque FUSE. C'est normal : les deux disparaissent après le redémarrage sur le nouveau noyau à l'Étape 5. Il ne doit y avoir aucun élément FAIL.

Étape 5. Redémarrer sur le nouveau noyau
Redémarrez le nœud. C'est obligatoire même si vous utilisiez déjà le noyau 6.2 optionnel sur Proxmox VE 7 :
reboot
Le nouveau noyau peut renommer les interfaces réseau sur certains matériels. Si le nœud ne répond pas sur le réseau après le redémarrage, connectez-vous via IP-KVM, vérifiez les noms actuels des interfaces avec ip link et mettez-les à jour dans /etc/network/interfaces. Appliquez ensuite la configuration avec ifreload -a.
Étape 6. Vérifier le résultat
Videz le cache du navigateur ou forcez le rechargement de l'interface web avec Ctrl+Maj+R (Cmd+Maj+R sous macOS). Vérifiez la version dans Summary du nœud ou avec :
pveversion

Démarrez les machines virtuelles et les conteneurs et vérifiez qu'ils fonctionnent. Dans un cluster, désactivez le mode maintenance sur le nœud et passez au nœud suivant, en reprenant à la vérification des prérequis.
Les systèmes qui démarrent en mode UEFI via proxmox-boot-tool, généralement avec une racine sur ZFS et installés à partir de l'ISO, reçoivent après la mise à niveau un avertissement de pve7to8 concernant le paquet systemd-boot. N'installez le paquet que si l'outil de vérification signale cet avertissement. Sur les autres systèmes, il n'est pas nécessaire, et son script d'installation peut remplacer GRUB comme chargeur d'amorçage.
Dépannage
La mise à niveau veut supprimer proxmox-ve
Le message W: (pve-apt-hook) You are attempting to remove the meta-package 'proxmox-ve'! signifie qu'un dépôt est encore configuré pour Bullseye ou n'existe pas pour Bookworm. Vérifiez tous les fichiers de /etc/apt/sources.list.d/, corrigez les dépôts et exécutez à nouveau apt update. Ne confirmez pas la suppression.
La mise à niveau a été interrompue
Si la connexion a été perdue ou si la mise à niveau s'est arrêtée à mi-chemin, reconnectez-vous à la session tmux ou connectez-vous à nouveau, puis exécutez :
dpkg --configure -a apt -f install apt dist-upgrade
Erreurs de dépendances pour les paquets Ceph
Si apt dist-upgrade signale des dépendances non satisfaites pour des paquets Ceph sur un nœud sans Ceph, ajoutez le dépôt no-subscription de Ceph Quincy de l'Étape 3 et exécutez à nouveau apt update. Certains paquets Proxmox VE peuvent en avoir besoin pendant la mise à niveau.
Le nœud ne démarre pas
Connectez-vous via IP-KVM pour voir l'erreur de démarrage. Pour les problèmes de GRUB, consultez la page officielle Recover From Grub Failure.
Et ensuite
Proxmox VE 8 ne reçoit plus de mises à jour. Prévoyez la mise à niveau vers Proxmox VE 9 sur Debian 13 Trixie, qui suit la même procédure avec l'outil de vérification pve8to9.
Si vous préférez ne pas effectuer vous-même les mises à niveau majeures, les spécialistes de l'Administration système d'INTROSERV peuvent planifier et réaliser la mise à niveau pour vous.