Veeam Backup & Replication ist eine sehr tolle und umfangreiche Software zum Sichern von Hypervisors wie VMware ESXi oder Microsoft Hyper-V. In den vergangenen Wochen hat mich Veeam jedoch mit einem Problem ratlos gemacht: Veeam konnte meine zwei Microsoft SQL Server 2014 Service Pack 1 in einer Always-On-Gruppe einfach nicht sichern, obwohl diese offiziell von Veeam unterstützt werden. In der Verwaltungsoberfläche trat immer folgender Fehler auf:
“VSSControl: Failed to freeze guest, wait timeout” (siehe ebenfalls im Screenshot 1)
Zur groben Übersicht, so sah die minimalistische Umgebung aus:
- 1x VMware ESXi 5.5 U2
- 1x VMware vCenter 5.5 U2
- 1x Veeam Backup and Replication v8 (v8.0.0.20121)
- 2x Microsoft SQL Server 2014 SP1
- in zwei eigenen virtuellen Maschinen
- beide Nodes in einer Always-On-Gruppe
- AOG erreichbar unter DNS “sqlcl-vcenter.domain.local”
Woran das nun liegen könnte? Hier schieden sich die Geister. Nach meinen Recherchen kann folgender Fehler auftreten, wenn beispielsweise keine Verbindung über die VIX-API von VMware hergestellt werden kann, der SQL Server VSS-Writer-Dienst auf der Maschine zuwenige Berechtigungen hat oder die Vorbereitungszeit für den VSS-Vorgang zu kurz ist. Keiner der genannten Seiten konnte im Endeffekt das Problem lösen.
Nach weiteren Recherchen konnte ich noch einen ähnlichen Fehler im Netz finden: “VSSControl: Failed to prepare guest for freeze, wait timeout 900 sec.” – wie bereits erwähnt: Die Meldung ist nicht die Gleiche, sie ist nur ähnlich. Zu dieser Fehlermeldung lässt sich in der Veeam Knowledge-Base (KB1051) eine Lösung finden und zwar sagt diese aus, dass man die vCenter-Datenbank als Ausnahme zur SQL-Sicherung hinzufügen soll. Voller Verzweiflung habe ich mir auch folgenden Ratschlag zu Herzen genommen… aber: Veeam konnte bereits zuvor automatisiert die vCenter-Datenbank ermitteln und zur “SQL Databases Exclusions”-Liste hinzufügen (siehe Screenshot 2), doch die Sicherung schlug weiterhin fehl.
Nun stellt sich die Frage: Wenn doch Alles passt und ich Vieles bereits erfolglos versucht habe, wieso schlägt dann weiterhin die Sicherung fehl? Nach mehreren Tagen kam ich dann aus weiterer Verzweiflung auf die spontane Idee, doch einfach die zwei Microsoft SQL-Server manuell in die Ausnahmeliste von Veeam hinzuzufügen – siehe Screenshot 3.
Also gut, habe ich nun die einzelnen Nodes der Always-On-Gruppe eingetragen und mit der Einstellung “Mehr als nicht funktionieren kann’s ja nicht” die Sicherung erneut angestossen… und siehe da… ich konnte meinen Augen ja fast nicht trauen…
Nun lief die Sicherung problemlos durch…
Um sicher zu gehen, dass die erfolgreiche Sicherung nun mehr oder weniger kein Zufall war, habe ich die Sicherung direkt ein zweites Mal gestartet. Als dann die zweite Sicherung ebenfalls erfolgreich durchlief, musste ich dann vor Freude einige Luftsprünge machen…
Schlussfolgerung: Veeam scheint zwar nun in der Lage zu sein die verwendende Datenbank vom VMware vCenter korrekt auszulesen und diese bei den Sicherungen zu ignorieren, doch scheint die Software es nicht zu erkennen, dass es sich hierbei um eine Always-On-Gruppe handelt und die Nodes auch einzeln ignoriert werden müssen. Ob das nun auch bei einem SQL Server-Cluster zutrifft, kann ich leider nicht sagen.
Manchmal ist die Lösung doch völlig woanders zu finden, als man anfänglich vermutet hat…
The post Veeam: VSSControl: Failed to freeze guest, wait timeout appeared first on [patschi@pkern.at]$.