Was ist VMware Changed Block Tracking (CBT) und wie funktioniert es?
VMware stellt APIs zur Verfügung, um die Datensicherheit in virtuellen Enterprise-Umgebungen zu vereinfachen. Diese bieten Funktionen, die agentenlose Backups ermöglichen und die Effizienz inkrementeller VM-Backups verbessern. Inkrementelle Backups tragen dazu bei, im Vergleich zu Vollbackups erheblich Speicherplatz einzusparen
. Wenn es um moderne VMware-Backup-Lösungengeht, setzen die meisten auf die APIs von VMware und nutzen die Changed Block Tracking (CBT) -Technologie, um die Erstellung inkrementeller Backups virtueller Maschinen zu vereinfachen und zu beschleunigen. In diesem Blogbeitrag erläutern wir Changed Block Tracking, einschließlich der Funktionsweise und praktischer 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 – Data Protection “-Frameworks, das erstmals in Version 4.0 veröffentlicht wurde und es Datensicherheits-Anwendungen von Drittanbietern ermöglicht, „ CBT “ zu nutzen, um effizientere Backups und Replikationen durchzuführen. „
CBT “ arbeitet auf der „ ESXi Storage Stack “-Ebene 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 zu erstellen, oder nur die tatsächlich genutzten Blöcke anstelle der gesamten VM. Dadurch können Sie die Menge der Daten für Backups erheblich reduzieren, insbesondere in großen Umgebungen mit Hunderten von VMs, und den Prozess des Backups beschleunigen.
VMware CBT reduziert die Zeit, die die Sicherungssoftware für inkrementelle Backups benötigt, erheblich, da Änderungen in einer speziellen Protokolldatei nachverfolgt werden. Sicherungslösungen von Drittanbietern verursachen eine höhere CPU-Auslastung auf einem ESXi-Server, wenn sie Änderungen ohne CBT mithilfe anderer Methoden nachverfolgen. Somit CBT optimiert auch die Leistung eines ESXi-Servers beim Sichern von Daten.
CBT wird auch vom VMware-Prozess Storage vMotion verwendet, der es ermöglicht, Festplattendateien virtueller Maschinen während des Betriebs von einem Datenspeicher in einen anderen zu verschieben.
So funktioniert VMware Changed Block Tracking
Die Funktion CBT vergleicht den letzten und den aktuellen changeset IDs und ermittelt die Festplattensektoren, die zwischen diesen changeset IDsgeändert wurden. VMware CBT identifiziert zudem alle Virtual Machine File System (VMFS) Blöcke auf einer virtuellen Festplatte, die gerade genutzt werden. Die Nachverfolgung 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
- Lokale {24} Datenspeicher,
NFSoderiSCSIDatenspeicher - Thick- oder Thin-Provisioning
- Keine
RAW disk mappings.Raw Device Mapping (RDM)inPhysical Compatibility Modewird nicht unterstützt. - Eine VM darf kein Schnappschüsse aufweisen, um
VMware CBT
nutzen zu können. So aktivieren Sie Changed Block Tracking
Standardmäßig ist CBT deaktiviert, da es eine geringe Menge an Host-CPU-Zeit beansprucht. Für eine Backup-Lösung eines Drittanbieters wie NAKIVO Backup & Replication 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. Dies können Sie unter
VMware vSphere Clienttun, indem Sie mit der rechten Maustaste auf eine VM klicken undEdit Settingsauswählen. - Klicken Sie im Fenster
Edit settingsauf die RegisterkarteVM Options. - Klicken Sie auf die Optionen-Kategorie
Advanced, um die Einstellungen zu erweitern, und klicken Sie in der ZeileEdit ConfigurationaufConfiguration Parameters. Das Fenster „Configuration Parameters“ für die VM wird geöffnet und enthält mehrere Zeilen, von denen jede einen Parameternamen und einen Wert enthält. Die Aktivierung von „ CBT“ wird durch die folgende Zeile in der Konfiguration unter „.vmx“ festgelegt:
ctkEnabled = "TRUE"
Außerdem wird für jede Festplatte, für die „ CBT “ aktiviert ist, ein Eintrag hinzugefügt:
scsix:x.ctkEnabled = "TRUE"
Diese Parameter müssen gesetzt 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 Geräts „ SCSI “).
Wenn CBT auf einer VM aktiviert ist, erstellt der VMkernel eine zusätzliche Datei mit dem Namen -ctk.vmdk im VM-Verzeichnis, die zur Speicherung der Zuordnung virtueller Festplattenblöcke dient. Diese Datei bezieht sich auf die jeweilige .vmdk Festplatte und enthält eine Liste der Blöcke, die auf dieser virtuellen Festplatte zwischen dem im letzten changeset ID angegebenen Zeitpunkt und dem aktuellen Zustand geändert wurden. Die Größe der CTK Datei, die erstellt wird, bleibt gleich 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 Datei CTK beträgt ungefähr 5 MB pro 10 GB der Größe der Festplatte der VM.
Die meisten Lösungen zum Backup verwenden die Methode VMware SDK , um CBT für eine VM programmgesteuert zu aktivieren, und nutzen eine stun/unstun cycle, die entweder das Ein- oder Ausschalten, das Anhalten/Fortsetzen oder das Erstellen/Löschen eines Schnappschusses umfasst. Während eines stun/unstun cyclewird ein spezieller Filter zur Verfolgung der Änderungen in den VMware storage stack für die jeweilige VM eingefügt, wodurch CBT auf der VM instanziiert werden kann.
So überprüfen Sie, ob CBT aktiviert ist
Falls 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 behandeln wir jedoch eine etwas andere Methode unter Verwendung einer .vmx Konfigurationsdatei.
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 gewünschte VM und stellen Sie sicher, dass sie ausgeschaltet ist.
- Wechseln Sie zum VM-Ordner auf einem Datenspeicher.
- Suchen Sie eine VM-Konfigurationsdatei (.
vmx).
vmx Konfigurationsdatei sollte den Eintrag 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.Bei aktiviertem CBTwird jeder virtuellen Festplatte eine Datei xxx-ctk.vmdk zugeordnet, wobei "xxx" der Name der virtuellen Festplatte ist. Wenn Sie diese CTK Dateien sehen, deutet dies auf die funktionierende CBT Funktion hin.
In einigen Fällen, wie z. B. bei einem unsachgemäßen Herunterfahren des Hosts oder einem Stromausfall, kann CBT die Änderungen verlieren, während die VM eingeschaltet ist. Dies kann dazu führen, dass CBT zurückgesetzt wird, was bedeutet, dass alle zuvor erfassten CBT Daten gelöscht werden und die Erfassung neuer Daten ab dem Zeitpunkt des Zurücksetzens beginnt. Wenn Sie nach dem CBT Zurücksetzen ein Backup durchführen, wird ein vollständiges Backup erstellt. Nachdem Sie eine vollständige Sicherung durchgeführt und neue Änderungen erfasst haben, können Sie wieder inkrementelle Sicherungen durchführen.
Verwendung von VMware CBT in NAKIVO Backup & Replication
NAKIVO Backup & Replication ist eine universelle Lösung für die Datensicherheit, mit der virtuelle Maschinen in VMware vSphere gesichert, wiederhergestellt und repliziert werden können. Um inkrementelle Sicherungen mit der NAKIVO-Lösung zu beschleunigen, ist CBT standardmäßig in jedem neuen Auftrag aktiviert.
Es gibt mehrere Verwendungsfälle, in denen NAKIVO Backup & Replication, wie jede andere vSphere-Backup-Lösung auch, VMware CBTnicht verwenden kann:
VMware CBTwird von einer VM nicht unterstützt : Mögliche Ursache – ESXi-Host ist älter als v4.1 oderVirtual HardwareVersion ist älter als v7.
VMware CBTDaten wurden nicht bereitgestellt : Mögliche Ursache – Stromausfall am ESXi-Host undCBTVerlust der Nachverfolgung inkrementeller Änderungen an der VM.
In der zusätzlichen Verfolgung ändern settingsdie Aktionen, die die Lösung ergreifen sollte, wenn bei der Verwendung von CBTein Fehler auftritt.
Sehen wir uns diese On error Aktionen einmal genauer an:
Switch to proprietary method: Es wird die NAKIVO Backup & Replication-Eigene Methode zur Verfolgung von Änderungen verwendet, die langsamer ist alsVMware CBTund mehr Ressourcen des ESXi-Hosts beansprucht.Reset CBT:CBTwird für denCBTzurückgesetzt, fallsCBTfehlschlägt.Fail VM processing: Die Verarbeitung der VM wird angehalten.
Außerdem können Sie festlegen, wann die ausgewählte On error Aktion angewendet werden soll:
Immediately: Bei einem Fehler wird die Aktion sofort angewendet (mit Ausnahme derReset CBTAktion).On the next retry: Die Aktion bei einem Fehler wird beim weiteren Wiederholungsversuch angewendet.On the last retry: Die Aktion bei einem Fehler wird beim letzten Wiederholungsversuch angewendet.
Sie können auch das Kontrollkästchen „ Double-check changed blocks provided by CBT “ aktivieren. In diesem Fall werden die von „ VMware CBT “ bereitgestellten Daten zusätzlich anhand der NAKIVO Backup & Replication-eigenen Verfolgung zum Ändern von Änderungen überprüft. Dieser Ansatz ist zuverlässiger, kann jedoch langsamer sein als die 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 getestet und wird in nativen VMware-Lösungen wie Storage vMotionin großem Umfang eingesetzt. „
VMware CBT “ ist ein wesentlicher Bestandteil moderner Backup-Lösungen wie NAKIVO Backup & Replication, die effiziente Backups von VMware-Umgebungen ermöglichen, ohne die Hosts zusätzlich zu belasten.



