Server-Virtualisierung mit Intel VT-x

24.05.2011 von Julian Bühler
Der Trend zur Virtualisierung in Rechenzentren hält seit einigen Jahren ungebrochen an und wird sich laut aktueller Studien in den nächsten Jahren verstärkt fortsetzen. Durch Umrüstung Betriebskosten einzusparen und gleichzeitig einen umweltschonenden Beitrag zur "Green-IT" zu leisten macht für IT-Entscheider nicht trotz, sondern gerade wegen der Wirtschaftskrise vielerorts Sinn. Denn den Investitionen stehen Einsparpotenziale bei einer ganzen Reihe von Kostenfaktoren gegenüber: bei der Hardware, der Administration, den Räumlichkeiten (Stellfläche) und natürlich den Energiekosten (Betrieb, Kühlung).

Ohne Virtualisierung sah die Situation in Rechenzentren in der Vergangenheit etwa so aus: Für verschiedene Anwender sowie unterschiedliche Anwendungsgebiete wurden jeweils getrennte Serversysteme installiert und so konzipiert, dass sie selbst Anfragespitzen selbstständig abdecken konnten. Durch diesen Zwang zur "Überproportionierung" entstand laut IDC bisher eine durchschnittliche Serverauslastung von 5 bis 25 Prozent. Immense Kosten bei Anschaffung und Betrieb waren die Folge, und diese sind bis heute ein überzeugendes Argument zur Umrüstung. An die Stelle physikalischer Einzeleinheiten tritt ein Host-Server, der die einzelnen Systeme virtuell als Gäste unterhält.

Betriebssysteme, Applikationen und Daten sind dabei zuverlässig getrennt und laufen parallel, ohne voneinander zu wissen. Bestes Praxisbeispiel sind Web-Hoster, die für mehrere Hundert Kunden die individuellen Internetauftritte durch die Präsenz eines einzelnen physikalisch vorhandenen Servers realisieren. Dieses Konzept der Virtualisierung und Partitionierung ist bereits aus dem Mainframe-Bereich bekannt, konnte auf x86-Architektur aber erst durch einige Innovationen übertragen werden. Unter dem Begriff "Intel VT" hat Chip-Hersteller Intel seinen Prozessoren in den letzten Jahren bereits verschiedene Technologien als Grundlage für Server-Virtualisierungen hinzugefügt. Der Begriff wurde mittlerweile zu "Intel VT-x" für x86-basierte Xeon-Systeme und "Intel VT-i" für Itanium-Modelle der 9000er-Serie erweitert und erhielt folgende Untergruppen:

- VT-d = Virtualization Technology for Directed I/O

- VT-c = Virtualization Technology for Connectivity

Eine Liste aller Intel-Prozessoren mit Intel Virtualization Technology finden Sie hier oder in der detaillierten Modellübersicht hier.

Intel VT-x verhindert Privilegienkonflikte und macht eine effektive Virtualisierung auf der x86-Architektur möglich
Foto: Intel

Grundsätzlich hat das Thema Virtualisierung auch den Storage-, Desktop- und Netzwerk-Markt erreicht, allerdings verzeichnet die Server-Virtualisierung bisher die größten Zuwächse. Mit Intel VT-x haben Xeon-CPUs hier wichtige Neuerungen erhalten, die ein effizientes Virtualisieren auf x86-basierten Servern erst möglich machen. Der historische Hintergrund liegt im Privilegienmodell der x86-Architektur, das es nur zentralen Komponenten erlaubt, direkt auf die Hardware zuzugreifen. Diese höchste Stufe wird im Ringmodell als "Ring 0" benannt, während Applikationen im User-Mode "Ring 3" über die geringsten Rechte verfügen.

