BackupZit

Sauvegarde VMware ESXi, aussi avec la licence ESXi gratuite

Un guide complet : d’un hôte ESXi — sous licence, gratuit ou géré par vCenter — à des sauvegardes planifiées, chiffrées et dédupliquées de ses VM, avec suivi des blocs modifiés, instantanés suspendus (quiesce), une copie externe et des restaurations en nouvelle VM, à la place de l’originale, fichier par fichier ou directement depuis la sauvegarde.

Ce que vous allez mettre en place

BackupZit sauvegarde les machines virtuelles VMware ESXi sans rien installer sur ESXi ni dans les VM. Un agent BackupZit sur n’importe quelle machine du réseau sert de proxy à l’hôte : il prend des instantanés, ne lit que les blocs modifiés des disques virtuels et les écrit sur votre stockage. Une console web planifie les tâches, conserve l’historique et lance les restaurations. BackupZit est gratuit et open source (AGPLv3), sans limite d’hôtes ni de VM.

La licence ESXi gratuite rend l’API de l’hôte accessible en lecture seule : on peut y lire les VM, pas les modifier. BackupZit prend donc les instantanés et effectue les restaurations via SSH sur les hôtes gratuits, et via l’API vSphere sur les hôtes sous licence et vCenter. La console choisit elle-même la bonne méthode.

Prérequis

  • ESXi 6.7, 7 ou 8 connecté directement, ou vCenter Server 7 ou 8 avec ses hôtes ESXi.
  • Un utilisateur avec des droits d’administrateur : en général root sur un hôte ; sur vCenter administrator@vsphere.local ou un utilisateur ayant le rôle Administrator.
  • Un emplacement pour la console BackupZit : une petite VM Linux avec 2 vCPU, 2 à 4 Go de RAM et un disque de 16 à 20 Go. Elle ne stocke elle-même aucune donnée de sauvegarde.
  • Un agent proxy : n’importe quelle machine Windows ou Linux dotée de l’agent BackupZit qui joint l’hôte sur le port 443 (et 22 quand SSH est utilisé).
  • Un stockage de sauvegarde hors de l’hôte — par exemple un serveur Linux ou un NAS en SFTP, un partage SMB, un bucket compatible S3 ou un dépôt renforcé BackupZit.
  • Réseau : l’agent joint la console sur le port TCP 8443.

Ce qui change avec la licence ESXi gratuite

La licence gratuite fonctionne, avec trois préparatifs :

  • Activez SSH sur l’hôte : dans l’ESXi Host Client, Host → Actions → Services → Enable Secure Shell. Les hôtes sous licence et vCenter n’ont pas besoin de SSH.
  • Le suivi des blocs modifiés (CBT) ne peut être activé que lorsque la VM est éteinte. BackupZit le fait à la première sauvegarde qui trouve la VM éteinte ; jusque-là, chaque sauvegarde lit les disques entiers et l’exécution affiche un avertissement. Arrêtez chaque VM une fois, par exemple pendant une fenêtre de maintenance, et laissez une sauvegarde s’exécuter.
  • Espace libre dans la banque de données : pendant la sauvegarde d’une VM en marche, ses disques sont copiés en mode thin dans sa banque de données, qui doit donc disposer d’autant d’espace libre que les disques en occupent réellement.

Un hôte qui reçoit plus tard une licence passe à l’API vSphere sans autre configuration.

Étape 1 — Installer la console

Le plus rapide sur ESXi est l’image de VM prête à l’emploi backupzit-appliance.ova de la page de téléchargement (Debian, PostgreSQL et la console, déjà configurés, avec VMware Tools) :

  1. Dans l’ESXi Host Client, choisissez Create / Register VM → Deploy a virtual machine from an OVF or OVA file et sélectionnez le fichier OVA. Sur vCenter, utilisez Deploy OVF Template. Donnez à la VM 2 vCPU et 2 à 4 Go de RAM.
  2. Démarrez la VM. Son écran affiche l’adresse de la console web et le mot de passe initial de l’utilisateur admin. Ouvrez https://<adresse>:8443, connectez-vous et changez le mot de passe.

