Test: Virtual Machine Manager

18.02.2008
Von 
Dipl. Inform. Johann Baumeister blickt auf über 25 Jahre Erfahrung im Bereich Softwareentwicklung sowie Rollout und Management von Softwaresystemen zurück und ist als Autor für zahlreiche IT-Publikationen tätig. Sie erreichen ihn unter jb@JB4IT.de
Das Microsoft-Werkzeug erleichtert durch Fernwartung und rollenspezifische Nutzung die Administration virtueller Umgebungen.

Unter dem Sammelbegriff System Center fasst Microsoft seit rund zwei Jahren seine System-Management-Tools zusammen. Zu den jüngsten Elementen zählt der Virtual Machine Manager (VMM) für die Verwaltung von virtuellen Maschinen. In der Vergangenheit beschränkte sich diese Disziplin allein auf diejenigen virtuellen Maschinen, die durch Microsofts "Virtual Server" erzeugt und unter ihm ausgeführt wurden. Über die Kombination von VMM und Windows Server 2008 will Microsoft eine zweite Virtualisierungsumgebung bereitstellen, die als Hyper-V bezeichnet wird. Sie ist an den Hypervisor-Konzepten des ESX-Server von VMware angelehnt und soll Redmond weitere Anteile im viel versprechenden Virtualisierungsmarkt sichern. Derzeit jedoch spielt Microsoft gegenüber VMware noch eine Nebenrolle.

Fazit

Mit dem Virtual Machine Manager hat Microsoft in seiner Virtualisierungsstrategie einen großen Schritt nach vorne getan. Das Tool stellt alle Funktionen zu einer umfassenden Verwaltung virtueller Server-Systeme bereit und erlaubt eine einfache Administration von virtuellen Maschinen. Diese können im Kontext des Virtual Server und nun auch mit dem Windows Server 2008 ausgeführt werden. Ferner soll mit dem Hyper-V demnächst eine dritte Variante für virtuelle Infrastrukturen zur Verfügung stehen.

Pro und Kontra

- Sehr gute Benutzerführung;

- umfangreiches Funktions-Set;

- gute Integration in die Microsoft-Infrastruktur;

- Hilfe bei der Auswahl des Hosts;

- Automatisierung durch Powershell-Skripte;

- Self-Service-Portal für die Benutzer zur Verwaltung der VMs.

- Keine Migration laufender virtueller Maschinen zwischen Hosts;

- keine Unterstützung für die virtuellen Systeme von VMware.

So wurde getestet

Zum Test wurde der Virtual Machine Manager auf einem Rechnersystem mit Windows Server 2003 SP1 installiert. Dieses Betriebssystem war wiederum selbst Gast eines Virtual Server 2005 R2, der als Basis-Betriebssystem ebenfalls Windows Server 2003 SP1 verwendete. Das Basis-OS und der darauf befindliche Virtual Server 2005 wurden aus dem Virtual Machine Manager heraus verwaltet. Daneben wurde ein weiterer Rechner mit Windows Server 2003 SP1 und dem Virtual Server 2005 als Host-System eingesetzt. Diese wurden aus der Gastinstanz über eine Netzwerkbrücke verwaltet. Als Netzwerk kam ein gemischtes System mit Fast Ethernet und Gigabit-Ethernet-Baugruppen zum Einsatz.

Die Verteilung der virtuellen Maschinen erfolgte auf diese beiden Hosts. Als Speichermedien für die virtuellen Disks und zur Ablage der virtuellen Maschinen wurden sowohl die lokalen DAS-Platten der Host-Systeme als auch ein separates iSCSI-System verwendet. Der iSCSI-Speicher beruhte auf dem Windows Unified Data Storage Server, einer Windows-Server-2003-Variante zur Datenspeicherung. Der Domänen-Controller wurde ebenfalls in einer eigenen virtuellen Maschine ausgeführt.

Windows Server 2008 feierte sein offizielles Debüt im Februar, der Hypervisor soll 180 Tage später folgen. Zur Verwaltung von virtuellen Instanzen und virtuellen Infrastrukturen mit Windows Server 2008 und dessen Hypervisor soll auch der Virtual Machine Manager herangezogen werden, der damit zu einem zentralen Verwaltungs-Tool für die Server-Virtualisierung avanciert.

