CBT Fehler beim Backup einer VM unter ESXi 6.0 (KB2114076)

Derzeit gibt es noch einen unschönen Bug in ESXi 6.0.0 in Zusammenhang mit CBT und Backup. Besonders dann wenn eine VM viele virtuelle Disks hat oder viele VMs auf einem ESXi registriert sind. Es gibt derzeit nur die Möglichkeit CBT zu deaktivieren, was aber die Backupzeiten dramatisch verlängert.

VMware ESXi

Quelle: Backing up a virtual machine with Change Block Tracking (CBT) enabled fails after upgrading to or installing VMware ESXi 6.0 (2114076)

ESXi: kritischer Fehler in CBT kann Backups unbrauchbar machen

Changed-Block-Tracking (CBT) ist eine sehr nützliche Funktion, um beispielsweise einer Backup Software mitzuteilen, welche Blöcke sich seit einen Zeitpunkt [t] verändert haben. Somit können gezielt diese Blöcke gesichert werden, was natürlich erheblich Zeit spart.
Genau in dieser CBT Funktion gibt es einen Fehler, der lange unerkannt blieb. Er tritt nach Angaben von VMware dann auf, wenn eine vDisk über 128 GB vergrößert wurde.
VMware und Veeam empfehlen, nach einer Vergrößerung der vDisk einer VM, einen CBT reset durchzuführen. Beim nächsten Durchgang von Veeam Backup wird CBT wieder aktiviert und arbeitet korrekt.

Alternativ kann auch ein PowerCLI Skript verwendet werden, das CBT im laufenden Betrieb zurücksetzt. Das Skript resetCBT wurde vom Veeam Support erstellt. Der Aufruf erfolgt mit Parametern. Es funktioniert nur bei eingeschalteten VMs.

Verwendung auf eigen Gefahr !

-vcenter: <FQDN vCenter>

-vms: Liste der VMs durch Komma getrennt (keine Leerzeichen!)

resetCBT.ps1 -vcenter example.vcenter.local -vms "vmname1,vmname2,vmname3,vmname4"

ResetCBT01

Update:

Möglicherweise löst VMware das Problem in ESXi5.5 mit aktuelltem Patchlevel (2143827) automatisch (?). Nach der Vergrößerung einer vDisk meldete Veeam Backup (v7) folgende Warnung:

ESXiCBT01Wurde von Seite des ESXi Servers das CBT automatisch deaktiviert?

Update 17. Nov 2014

Veeam hat einen Hotfix für B&R Version 7 veröffentlicht. Er besteht aus 4 DLL Dateien, die getauscht werden müssen. Voraussetzung ist Veeam Backup and Replication 7.0.0.871 (patch 4).

  • Sicherstellen dass Version 7.0.0.871 installiert ist
  • Veeam Dienste stoppen
  • DLLs im Verzeichnis “C:\Program Files\Veeam\Backup and Replication\Backup” mit den Hotfix DLLs ersetzen.
  • Veeam Dienste wieder starten

 Links

  • Veeam KB – CBT Data Corruption
  • VMware KB – QueryChangedDiskAreas API returns incorrect sectors after extending virtual machine vmdk file with Changed Block Tracking (CBT) enabled (2090639)
  • Veeam KB – How to reset CBT

 

VM mit falscher Changed Block Tracking Information

Im Protokoll einer Veeam Sicherung trat neulich folgende Meldung auf:

Verifying changed block tracking…
Disk “Festplatte 2” has incorrect changed block tracking configuration.

Den Lösungsansatz lieferte das Protokoll selbst.

One or more VM disks have incorrect changed block tracking configuration. To resolve this, open VMware vSphere Client, right-click the VM, choose Edit Settings, Options tab, select General, click Configuration Parameters, and set all entries with ‘ctkEnabled’ substring to false. Veeam Backup will then automatically re-enable changed block tracking with the correct settings during the next job run.

Um dies zu korrigieren verfährt man folgendermaßen:

vSphere Client Offnen und die VM markieren. [Einstellungen bearbeiten] > Tab [Optionen] > [Allgemein] > [Konfigurationsparameter]. Sollte das Feld [Konfigurationsparameter] grau sein, so liegt es daran, daß die VM noch läuft. Für Modifikationen muß diese zuvor herunter gefahren werden.

Dort alle SCSI-Nodes suchen und den Wert bei ctkEnabeled auf “false” setzen. CTK wird beim nächsten Backup automatisch wieder auf “true” gesetzt.

 

Die VM darf zu diesem Zeitpunkt keine Snapshots haben. Vgl. hierzu KB Artikel 1020128.