Sur l’écran de la VM, bzadmin peut définir une adresse statique et le fuseau horaire (les planifications suivent le fuseau de la console). Sur un serveur Linux existant, utilisez plutôt le script d’installation de la page de téléchargement.

Étape 2 — Ajouter une cible de stockage

Dans la console, ouvrez Stockage et ajoutez une cible. Choix typiques pour des sauvegardes de VM :

TypeIdéal pour
SFTPTout serveur Linux ou NAS avec SSH ; la clé d’hôte du serveur est épinglée.
Partage SMBServeurs de fichiers Windows, NAS Synology ou QNAP (SMB 2/3).
Compatible S3Copies externes : AWS S3, Wasabi, Backblaze B2, MinIO, Ceph ; immuables avec Object Lock.
Dépôt renforcéUn serveur Linux avec backupzit-repo : les sauvegardes ne peuvent pas être supprimées avant la fin de leur période d’immuabilité.

Laissez Chiffrer les sauvegardes (AES-256) activé (par défaut). La console affiche alors une Clé de récupération — imprimez la fiche de récupération ou rangez la clé dans un gestionnaire de mots de passe, à l’écart des sauvegardes. Avec la clé, l’emplacement du stockage et ses identifiants, vous pouvez restaurer même si la console est perdue.

Étape 3 — Installer l’agent proxy

Les données de sauvegarde transitent par l’agent proxy : placez-le sur un réseau rapide, près de l’hôte ESXi et du stockage. Linux est le meilleur choix, car seul un proxy Linux peut effectuer une restauration instantanée.

  1. Dans la console, ouvrez Agents et cliquez sur Créer un jeton d’inscription. Vous obtenez un code d’inscription (BZ1-…) valable 7 jours.
  2. Téléchargez le paquet de l’agent depuis la page Agents. Sous Debian ou Ubuntu :
    apt install ./backupzit-agent_*.deb
    backupzit-agent enroll --code "BZ1-..."
    systemctl enable --now backupzit-agent
    Sous Windows, lancez le MSI de l’agent et collez le code. La console peut aussi installer l’agent elle-même : Agents → Installer sur une machine depuis ici.

Étape 4 — Ajouter l’hôte ESXi ou vCenter

Ouvrez Agents, section Hôtes VMware ESXi, remplissez Ajouter un hôte ESXi ou vCenter Server — Adresse, Utilisateur, Mot de passe et l’Agent proxy — puis cliquez sur Ajouter un hôte ESXi ou vCenter. La console se connecte une fois, lit la liste des VM et la licence, et épingle le certificat HTTPS et la clé d’hôte SSH de l’hôte : si une autre machine répond plus tard à la même adresse, BackupZit refuse de s’y connecter au lieu de lui envoyer le mot de passe. Le mot de passe est stocké chiffré.

La colonne Mode indique comment l’hôte est traité :

  • API vSphere (hôte sous licence, SSH inutile) — instantanés, copies de disques, restaurations et restauration instantanée passent par l’API.
  • licence gratuite : instantanés et restaurations via SSH — l’API est en lecture seule, ces étapes passent donc par SSH.

Comment l'hôte est modifié vaut Automatique par défaut et peut être forcé sur Toujours SSH ou Toujours l'API vSphere. Si le certificat de l’hôte change pour une raison connue — réinstallation, nouveau certificat, ajout à vCenter —, cliquez sur Accepter le nouveau certificat après avoir comparé l’empreinte avec l’hôte.

Avec vCenter Server

Ajoutez vCenter comme un hôte. BackupZit voit alors, par cette seule connexion, les VM de tous les hôtes ESXi et clusters du datacenter ; rien n’est modifié via SSH. Une VM déplacée avec vMotion continue d’être sauvegardée, car les VM sont reconnues par leur UUID d’instance, pas par leur hôte. N’ajoutez pas le même hôte ESXi à la fois directement et via vCenter, sinon ses VM seraient sauvegardées deux fois.