Für den folgenden Test kam die aktuelle und erste Version von VMM zum Einsatz, als Virtualisierer wurden zwei getrennte Host-Systeme mit Virtual Server 2005 verwendet. Die Architektur des VMM gliedert sich in die gängigen Komponenten: Dies sind zum einen der VMM-Server, eine Datenbank, in der VMM seine Konfigurationen ablegt, ferner die Verwaltungskonsole sowie ein Portal, über das Benutzer virtuelle Maschinen in Eigenregie verwalten können. Die Trennung des Servers von seiner Verwaltungsumgebung soll die Fernwartung des Systems über eine separate Konsole ermöglichen. Wenn nötig, kann die Verwaltungskonsole auch zusammen mit dem VMM-Server auf einem Rechnersystem laufen, eine Konstellation, die für diesen Test gewählt wurde.

Der Funktionsumfang

Der VMM umfasst die Funktionen zur Konfiguration des Hosts und bietet einen Assistenten, der bei der Auswahl des passenden Hosts unterstützt. Hinzu kommen eine Bibliothek für virtuelle Images und all jene Basisfunktionen, die zur Erzeugung und Verwaltung von virtuellen Maschinen benötigt werden. Mit von der Partie sind eine Reihe von Verwaltungsobjekten für das Monitoring und Reporting. Als Rechnerbasis zur Ausführung der virtuellen Maschinen kennt der VMM Hosts, die sich auch zu Gruppen (Host Groups) bündeln lassen. Die virtuellen Maschinen wiederum werden auf den Hosts platziert. Eine Host-Gruppe stellt aber lediglich eine Verwaltungseinheit für die virtuellen Maschinen dar. Ein automatischer Lastausgleich oder Failover, ähnlich wie es VMware mit VMotion anbietet, findet nicht statt.

Das bedeutet nicht, dass Microsoft keine Funktionen zur Lastverteilung anbietet, diese sind nur anders umgesetzt. Die Windows-Betriebssysteme bieten schon seit mehreren Jahren Cluster-Funktionen mit Balancing, weshalb bei Microsoft die Lastverteilung über das OS und nicht im Virtualisierungs-Tool erfolgt.

Die Hosts, ihre Gruppierung in Host-Gruppen und virtuellen Maschinen stellen die aktiven Elemente zur Laufzeit dar. Die Umsetzung aller Aktionen erfolgt im Zuge von Jobs. Dabei handelt es sich um Skripte, die in der Powershell erstellt wurden. Die Ausrichtung an der Powershell ist eine der konzeptionellen Neuerungen von Microsoft. Sie bedeutet, dass alle neuen Server und Verwaltungssysteme mit einer API für die Powershell ausgestattet werden. Über diese Schnittstelle werden die jeweiligen Server verwaltet. Die grafischen Tools generieren in dieser Konstellation immer nur Powershell-Skripte.

So verhält es sich auch mit der VMM-Konsole. Die Skripte werden von den Assistenten der VMM-Konsole aufgebaut und dann als Jobs abgearbeitet, was letztlich zu einer weitaus höheren Flexibilität führt: Zum einen entkoppelt das Verfahren den Aufbau der Kommandofolgen durch das GUI von der späteren Abarbeitung. Ferner stellt VMM diese Skripte dem Administrator zur Verfügung, der sie nach eigenem Gusto variieren, als Grundlage für eigene Batch-Läufe heranziehen und sich so einen Fundus an Verwaltungsskripten aufbauen kann.

Setup und Konfiguration

Die Gliederung des VMM in mehrere Komponenten findet sich analog bei den Installationsoptionen, die ein Setup des Server-Systems, der Verwaltungskonsole und eines Self-Service-Portals unterscheiden. Daneben steht der Virtual Server als eigentliche Ausführinstanz für die virtuellen Maschinen und künftig auch für den Hyper-V beziehungsweise Windows Server 2008. Der VMM fungiert dabei als verwaltende Konsole, die via APIs die Virtualisierungs-Engines überwacht und steuert. In den Virtual Server eingebettet sind wie schon bisher die virtuellen Maschinen. Als Basissystem für den VMM-Server wird Windows Server 2003 mit dem SP1 sowie die Windows-Remote-Verwaltung (WinRM) verlangt. Letztere lässt sich, falls nicht vorhanden, von der Microsoft-Website beziehen. Sind diese Voraussetzungen erfüllt, gibt es für die Bereitstellung und Konfiguration des VMM keine besonderen Anforderungen. Im Testszenario wurde die VMM-Konsole in einer virtuellen Instanz eines Windows Server 2003 ausgeführt. Der Basisrechner bestand ebenfalls aus Windows Server 2003 SP1 und dem darauf installierten Virtual Server R2. Er diente gleichzeitig auch als Host-System für weitere virtuelle Maschinen.