Für eine Virtualisierung wird zwischen diesen Ringstufen eine Softwareschicht implementiert, die die Kommunikation zwischen Hardware (also CPU) und Gast-Betriebssystemen kontrollieren muss. Man spricht bei dieser Ebene vom Hypervisor oder auch Virtual Machine Manager (VMM). Wenn ein noch nicht für Virtualisierung optimiertes Betriebssystem nun in dieser Umgebung läuft, kommt es zu einem Privilegienkonflikt, weil das OS, nun unerlaubterweise, nach wie vor Ring-0-Instruktionen direkt ausführen will. Dieses Problem wurde durch Intel VT-x (mit dem "VMX Root mode") behoben, da jetzt eine zusätzliche Schicht für Klarheit bei den Rechten sorgt und den Hypervisor korrekt arbeiten lässt.

Die Funktionen von Intel VT-x im Detailüberblick

Doch Intel VT-x belässt es nicht beim Privilegienmanagement, sondern bringt noch weitere wichtige Funktionen mit. Ein Überblick erklärt die wichtigsten Begriffe:

VT-d: Intel Virtualization Technology for Directed I/O

Bei der Virtualisierung von Ein- und Ausgabeoperationen (Input/Output, kurz I/O) ist erneut der Hypervisor gefragt, um Ressourcen zuverlässig und ohne Konflikte zwischen den verschiedenen Virtual Machines (VMs) bereitzustellen. Um ein I/O-Gerät verfügbar zu machen, gibt es verschiedene Modelle; doch in jedem Fall muss die I/O-Virtualisierung fähig sein, Gerätezugriffe auf die Ressourcen zu beschränken, die das entsprechende Gastsystem in Besitz hat. Zu diesem Zweck hat Intel VT-d vier Schlüsselfunktionen:

- I/O device assignment: Mit dieser Funktion können Administratoren I/O-Geräte bestimmten Virtual Machines (VMs) zuweisen und diese nach Wunsch konfigurieren.

- DMA remapping: Unterstützt die unabhängige Übersetzung von Direct Memory Access (DMA) bei den entsprechenden Geräten.

- Interrupt remapping: Unterstützt das Isolieren und Übermitteln von Interrupts von Geräten sowie externen Interrupt-Controllern zur jeweiligen VM.

- Reliability features: Protokolliert und meldet mögliche Fehler bei DMA und Interrupts und kann so mögliche Probleme frühzeitig verhindern.

VT-c: Intel Virtualization Technology for Connectivity

Der Zusatz VT-c umfasst mehrere Komponenten und zielt darauf, die Leistung des Gesamtsystems zu erhöhen, indem die Kommunikation zwischen der Host-CPU und den I/O-Geräten innerhalb der Virtual Machine verbessert wird. Jeder Teilbereich übernimmt dabei eine unterschiedliche Aufgabe:

- VMDq: Die Erweiterung "VMDq" sortiert Daten auf Halbleiterebene in mehrere Queues und verbessert durch den erhöhten Datendurchsatz die Netzwerkleistung bei gleichzeitiger CPU-Entlastung.

- VMDc: "Virtual Machine Direct Connect" ermöglicht die direkte Zuweisung einer virtuellen Funktion an eine Virtual Machine und realisiert so nahezu native Leistungswerte.

- Intel I/O Acceleration Technology: Diese Technik erhöht die Datenübertragungsraten in eingebundenen Netzwerken.

- SR-IOV: Die "Single Root I/O Virtualization" ist ein Standard der PCI-SIG-Gruppe, in der sich Intel mit anderen Herstellern für eine Erweiterung der Virtualisierungskapazitäten von I/O-Geräten einsetzt. Die Funktion ermöglicht mehreren VMs das gleichzeitige Nutzen eines Geräts. Neben diesen VT-Erweiterungen hat Intel noch weitere Technologien in die neuen Prozessor-Modelle integriert, die Administratoren neue Möglichkeiten geben und die Arbeit erleichtern. Vor allem "FlexMigration" und "FlexPriority" sind hier wichtige Innovationen. Die Migration von heterogenen Systemen stellte in virtualisierten Umgebungen in der Vergangenheit ein großes Problem dar und konnte nur mit viel Aufwand erreicht werden. Hier setzt FlexMigration an und macht es zum Beispiel möglich, Server unterschiedlicher Generationen (beispielsweise 5200er, 5400er, 5500er) zu einem "Virtualisierungspool" zusammenzufügen.