Étape 5 — Créer la tâche de sauvegarde

  1. Ouvrez Tâches de sauvegarde, créez une tâche et sélectionnez l’hôte ESXi — il figure sous Hôtes VMware ESXi dans la liste des agents.
  2. Choisissez Machines virtuelles (Proxmox VE, Hyper-V, VMware), puis Toutes les VM (et conteneurs) de l’hôte — les VM créées plus tard sont incluses automatiquement — ou cochez des VM précises.
  3. Choisissez la cible de stockage de l’étape 2 et réglez la Planification, par exemple chaque jour ouvré à 22:00.
  4. Réglez Conserver les sauvegardes. Exemple : 3 plus récentes, 7 quotidiennes, 4 hebdomadaires, 6 mensuelles conservent environ six mois d’historique avec une vingtaine de points de restauration.

La tâche s’exécute sur l’agent proxy de l’hôte. Ce qui se passe à chaque exécution :

  1. Le suivi des blocs modifiés est activé pour la VM s’il est désactivé — automatiquement sur les hôtes sous licence, et sur les hôtes gratuits à la première sauvegarde qui trouve la VM éteinte.
  2. Un instantané backupzit_… est pris, suspendu (quiesce) quand VMware Tools tourne dans l’invité (voir l’étape 6).
  3. CBT indique quels blocs lire : pour la première sauvegarde seulement les blocs utilisés, ensuite seulement les blocs modifiés depuis la sauvegarde précédente.
  4. Une VM en marche garde ses disques verrouillés : ils sont donc copiés en mode thin dans la banque de données et l’instantané est supprimé aussitôt, en général après quelques secondes. Le proxy lit la copie en HTTPS puis la supprime. Les VM éteintes sont lues directement.
  5. La configuration de la VM (.vmx) et la NVRAM sont stockées avec la sauvegarde.

Un exemple du laboratoire de test BackupZit : une VM Debian avec un disque de 8 Go, dont 1,6 Go utilisés. La première sauvegarde a lu 1,6 Go. La suivante, après 50 Mo de nouvelles données, a lu 70 Mo et a duré 23 secondes.

Étape 6 — Des sauvegardes cohérentes au niveau applicatif

Quand VMware Tools tourne dans l’invité, l’instantané est suspendu (quiesce) : les applications et les systèmes de fichiers écrivent d’abord leurs données, ce qui rend la sauvegarde cohérente au niveau applicatif. Sans VMware Tools, elle est cohérente en cas de panne — comme après une coupure de courant. Installez open-vm-tools dans les VM Linux et VMware Tools dans les VM Windows.

Étape 7 — Garder une copie externe (3-2-1)

La règle 3-2-1 : trois copies de vos données, sur deux supports différents, dont une hors site. Ajoutez une deuxième tâche de type Copie de sauvegarde, sélectionnez la tâche VMware comme source et une cible externe, par exemple un bucket S3 avec Object Lock ou un dépôt renforcé dans un autre bâtiment.

  • L’agent copie les sauvegardes existantes ; les VM ne sont pas relues.
  • Par défaut, la copie s’exécute après chaque sauvegarde de la tâche source, avec sa propre rétention — par ex. 7 quotidiennes sur le NAS et 12 mensuelles dans le cloud.

Les VM entières et les fichiers isolés se restaurent depuis la copie comme depuis l’original. Sous Paramètres → Tests de restauration, les tests de restauration automatiques (hebdomadaires par défaut) et Vérifier les données stockées (mensuel par défaut) contrôlent les sauvegardes. Plus d’informations sur les copies immuables dans protection contre les ransomwares.

Restauration