Zur Kommunikation mit dem Virtual Server oder auch dem Library Server benötigt der VMM einen Agenten. Dieser wird bei der Bereitstellung eines Hosts automatisch mit eingerichtet. Ferner wird auf diesem Rechner, falls der Virtual Server noch nicht besteht, auch dieser mit installiert. Im Test gab es zwei Host-Systeme, auf denen die virtuellen Maschinen liefen. Die Hosts ließen sich leicht in die VMM-Verwaltungsinfrastruktur einbinden. Die bereits auf dem Host vorhandenen virtuellen Maschinen wurden korrekt erkannt und integriert.

Generierung der VMs

Für den Aufbau neuer virtueller Maschinen stellt Microsoft wie für alle weiteren Aktionen Assistenten bereit. Diese fragen in einem mehrstufigen Dialog Einstellparameter ab, generieren am Ende die Skripte und erledigen die ihnen zugedachten Aufgaben. VMs lassen sich erzeugen, löschen, verschieben und kopieren. Der Anwender kann sie auch von physischen Rechnern migrieren oder aus einem ISO-Image, einer Vorlage (Template), einer VHD-Datei beziehungsweise einer bestehenden virtuellen Maschine ableiten. Im Rahmen des Dialogs wählt der Administrator die passenden Optionen aus. Hierzu zählen die Hardwareeinstellungen für die virtuellen Festplatten, die Netzkarten sowie Angaben zur CD/DVD-Nutzung, Diskettenlaufwerke und ähnliche Peripheriebausteine. Einstellbar ist auch eine relative CPU-Nutzung im Verhältnis zu allen anderen VMs auf diesem Host. Eine so erzeugte VM lässt sich direkt starten und ausführen. Sie kann aber auch in einer Bibliothek hinterlegt werden, wo sie für weitere Abbilder bereitsteht, die sich auf diesen Bibliothekseintrag beziehen.

Bei der Platzierung einer erzeugten VM sollte natürlich derjenige Host gewählt werden, der sich dafür am besten eignet. Diese Zuordnung kann der Administrator nach eigenen Wünschen vornehmen, oder er greift auf die Unterstützung des VMM selbst zurück. Der liefert ihm einen Vorschlag zur bestmöglichen Platzierung der VM im Hinblick auf die geforderten Ressourcen wie den Hauptspeicherbedarf, die Netz- und IO-Last sowie die CPU-Nutzung. Diese Vorschläge kann der VMM allerdings nur dann unterbreiten, wenn er das Lastverhalten der neuen virtuellen Maschine kennt oder einschätzen kann. Für neu zu erzeugende VMs müssen diese Angaben daher vom Administrator kommen. Das Vorschlagsverfahren wird aber nicht nur bei der Neuanlage von VMs angewandt, sondern gelangt auch bei der Migration von physischen Rechnersystemen in virtuelle Umgebungen zum Einsatz. In diesem Fall kann der VMM durch die Beobachtung des Lastverhaltens passende Vorschläge unterbreiten.

Selbstbedienung

Die Nutzung der VMM-Konsole ist in erster Linie für den IT-Verwalter gedacht. Er benötigt dazu die notwendige Software und die passenden Berechtigungen. Um eine abgestufte Verwaltung zu erreichen, sind Rollen zu definieren. Ferner kann die Konsole für die jeweiligen Bearbeiter angepasst werden. Daneben stellt Microsoft mit dem Self-Service-Portal die Verwaltungsfunktionen auch für weitere Nutzer der VMs bereit, sofern diese dazu berechtigt sind. Insbesondere für Testszenarien oder in der Softwareentwicklung lassen sich auf diesem Weg eigene Systeme aufbauen und verwalten. Die Berechtigungen dazu sind direkt an die Organisationseinheiten und Benutzer des Active Directory gebunden. Dabei ist auch zu bestimmen, was genau die berechtigten Personen dürfen oder nicht. Neben Starten und Stoppen der VMs sind das unter anderem die Funktionen zum Pausieren einer VM oder zum Setzen von Checkpoints. Damit die derart berechtigten Benutzer die Ressourcen des Hosts nicht über das ihnen zugedachte Maß hinaus beanspruchen, lassen sich Grenzen (Quotas) definieren.

Mit dem Self-Service-Portal stehen auch die Templates und Bibliotheken zur Verfügung. In Templates werden Vorlagen für die VM hinterlegt, auf die dann sehr schnell zugegriffen werden kann. Ein Template stellt aber immer nur das Grundgerüst für eine VM dar. Deren Detailkonfiguration, die Personalisierung des Systems, muss dabei noch vorgenommen werden. Hierzu gehören beispielsweise die Einstellungen zum Rechnernamen, der IP-Adressen oder auch der Security-IDs der Rechner. Diese Schritte werden heute häufig durch SYSPREP-Aktionen vorgenommen. SYSPREP kann auch in den Ablauf der VMM-Scripte integriert und damit automatisiert werden. (ue)