VMware fournit des API pour simplifier la protection des données dans les environnements virtuels d’entreprise avec des fonctionnalités qui permettent des sauvegardes sans agent et améliorent l’efficacité des sauvegardes VM incrémentielles. Les sauvegardes incrémentielles aident à économiser une quantité significative d’espace de stockage par rapport aux sauvegardes complètes
En ce qui concerne les solutions de sauvegarde VMware modernes, la plupart reposent sur les API de VMware et utilisent la technologie Changed Block Tracking (CBT) pour faciliter et accélérer la création de sauvegardes incrémentielles de machines virtuelles. Dans ce billet de blog, nous expliquons le Changed Block Tracking, y compris le principe de fonctionnement et les applications pratiques.
Qu’est-ce que le Changed Block Tracking?
Changed Block Tracking (CBT) est une fonctionnalité native de VMware qui enregistre les blocs modifiés dans un fichier de suivi. CBT fait partie du framework VMware vSphere Storage APIs – Data Protection, d’abord publié dans la version 4.0, qui permet aux applications de protection des données tierces d’utiliser CBT pour effectuer des sauvegardes et des réplications plus efficaces.
CBT fonctionne au niveau de la pile de stockage ESXi et permet aux solutions de sauvegarde tierces de sauvegarder uniquement les blocs de données modifiés depuis la dernière sauvegarde, c’est-à-dire de créer des sauvegardes incrémentielles, ou les blocs en cours d’utilisation au lieu de la VM complète. Cela vous permet de réduire considérablement la quantité de données de sauvegarde, en particulier dans les environnements volumineux avec des centaines de VM, et d’accélérer le processus de sauvegarde.
VMware CBT réduit significativement le temps nécessaire au logiciel de sauvegarde pour effectuer des sauvegardes incrémentielles car il suit les changements dans un fichier journal spécial. Les solutions de sauvegarde tierces entraînent une charge CPU plus importante sur un serveur ESXi si elles suivent les changements sans CBT en utilisant d’autres méthodes. Ainsi, le CBT optimise également les performances d’un serveur ESXi lors de la sauvegarde des données.
VMware utilise également le processus Storage vMotion qui permet de déplacer des fichiers de disque de machine virtuelle d’un datastore à un autre pendant son exécution.
Fonctionnement du Changed Block Tracking de VMware
La fonctionnalité CBT fonctionne en comparant les identifiants des ensembles de modifications précédents et actuels et en trouvant les secteurs de disque qui ont été modifiés entre ces identifiants d’ensemble de modifications. VMware CBT identifie également tous les blocs du système de fichiers de machine virtuelle (VMFS) sur un disque virtuel qui sont utilisés. Le suivi est effectué par l’hyperviseur lui-même et se déroule en dehors de la machine virtuelle.
Exigences du CBT
Les exigences pour le Changed Block Tracking comprennent :
- VMware vSphere (ESXi 4.0 ou supérieur)
- Matériel virtuel de version 7 ou supérieur
- Datastores VMFS locaux, NFS ou iSCSI
- Provisionnement épais ou mince
- Pas de mappages de disque RAW. Le mappage de dispositif brut (RDM) en mode de compatibilité physique n’est pas pris en charge.
- A VM must not have snapshots to start using VMware CBT
Comment activer le Changed Block Tracking
Par défaut, CBT est désactivé car il consomme une petite quantité de temps CPU hôte. Mais pour une solution de sauvegarde tierce comme NAKIVO Backup & Replication, CBT doit être activé pour permettre au produit d’effectuer des sauvegardes incrémentielles rapides et fiables.
CBT est activé dans les paramètres de configuration avancés d’une machine virtuelle:
- Ouvrez les paramètres de la VM. Vous pouvez le faire dans le client VMware vSphere en cliquant avec le bouton droit sur une VM et en sélectionnant Modifier les paramètres.
- Dans la fenêtre Modifier les paramètres, cliquez sur l’onglet Options de la VM.
- Cliquez sur la catégorie d’option Avancé pour développer les paramètres et cliquez sur Modifier la configuration dans la ligne Paramètres de configuration. La fenêtre Paramètres de configuration de la VM s’ouvre et contient plusieurs lignes, chacune contenant un nom de paramètre et une valeur.
- L’activation du CBT est déterminée par la ligne suivante dans la configuration .vmx:
ctkEnabled = « TRUE »
De plus, pour chaque disque sur lequel le CBT est activé, une entrée sera incluse:
scsix:x.ctkEnabled = « TRUE »
Ces paramètres doivent être définis pour activer le suivi des blocs modifiés.
Note: Pour désactiver le CBT, changez TRUE en FALSE dans les lignes ctkEnabled et scsi0:0.ctkEnabled (utilisez le numéro approprié du périphérique SCSI).
Lorsque le CBT est activé sur une VM, le VMkernel crée un fichier supplémentaire avec -ctk.vmdk dans le répertoire de la VM qui est utilisé pour stocker la correspondance des blocs de disque virtuel. Ce fichier est lié au disque .vmdk respectif et contient une liste des blocs modifiés dans ce disque virtuel entre le moment spécifique identifié dans le dernier ID de changement et l’état actuel. La taille du fichier CTK qui est créé reste la même et ne dépasse pas la taille d’origine à moins que la taille du disque virtuel ne soit augmentée. La taille du fichier CTK est d’environ 5 Mo pour chaque 10 Go de taille de disque VM.
La plupart des solutions de sauvegarde utiliseront la méthode VMware SDK pour activer de manière programmatique le CBT pour une VM et utiliseront un cycle de stun/unstun, qui inclut soit une mise sous tension ou hors tension, une suspension/reprise, ou créer/supprimer un instantané. Pendant un cycle de stun/unstun, un filtre de suivi des changements spécial est inséré dans la pile de stockage VMware pour la VM particulière, ce qui permet à CBT de s’instancier sur la VM.
Comment Vérifier si le CBT Est Activé
Dans les cas où vous n’avez pas activé manuellement le CBT, vous pouvez vérifier si le logiciel de sauvegarde a activé le CBT pour effectuer la sauvegarde de VM. Les étapes pour vérifier les paramètres CBT sont similaires aux étapes pour activer cette fonctionnalité. Mais ici, nous couvrirons une méthode légèrement différente en utilisant un fichier de configuration .vmx.
Pour vérifier si le CBT est activé pour la VM, suivez les étapes suivantes :
- Ouvrez VMware vSphere Client.
- Recherchez la VM nécessaire et assurez-vous qu’elle est hors tension.
- Accédez au dossier de la VM sur un datastore.
- Recherchez un fichier de configuration de la VM (.vmx).
Avec la CBT activée, chaque disque virtuel est accompagné d’un fichier xxx-ctk.vmdk, où « xxx » est un nom de disque virtuel. Si vous voyez ces fichiers CTK, cela indique la fonctionnalité CBT en cours.
Dans certains cas, tels qu’un arrêt inapproprié de l’hôte ou une panne de courant, la CBT peut perdre le suivi des modifications pendant que la VM est allumée. Cela peut entraîner une réinitialisation de la CBT, ce qui signifie que toutes les données CBT collectées précédemment seront effacées et que les nouvelles données commenceront à être collectées à partir du moment de la réinitialisation. Si vous lancez une sauvegarde de VM après la réinitialisation de la CBT, une sauvegarde complète est effectuée. Après avoir effectué une sauvegarde complète et suivi les nouvelles modifications, vous pouvez ensuite effectuer à nouveau des sauvegardes incrémentielles.
Utilisation de la CBT VMware dans NAKIVO Backup & Replication
NAKIVO Backup & Replication est une solution universelle de protection des données qui peut sauvegarder, récupérer et répliquer des machines virtuelles dans VMware vSphere. Pour accélérer la sauvegarde incrémentielle effectuée avec la solution NAKIVO, la CBT est activée par défaut dans tout nouveau travail de sauvegarde.
Il existe plusieurs cas où NAKIVO Backup & Replication, comme toute autre solution de sauvegarde vSphere, ne peut pas utiliser la CBT VMware :
- La CBT VMware n’est pas prise en charge par une VM : Cause possible – l’hôte ESXi est inférieur à la version 4.1, ou la version du matériel virtuel est inférieure à v7.
- Les données de la CBT VMware n’ont pas été fournies : Cause possible – panne de courant de l’hôte ESXi et perte de suivi des modifications incrémentielles de la VM par la CBT.
Dans les paramètres de suivi des modifications supplémentaires, vous pouvez trouver les actions que la solution doit prendre en cas d’erreur lors de l’utilisation de la CBT.
Jetons un coup d’œil plus attentif à ces actions en cas d’erreur :
- Passer à la méthode propriétaire : La méthode de suivi des modifications propriétaire de NAKIVO Backup & Replication sera utilisée, ce qui est plus lent que VMware CBT et consomme davantage de ressources de l’hôte ESXi.
- Réinitialiser CBT : CBT sera réinitialisé en cas d’échec de CBT.
- Échec du traitement de la VM : Le traitement de la VM sera arrêté.
De plus, vous pouvez spécifier quand appliquer l’action sélectionnée En cas d’erreur :
- Immédiatement : L’action en cas d’erreur est appliquée immédiatement (sauf pour l’action Réinitialiser CBT).
- À la prochaine tentative : L’action en cas d’erreur est appliquée à la prochaine tentative.
- À la dernière tentative : L’action en cas d’erreur est appliquée à la dernière tentative.
Vous pouvez également sélectionner la case à cocher Double-vérification des blocs modifiés fournis par CBT. Dans ce cas, les données fournies par VMware CBT seront également vérifiées par le suivi des modifications propriétaire de NAKIVO Backup & Replication. Cette approche est plus fiable, mais peut être plus lente que le VMware CBT régulier.
Conclusion
Le suivi des blocs modifiés de VMware est une fonctionnalité puissante qui rend le processus de sauvegarde plus rapide et fiable à tous égards. La technologie est bien testée et largement utilisée dans la technologie VMware native telle que Storage vMotion.
VMware CBT est une partie intégrante des solutions de sauvegarde modernes telles que NAKIVO Backup & Replication qui permettent des sauvegardes efficaces des environnements VMware sans charge supplémentaire sur les hôtes.
Source:
https://www.nakivo.com/blog/vmware-changed-block-tracking-works/