Verschiedene Intel Core-Systeme mit 1-, 2-, 4- oder Mehrprozessorservern können so komfortabel migriert werden. FlexPriority steigert indes die Effizienz der Virtualisierungssoftware durch ein verbessertes Interrupt-Handling. Hierdurch profitieren insbesondere 32-Bit-Betriebssysteme: Beispielsweise kann FlexPriority bei Applikationen auf Windows Server 2000 zu Performancesteigerungen von bis zu 35 Prozent führen.

Virtualisierung spart Geld

Mit jeder neuen Generation XEON-Prozesoren wurde die Virtualisierungs-Leistung deutlich erhöht.
Foto: Intel

Wie man sieht, ist Intels Liste an Einzelinnovationen im Bereich Virtualisierung mittlerweile recht lang. Welche effektiven Vorteile sich aus diesen im Zusammenspiel mit der aktuellen Core-Technik ergeben, erkennt man aber erst richtig in der Praxis. Deutliche Performanceschübe machen die aktuellen Xeon-Server zu extrem leistungsfähigen Boliden der modernen Rechenzentren und bieten damit gute Voraussetzungen, bisherige Einzelserver nun in virtualisierte Umgebungen zu überführen. Mit jeder neuen Generation XEON-Prozesoren wurde die Virtualisierungs-Leistung deutlich erhöht. Am Best-Practice des US-Lebensmittelkonzerns Welch’s wird dies deutlich. Um den Kollaps des an seine Performancegrenzen geratenen Rechenzentrums zu vermeiden, entschloss man sich zu einer Umrüstung der Infrastruktur.

Mittels VMware und Dell-Systemen auf Basis von Intel Quad-Core-Prozessoren wurde die Virtualisierung effektiv umgesetzt: Bis zu 15 virtuelle Maschinen werden seitdem pro ESX-Host bereitgestellt, wodurch die Firma über einen Zeitraum von fünf Jahren etwa 300.000 Dollar allein bei den Hardwarekosten einspart. Damit Virtualisierungsprojekte, so wie im Beispiel Welch’s, erfolgreich umgesetzt werden können, hat Intel in den letzten Jahren einiges geleistet. Neben der Integration der beschriebenen Funktionen von Intel VT-x ist die Weiterentwicklung der Core-CPUs ein wichtiger Faktor. Die Performancegewinne der neuen Prozessorgenerationen bieten deutlich mehr Kapazitäten für Virtualisierungsvorhaben und tragen so zur positiven Entwicklung bei.

Mehr Performance und weniger Kosten sprechen für sich

Zur Berechnung der Kostenersparnis von Virtualisierungsprojekten stellt Intel ein eigenes Online-Tool zur Verfügung, das die jeweils individuellen Gegebenheiten mit einbezieht. Mit dem Roi-Kalkulator unter dem Link http://www.intel.com/technology/virtualization/server/roi_calculator.htm können anwenderspezifische Angaben gemacht und der "Return of Investment" berechnet werden.

Fazit:

Ein Blick auf den Virtualisierungs-Trend der letzten Jahre zeigt: Die Entwicklung steht erst am Anfang und wird in Zukunft noch viele neue Möglichkeiten bieten. Mit der fortlaufenden Integrierung neuer VT-Funktionen sowie der anhaltenden Effektivitätssteigerung bei neuen Prozessorgenerationen liefert Intel hierfür wichtige Grundlagen. Im Ergebnis rechnen sich Server-Virtualisierungen und führen zu deutlichen betriebswirtschaftlichen Vorteilen. Gleichzeitig wird ein wichtiger Beitrag zum Umweltschutz geleistet. Ein Trend, der in die richtige Richtung geht.