Hochverfügbarkeit für VMware vCenter: vSphere HA, DRS, Guest-Cluster

    VMware HA spielt eine zentrale Rolle für die hohe Verfügbarkeit von vCenter.VMware vCenter ist als Management-Zentrale eine kritische Kompo­nente von vSphere. Dieses kann jedoch selbst die Mittel zur Verfügung stellen, um vCenter hoch verfügbar zu machen. Dazu zählen das automatische Neustarten von Management-VMs auf anderen Hosts oder das Einrichten von Guest-Cluster für die Datenbank.

    Während vCenter in den Frühzeiten von vSphere (bzw. Virtual Infrastructure) fast immer auf einem physikalischen Server installiert wurde, läuft die Management-Umgebung heute meistens in virtuellen Maschinen. Dies entspricht seit der Version 4.1 der Empfehlung von VMware, auch wenn physikalische Implementierungen weiterhin unterstützt werden.

    Zirkuläre Abhängigkeit

    Als Argument für die Virtualisierung von vCenter gilt, dass vSphere die Hardware-Ressourcen besser auf die Workloads verteilen kann und zudem eine Reihe von Features für ihre hohe Verfügbarkeit bietet. Gleichzeitig drängt sich natürlich der Einwand auf, dass die meisten dieser fortgeschrittenen Funktionen ein funktionierendes vCenter voraussetzen und sie daher die Management-Umgebung nicht mehr schützen können, wenn diese selbst ausgefallen ist.

    Auch wenn sich bei der Virtualisierung von vCenter scheinbar die Katze in den Schwanz beißt, kann man die Infrastruktur so konfigurieren, dass die Ausfallzeiten gering bleiben. Maßgeblich sind dafür zwei Eigenschaften von vSphere:

    • vCenter ist zwar eine kritische vSphere-Komponente, aber die VMs auf den ESXi-Hosts laufen weiter, wenn die Management-Umgebung ausfällt. Je nach Komplexität der vSphere-Installation wirkt sich daher erst eine längere vCenter-Downtime auf die produktiven Applikationen aus, kürzere Ausfälle sind meist folgenlos. Daher bleibt oft genug Zeit, vCenter nach einem Ausfall manuell wieder online zu bringen.
    • Ein wesentliches Feature für die Verfügbarkeit eines virtualisierten vCenter ist vSphere HA. Es sorgt dafür, dass eine VM nach einem Absturz neu gestartet oder beim Defekt eines Hosts auf einem anderen Host des Clusters hochgefahren wird. Die Konfiguration von vSphere HA erfolgt zwar in vCenter, aber anschließend überwacht der Hypervisor den Heartbeat von VMs und veranlasst selbständig ein automatisches Failover.

    Dagegen ist Distributed Resource Scheduler von einem funktionierenden vCenter abhängig. Es wird etwa dann benötigt, wenn HA eine vCenter-VM nach einem Hardware-Defekt auf einem anderen Host des Clusters neu starten möchte, aber dort nicht genügend Ressourcen zur Verfügung stehen. In diesem Fall würde DRS vorhandene VMs auf andere Server umschichten, um ausreichend Kapazitäten freizumachen.

    vSphere DRS kann keine Ressourcen für den Neustart von vCenter freimachen, weil es selbst in der Management-Umgebung abläuft.

    Best Practices

    Aus diesem Grund empfiehlt ein kürzlich erschienenes Whitepaper von VMware (PDF) folgendes Vorgehen:

    • Alle Verwaltungswerkzeuge sollten auf einem dedizierten Management-Cluster platziert werden. Dies beseitigt die Gefahr, dass andere Anwendungen die Performance der Management-Tools reduzieren oder dass umgekehrt der Ressourcenverbrauch von vCenter die produktiven Applikationen beeinträchtigt. Außerdem lassen sich so die zu vCenter gehörenden VMs im Fehlerfall leichter lokalisieren.
    • Aktivieren von HA und VM-Monitoring für das Management-Cluster. Letzteres ist per Voreinstellung abgeschaltet. Zudem sollte die Restart-Priorität für alle vCenter-VMs auf hoch gesetzt werden.
    • Aktivieren und Konfigurieren der HA-Zugangssteuerung für den Management-Cluster: Nachdem bei Ausfall von vCenter keine Ressourcen mit Hilfe von DRS freigemacht werden können, sollten sie vorab in ausreichendem Maße durch die Zugangssteuerung reserviert werden. Nur so ist garantiert, dass sich vCenter nach Ausfall eines Hosts auf einem anderen neu starten lässt.
    • Die in Windows-VMs als Dienste laufenden Komponenten von vCenter sollten so eingestellt werden, dass sie bei einem Absturz nach 2 bis 3 Minuten automatisch neu starten.

    vCenter besteht aus mehreren Anwendungen, dazu gehören neben der eigentlichen vCenter Server Application der Inventory Service, vCenter SSO und der Web Client. Man kann sie wahlweise in einer VM installieren oder auf mehrere aufteilen. Entscheidet man sich für Letzteres, dann rät VMware zur Definition von Affinitätsregeln, um die beteiligten virtuellen Maschinen möglichst auf einem Host zusammenzuführen.

    Guest Cluster für SQL Server

    Die genannten Komponenten von vCenter fasst VMware unter dem Begriff Compute Nodes zusammen, weil es sich dabei um Anwendungen handelt. Daneben umfasst die Management-Umgebung aber auch eine Datenbank, in der vSphere seine Konfiguration speichert. Für diese Data Nodes existiert neben den oben skizzierten Maßnahmen eine zusätzliche Option in Form von Microsoft Failover Clustering, um eine hohe Verfügbarkeit des SQL Server zu gewährleisten.

    Eine Konfiguration, bei der virtualisierte Windows Server zu einem Cluster zusammengeschlossen werden, unterstützt VMware seit vSphere 5.5 offiziell, um SQL Server gegen einen Ausfall zu schützen. Sie erlaubt zudem Administratoren, einen DB-Knoten für Wartungsarbeiten offline zu nehmen, ohne dass vCenter davon betroffen ist.

    Voraussetzung für den Einsatz von Guest Cluster für die Datenbank ist mindestens SQL Server 2008 R2 SP1. Darüber hinaus unterstützt nur die Enterprise Edition das Einrichten von MSCS.

    Keine Kommentare