Ouvrez une exécution de sauvegarde (depuis la page de la tâche ou Activité) et choisissez Restaurer une VM VMware, ou utilisez l’assistant Restaurer avec Machine virtuelle complète. Choisissez la cible sous Restaurer sur l’hôte ESXi (avec vCenter, aussi l’Hôte ESXi qui exécute la VM) et, si besoin, une autre Banque de données.

En nouvelle VM à côté de l’originale

Crée une copie avec un nouveau nom, un nouvel UUID et de nouvelles adresses MAC ; par défaut, le nom de l’originale suivi de -restored- et de la date. Les réglages réseau de l’invité liés aux anciennes adresses MAC, comme match: macaddress de netplan dans les images cloud, ne s’appliquent pas à la copie.

À la place de la VM d’origine

Cochez l'arrêter et remplacer ses disques. BackupZit éteint la VM, supprime ses instantanés, renomme les disques actuels en ….replaced-DATE.vmdk (supprimez-les quand la VM restaurée fonctionne) et écrit la sauvegarde dans de nouveaux disques portant les noms d’origine. La VM garde son UUID, ses cartes réseau et ses adresses MAC. Une VM supprimée est recréée avec son identité d’origine.

Les disques sont restaurés en mode thin et seuls les blocs contenant des données sont écrits — via l’API vSphere sur les hôtes sous licence et vCenter, via SSH avec la licence gratuite. Cochez au besoin Démarrer la VM après la restauration. Les images ISO connectées aux lecteurs CD/DVD ne font pas partie de la sauvegarde.

Restauration instantanée

Avec Instantanément, en s’exécutant depuis la sauvegarde, une VM démarre en quelques secondes. L’agent proxy Linux sert ses disques directement depuis la sauvegarde en NFS ; l’hôte les monte comme banque de données backupzit-<agent>. Les modifications sont conservées sur l’agent ; la sauvegarde elle-même n’est jamais modifiée. Quand la VM fonctionne comme prévu, sur la page de l’exécution :

  • Terminer la déplace vers une banque de données — sur vCenter avec Storage vMotion pendant qu’elle continue de tourner ; sur un hôte autonome avec un bref arrêt pendant la copie de ses disques (avec vmkfstools via SSH pour la licence gratuite).
  • Abandonner la VM l’arrête et la supprime avec toutes ses modifications.

Ouvrez les ports 2049 et 111 de l’hôte ESXi vers l’agent si un pare-feu se trouve entre les deux.

Fichiers isolés

Parcourir les fichiers sur la page de la sauvegarde (ou Fichiers d’une machine virtuelle dans l’assistant de restauration) ouvre les disques de la VM. Vous pouvez parcourir NTFS, ext2/3/4 et XFS, y compris sur LVM, et télécharger des fichiers ou les restaurer sur n’importe quel agent.

Proxmox dans la même console. BackupZit sauvegarde aussi les VM et conteneurs Proxmox VE. Si vous passez d’ESXi à Proxmox, les deux plateformes peuvent être protégées depuis une seule console, avec le même stockage et les mêmes rapports, jusqu’à la fin de la migration. Les sauvegardes VMware se restaurent sur des hôtes ESXi.

Limites à connaître

  • Un vCenter avec plusieurs datacenters ne peut pas encore être ajouté ; ajoutez directement les hôtes des autres datacenters.
  • Les VM ayant leurs propres instantanés ne sont pas sauvegardées : supprimez ou consolidez d’abord les instantanés.
  • Les RDM (raw device mappings) et les disques indépendants ne sont pas sauvegardés.
  • La restauration instantanée nécessite un agent proxy Linux.

Et ensuite

Téléchargez BackupZit, découvrez toutes les fonctions VMware ou lisez le chapitre complet sur VMware ESXi dans le guide intégré à la console. Vous utilisez aussi Proxmox ou Hyper-V ? Consultez le guide de sauvegarde des VM Proxmox et le guide de sauvegarde Hyper-V. Les questions sont les bienvenues dans les GitHub Discussions. Les entreprises peuvent obtenir un support commercial de MaxZit (en anglais uniquement).