Was ist VMware Changed Block Tracking (CBT) und wie funktioniert es?
& < & VMware bietet APIs zur Vereinfachung der Datensicherheit in virtuellen Unternehmensumgebungen mit Funktionen, die agentenlose Backups ermöglichen und die Effizienz inkrementeller VM-Backups verbessern. Inkrementelle Backups helfen dabei, im Vergleich zu vollständigen Backups erheblich Speicherplatz zu sparen
Wenn es um moderne VMware-Backup-Lösungengeht, stützen sich die meisten auf die APIs von VMware und nutzen die Changed Block Tracking (CBT)-Technologie, um die Erstellung inkrementeller Backups von Virtuellen Maschinen zu vereinfachen und zu beschleunigen. In diesem Blogbeitrag erklären wir Changed Block Tracking, einschließlich der Funktionsweise und praktischen Anwendungen.
Was ist Changed Block Tracking?
Changed Block Tracking (CBT) ist eine native VMware-Funktion, die geänderte Blöcke in einer Tracking-Datei protokolliert. CBT ist Teil des VMware vSphere Storage APIs – Datensicherheit-Frameworks, das erstmals in Version 4.0 veröffentlicht wurde und es Datenprotektionsanwendungen von Drittanbietern ermöglicht, CBT für effizientere Backups und Replikationen zu nutzen.
CBT funktioniert auf der Ebene des ESXi Storage Stacks und ermöglicht es Backup-Lösungen von Drittanbietern, nur die seit dem letzten Backup geänderten Datenblöcke zu sichern, d. h. inkrementelle Backups oder die verwendeten Blöcke anstelle der gesamten VM zu erstellen. Dadurch können Sie die Menge der Backup-Daten drastisch reduzieren, insbesondere in großen Umgebungen mit Hunderten von VMs, und den Backup-Prozess beschleunigen.
VMware CBT reduziert den Zeitaufwand der Backup-Software für die Durchführung inkrementeller Backups erheblich, da es Änderungen in einer speziellen Protokolldatei verfolgt. Backup-Lösungen von Drittanbietern verursachen eine höhere CPU-Auslastung auf einem ESXi-Server, wenn sie Änderungen ohne CBT mit anderen Methoden verfolgen. Somit optimiert CBT auch die Leistung eines ESXi-Servers beim Sichern von Daten.
CBT wird auch von VMware für den Prozess „ <” (>) und „Storage vMotion” ( ) verwendet, mit dem Festplattendateien virtueller Maschinen während des Betriebs von einem Datenspeicher in einen anderen verschoben werden können.
Wie VMware die Blockverfolgung geändert hat
Die CBT-Funktion vergleicht die IDs des letzten und des aktuellen Änderungssatzes und ermittelt die Festplattensektoren, die zwischen diesen Änderungssatz-IDs geändert wurden. VMware CBT identifiziert außerdem alle verwendeten VMFS-Blöcke (Virtual Machine File System) auf einer virtuellen Festplatte. Die Verfolgung wird vom Hypervisor selbst durchgeführt und findet außerhalb der VM statt.
CBT-Anforderungen
Zu den Anforderungen für Changed Block Tracking gehören:
- VMware vSphere (ESXi 4.0 oder höher)
- Virtuelle Hardware der Version 7 oder höher
- Lokal VMFS-Datenspeicher, NFS- oder iSCSI-Datenspeicher
- Thick oder Thin Provisioning
- Keine RAW-Festplattenzuordnungen. Raw Device Mapping (RDM) im physischen Kompatibilitätsmodus wird nicht unterstützt.
- Eine VM darf keine Schnappschüsse haben, um VMware CBT verwenden zu können
So aktivieren Sie Changed Block Tracking
Standardmäßig ist CBT deaktiviert, da es eine geringe Menge an Host-CPU-Zeit verbraucht. Für eine Backup-Lösung eines Drittanbieters wie NAKIVO Backup & Replikation muss CBT jedoch aktiviert sein, damit das Produkt schnelle und zuverlässige inkrementelle Backups durchführen kann.
CBT wird in den erweiterten Konfigurationseinstellungen einer virtuellen Maschine aktiviert:
- Öffnen Sie die VM-Einstellungen. Sie können dies in VMware vSphere Client tun, indem Sie mit der rechten Maustaste auf eine VM klicken und „ <“ (Einstellungen bearbeiten) auswählen.>Edit Settings.
- Klicken Sie im Fenster „ <“ (VM-Optionen) >Einstellungen bearbeiten auf die Registerkarte „VM Options“ (VM-Optionen) > .
- Klicken Sie auf die Option Advanced , um die Einstellungen zu erweitern, und klicken Sie auf Bearbeiten der Einstellungen in der Zeile Configuration Parameters . Das Fenster „ <“ >Konfigurationsparameter für die VM wird geöffnet. Es enthält mehrere Zeilen, von denen jede einen Parameternamen und einen Wert enthält.
- Die CBT-Aktivierung wird von der folgenden Zeile in der .vmx Konfiguration bestimmt:
ctkEnabled = "TRUE"
Außerdem wird für jede Festplatte, auf der CBT aktiviert ist, ein Eintrag hinzugefügt:
scsix:x.ctkEnabled = "TRUE"
Diese Parameter müssen festgelegt werden, um Changed Block Tracking zu aktivieren.
Hinweis: Um CBT zu deaktivieren, ändern Sie TRUE in FALSE in den Zeilen ctkEnabled und scsi0:0.ctkEnabled (verwenden Sie die entsprechende Nummer des SCSI-Geräts).
Wenn CBT auf einer VM aktiviert ist, erstellt der VMkernel eine zusätzliche Datei mit -ctk.vmdk im VM-Verzeichnis, die zum Speichern der Zuordnung von virtuellen Festplattenblöcken verwendet wird. Diese Datei bezieht sich auf die jeweilige .vmdk Festplatte und enthält eine Liste der Blöcke, die in dieser virtuellen Festplatte zwischen dem in der letzten Änderungssatz-ID angegebenen Zeitpunkt und dem aktuellen Status geändert wurden. Die Größe der erstellten CTK-Datei bleibt unverändert und wächst nicht über die ursprüngliche Größe hinaus, es sei denn, die Größe der virtuellen Festplatte wird erhöht. Die Größe der CTK-Datei beträgt ungefähr 5 MB für jede 10 GB der Größe der VM-Festplatten.
Die meisten Backup-Lösungen verwenden die VMware SDK-Methode, um CBT für eine VM programmgesteuert zu aktivieren, und verwenden einen Stun/Unstun-Zyklus, der entweder das Ein- oder Ausschalten, das Anhalten/Fortsetzen oder das Erstellen/Löschen eines Schnappschusses umfasst. Während eines Stun/Unstun-Zyklus wird ein spezieller Filter für die Verfolgung von Änderungen in den VMware-Speicher für die jeweilige VM eingefügt, wodurch CBT auf der VM instanziiert werden kann.
So überprüfen Sie, ob CBT aktiviert ist
Wenn Sie CBT nicht manuell aktiviert haben, können Sie überprüfen, ob die Backup-Software CBT für die Durchführung von VM-Backups aktiviert hat. Die Schritte zum Überprüfen der CBT-Einstellungen ähneln den Schritten zum Aktivieren dieser Funktion. Hier wird jedoch eine etwas andere Methode unter Verwendung einer .vmx Konfigurationsdatei beschrieben.
Um zu überprüfen, ob CBT für die VM aktiviert ist, gehen Sie wie folgt vor:
- Öffnen Sie VMware vSphere Client.
- Suchen Sie die benötigte VM und stellen Sie sicher, dass sie ausgeschaltet ist.
- Wechseln Sie zum VM-Ordner auf einem Datenspeicher.
- Suchen Sie eine VM-Konfigurationsdatei (.vmx).
ctkEnabled enthalten. Der Wert des Eintrags muss „TRUE” lauten. Ist dies nicht der Fall, ändern Sie den Wert in „TRUE”, um CBT für die VM zu aktivieren.Wenn CBT aktiviert ist, wird jede virtuelle Festplatte von einer Datei begleitet: xxx-ctk.vmdk Dabei steht „xxx” für den Namen der virtuellen Festplatte. Wenn Sie diese CTK-Dateien sehen, bedeutet dies, dass die CBT-Funktion arbeitet.
In einigen Fällen, z. B. bei einem unsachgemäßen Herunterfahren des Hosts oder einem Stromausfall, kann CBT die Änderungen während des Betriebs der VM nicht mehr verfolgen. Dies kann dazu führen, dass CBT zurückgesetzt wird, was bedeutet, dass alle zuvor gesammelten CBT-Daten gelöscht werden und ab dem Zeitpunkt des Zurücksetzens neue Daten gesammelt werden. Wenn Sie nach dem Zurücksetzen von CBT ein Backup der VM durchführen, wird ein vollständiges Backup erstellt. Nachdem Sie eine vollständige Sicherung erstellt und neue Änderungen verfolgt haben, können Sie wieder inkrementelle Backups durchführen.
VMware CBT verwenden in NAKIVO Backup & Replikation
NAKIVO Backup & Replikation ist eine universelle Lösung für die Datensicherheit, mit der Sie Virtuelle Maschinen in VMware vSphere sichern, wiederherstellen und replizieren können. Um die mit der NAKIVO-Lösung durchgeführten inkrementellen Backups zu beschleunigen, ist CBT standardmäßig in jedem neuen Backupauftrag aktiviert.
Es gibt mehrere Verwendungsfälle, in denen NAKIVO Backup & Replikation, wie jede andere vSphere-Backup-Lösung, VMware CBT nicht verwenden kann:
- VMware CBT wird von einer VM nicht unterstützt: Mögliche Ursache – ESXi-Host ist niedriger als v4.1 oder die Version der virtuellen Hardware ist niedriger als v7.
- VMware CBT-Daten wurden nicht bereitgestellt: Mögliche Ursache – Stromausfall des ESXi-Hosts und CBT hat die inkrementellen Änderungen der VM nicht mehr nachverfolgt.
In den zusätzlichen Einstellungen für die Verfolgung der Änderungen finden Sie die Aktionen, die die Lösung ergreifen soll, wenn bei der Verwendung von CBT ein Fehler auftritt.
Schauen wir uns diese genauer an: Bei einem Fehler Aktionen:
- Wechseln Sie zur Eigenen Methode: NAKIVO Backup & Es wird die eigene Änderungsverfolgungsmethode von Replication verwendet, die langsamer als VMware CBT ist und mehr Ressourcen des VMware ESXi-Hosts verbraucht.
- CBT zurücksetzen: Bei einem CBT-Fehler wird das CBT zurückgesetzt.
- VM-Verarbeitung fehlgeschlagen: Die VM-Verarbeitung wird angehalten.
Außerdem können Sie festlegen, wann die ausgewählte Option angewendet werden soll. Bei Fehler Aktion:
- Sofort: Bei einem Fehler wird die Aktion sofort angewendet (außer bei der Aktion „CBT zurücksetzen”).
- Beim weiteren Versuch: Bei einem Fehler wird die Aktion beim weiteren Versuch angewendet.
- Beim letzten Versuch: Bei einem Fehler wird die Aktion beim letzten Wiederholungsversuch angewendet.
Sie können auch das Kontrollkästchen Doppelte Überprüfung der von CBT bereitgestellten geänderten Blöcke aktivieren. In diesem Fall werden die von VMware CBT bereitgestellten Daten zusätzlich mit der proprietären Verfolgung der Änderungen von NAKIVO Backup & Replikation & abgeglichen. Dieser Ansatz ist zuverlässiger, kann jedoch langsamer sein als das reguläre VMware CBT.
Fazit
VMware Changed Block Tracking ist eine leistungsstarke Funktion, die den Backup-Prozess in jeder Hinsicht schneller und zuverlässiger macht. Die Technologie ist gut getestet und wird in nativen VMware-Technologien wie Storage vMotion intensiv genutzt.
VMware CBT ist ein integraler Bestandteil moderner Backup-Lösungen wie NAKIVO Backup & Replication, die effiziente Backups von VMware-Umgebungen ohne zusätzliche Belastung der Hosts ermöglichen.



