Dans le guide précédent, vous avez transformé la première machine virtuelle en un modèle réutilisable et l'avez clonée en quelques secondes au lieu de plusieurs minutes : il s'agit de « web02 », une copie entièrement fonctionnelle dont l'identité est déjà définie. Ni ce clone ni le modèle sur lequel il repose n’existent encore nulle part ailleurs ; ainsi, avant que l’un ou l’autre ne contienne des données dont un client pourrait avoir besoin, vous allez d’abord configurer le système de sauvegarde propre à Proxmox entièrement depuis le panneau de configuration.
Planifier une tâche de sauvegarde
L'onglet « Datacenter », sous « Sauvegarde » dans l'arborescence de gauche, ouvre une liste de tâches qui est initialement vide sur un nœud nouvellement installé. Pour l'instant, le seul bouton utile est « Ajouter » ; il ouvre une boîte de dialogue qui regroupe en un seul endroit toutes les informations nécessaires à la configuration d'une sauvegarde planifiée : les machines virtuelles concernées, l'espace de stockage, la date et la durée de conservation des données sauvegardées.
Choisissez les éléments à sauvegarder et la fréquence des sauvegardes
Le tableau « Invités à inclure » de l'onglet « Général » répertorie toutes les machines virtuelles présentes sur le nœud, chacune étant accompagnée d'une case à cocher ; il s'agit des trois mêmes machines virtuelles que celles mentionnées dans les deux guides précédents. En ne cochant que « web02 », plutôt que le modèle ou sa machine sœur inutilisée, ce premier travail se concentre sur la seule machine virtuelle qui mérite réellement d'être restaurée en cas de problème.
L'option « Node stays on -- All -- » mérite d'être conservée, même dans un environnement de test à nœud unique comme celui-ci : sur un véritable cluster à plusieurs nœuds, cela signifie que la tâche s'exécute là où se trouve effectivement chaque machine virtuelle sélectionnée ce jour-là, plutôt que d'échouer silencieusement si une machine virtuelle migre hors du nœud auquel la tâche était associée. Le paramètre « Schedule » accepte soit une expression de calendrier de type systemd, soit, comme ici, une heure simple de la journée, et le mode « Snapshot » sauvegarde une machine virtuelle en cours d’exécution sans la mettre en pause, en basculant automatiquement vers une simple copie de fichiers dès qu’une machine virtuelle s’avère être arrêtée, ce qui est exactement le cas pour « web02 » dans ce laboratoire.
Définir une politique de conservation
C'est dans l'onglet « Rétention » qu'une tâche cesse d'être une simple planification pour devenir une véritable politique : si aucun paramètre n'est modifié, chaque exécution conserve ses propres archives indéfiniment, remplissant ainsi l'espace de stockage cible sauvegarde après sauvegarde.
Les options « Conserver la dernière version », « Conserver quotidiennement », « Conserver hebdomadairement », « Conserver mensuellement » et « Conserver annuellement » se combinent entre elles au lieu de se remplacer mutuellement ; il s’agit là du même modèle de conservation par couches que la plupart des outils de sauvegarde utilisent lorsqu’une politique doit être conservée plus longtemps qu’une poignée d’exécutions récentes. La note figurant sous les champs mérite d'être lue attentivement : laisser tous les champs vides ici ne signifie pas une conservation illimitée, mais que Proxmox se rabat sur les paramètres définis par le stockage lui-même ou par le nœud. vzdump.conf comme déjà défini, ce qui peut entraîner une utilisation bien inférieure aux prévisions sur un nœud qui n'a pas encore été optimisé.
En cliquant sur « Créer », les deux onglets sont envoyés sous la forme d'une seule tâche, et la liste, qui était vide au départ, affiche désormais exactement ce qui a été configuré :
« Next Run » correspond à une valeur réelle, calculée à partir du calendrier dès l'enregistrement de la tâche, et non à une valeur de remplacement. Le « Schedule Simulator », situé sur cette même barre d'outils, permet de vérifier une expression de calendrier plus complexe par rapport à des dates futures, de la même manière, avant de la valider.
Effectuez une sauvegarde et consultez le fichier journal
Il est rarement pratique d'attendre 2 h 30 pour tester une toute nouvelle tâche ; c'est pourquoi l'option « Exécuter maintenant », située sur cette même barre d'outils, lance immédiatement la tâche en question après l'affichage d'une boîte de dialogue de confirmation. Le résultat obtenu mérite d'être lu dans son intégralité au moins une fois, car toutes les autres sauvegardes effectuées par cette tâche suivent exactement la même séquence :
Est-ce que Proxmox démarre réellement la machine virtuelle uniquement pour la sauvegarder ?
Non. starting kvm to execute backup task et stopping kvm after backup task Utilisez plutôt un processus auxiliaire de courte durée : une instance QEMU qui monte le disque de web02 et le diffuse via QMP, de manière totalement distincte du démarrage effectif de Debian à l'intérieur de celle-ci. C'est également la raison pour laquelle le journal indique backup mode: stop même si le mode « Snapshot » avait été sélectionné dans la boîte de dialogue : web02 était déjà arrêté au moment de l'exécution de la tâche ; il n'y avait donc a priori aucun invité en cours d'exécution dont on aurait pu créer un instantané, et Proxmox opte automatiquement pour la solution la plus simple plutôt que d'échouer la tâche.
Les lignes de pourcentage au milieu sont accompagnées de chiffres réels de débit à côté de chacune d'elles, ce qui constitue un véritable indicateur de progression plutôt qu'une animation figée : le débit passe de 556,7 MiB/s au début à 4,4 MiB/s à mesure que le modèle de lecture devient moins séquentiel vers la fin. backup is sparse: 14.94 GiB (93%) total zero data C'est la ligne qui explique le chiffre le plus élevé de tout ce journal : sur un disque d'une capacité nominale de 16,0 GiB, seuls 7 % contenaient des données que Proxmox avait réellement besoin de copier.
Vérifier l'archive et sa taille réelle
L'onglet « Sauvegarde » de chaque machine virtuelle présente l'historique complet des sauvegardes de cette machine virtuelle, quelle que soit la tâche ou le stockage à l'origine de chacune d'entre elles.
Ces 563,53 Mo correspondent à la détection des données clairsemées issue du journal des tâches et à la compression ZSTD superposées l’une à l’autre : les 93 % qui étaient déjà nuls n’ont pratiquement rien coûté à stocker, et le reste a tout de même été compressé bien au-delà de sa taille brute. Un disque aussi vide représente le meilleur scénario possible pour une machine virtuelle neuve, et ce chiffre ne fera qu’augmenter à mesure que web02 se remplira avec un véritable déploiement. C’est précisément pour cette raison que les limites de conservation évoquées dans la section précédente sont importantes bien avant que cette croissance ne devienne un problème.
Lancer une sauvegarde à la demande
La sauvegarde immédiate, accessible depuis ce même onglet « Sauvegarde de la machine virtuelle », utilise le même mécanisme « vzdump » que la tâche planifiée, mais sans attendre l'heure prévue et sans passer par toutes les machines invitées qu'une tâche planifiée aurait normalement couvert.
C'est dans ce champ « Notes » que se trouve à l'origine la mention « web02 » déjà visible dans l'archive de la section précédente : {{guestname}} Il s'agit d'une variable de modèle dynamique, renseignée avec le nom de cette machine virtuelle au moment de la sauvegarde ; le texte d'aide situé sous le champ répertorie les autres variables disponibles pour une note plus détaillée. La case « Protégé », qui n’est pas cochée ici, mérite d’être connue avant même d’en avoir besoin : la cocher exempte cette archive de toutes les règles de conservation et de la fonction « Supprimer » elle-même ; c’est le seul paramètre qui fait la différence entre un effacement accidentel et une sauvegarde dont une équipe a réellement besoin pour survivre.
Restauration à partir d'une sauvegarde
Lorsque l'on sélectionne une archive dans cette même liste et que l'on clique sur « Restaurer », une boîte de dialogue s'ouvre dont le titre lui-même indique clairement le risque :
Avant de cliquer sur « Restaurer » pour un identifiant de machine virtuelle (VM) existant, assurez-vous que le disque actuel de cette machine virtuelle ne contient rien qui vaille la peine d'être conservé. Le titre même de la boîte de dialogue indique « Restaurer avec écrasement » précisément pour cette raison, et il n'y a pas d'étape de confirmation supplémentaire au-delà de cet écran.
La restauration sur une autre machine virtuelle (VM) inutilisée permet d'éviter complètement ce risque, ce qui est utile pour vérifier si une archive fonctionne réellement sans toucher à la machine virtuelle active dont elle provient. Dans ce cas, l’option « Unique » régénère l’adresse MAC réseau de la même manière que lors du clonage d’un modèle, comme expliqué il y a deux guides, car deux machines virtuelles partageant une même adresse MAC sur le même pont entreraient en conflit dès leur démarrage. La fonction « Remplacer les paramètres » préremplit les champs Nom, Mémoire, Cœurs et Sockets directement à partir de la configuration enregistrée de la sauvegarde ; ces paramètres sont modifiables ici avant que la restauration ne les valide, ce qui constitue le dernier point de contrôle avant que le premier véritable chemin de reprise après sinistre de cette plateforme n’existe réellement.
En résumé
- Une tâche de sauvegarde planifiée regroupe la sélection des machines virtuelles, le stockage, la planification et la durée de conservation au sein d'un seul objet au niveau du centre de données.
- Une véritable sauvegarde s'effectue via un processus auxiliaire de courte durée, et jamais via le système d'exploitation invité lui-même.
- La détection des blocs clairsemés, associée à la compression, permet de réduire la taille d'un disque d'une capacité nominale de 16 GiB à quelques centaines de mégaoctets réels.
- La restauration sur un identifiant de machine virtuelle existant entraîne son écrasement ; en revanche, l'utilisation d'un identifiant différent ainsi que la commande « Unique » permettent de tester une archive en toute sécurité.
Dans le prochain guide, vous ajouterez des fonctionnalités de surveillance et d'alerte à ce qui est déjà en place.