Virtualisierung

menu icon

Virtualisierung

Virtualisierung ist ein Prozess, der eine effizientere Nutzung der physischen Computer-Hardware ermöglicht und die Grundlage für das Cloud Computing darstellt.

Was ist Virtualisierung?

Bei der Virtualisierung wird Software verwendet, um eine Abstraktionsebene über der Computer-Hardware zu schaffen, die es ermöglicht, die Hardware-Elemente eines einzelnen Computers - Prozessoren, Arbeitsspeicher, Speicher und mehr - in mehrere virtuelle Computer zu unterteilen, die allgemein als virtuelle Maschinen (VMs) bezeichnet werden. Jede VM führt ihr eigenes Betriebssystem (OS) aus und verhält sich wie ein eigenständiger Computer, obwohl sie nur auf einem Teil der zugrunde liegenden Computer-Hardware ausgeführt wird.

Daraus folgt, dass die Virtualisierung eine effizientere Nutzung der physischen Computer-Hardware ermöglicht und eine höhere Rentabilität der Hardware-Investitionen eines Unternehmens bietet.

Virtualisierung ist heute eine Standardpraxis in der IT-Architektur von Unternehmen. Sie ist auch die Technologie, auf der das Cloud Computing basiert. Virtualisierung ermöglicht es den Cloud-Providern, die Benutzer mit ihrer vorhandenen physischen Computer-Hardware zu unterstützen; sie ermöglicht den Cloud-Benutzern, nur die Rechenressourcen zu kaufen, die sie gerade benötigen, und diese Ressourcen kostengünstig zu skalieren, wenn ihre Workloads wachsen.

Einen weiteren Überblick darüber, wie Virtualisierung funktioniert, sehen Sie in unserem Video "Virtualization Explained" (5:20):

Vorteile der Virtualisierung

Virtualisierung bietet Betreibern von Rechenzentren und Service-Providern verschiedene Vorteile:

  • Ressourceneffizienz: Vor der Virtualisierung benötigte jeder Anwendungsserver seine eigene dedizierte physische CPU - die IT-Mitarbeiter mussten für jede Anwendung, die sie ausführen wollten, einen eigenen Server kaufen und konfigurieren. (Die IT-Abteilung bevorzugte aus Gründen der Zuverlässigkeit eine Anwendung und ein Betriebssystem pro Computer.) Unweigerlich entstanden dabei Überkapazitäten, denn die einzelnen physischen Server wurden nicht ausreichend genutzt. Im Gegensatz dazu können Sie bei der Servervirtualisierung mehrere Anwendungen - jede auf einer eigenen VM mit eigenem Betriebssystem - auf einem einzigen physischen Computer (typischerweise einem x86-Server) ausführen, ohne dass dies zu Lasten der Zuverlässigkeit geht. Dies ermöglicht eine maximale Ausnutzung der Rechenkapazität der physischen Hardware.
  • Einfacheres Management: Das Ersetzen von physischen Computern durch softwaredefinierte VMs erleichtert die Nutzung und das Management von in Software geschriebenen Richtlinien. Dadurch erhalten Sie die Möglichkeit, automatisierte IT-Service-Management-Workflows zu erstellen. Zum Beispiel ermöglichen automatisierte Bereitstellungs- und Konfigurationstools den Administratoren, Sammlungen von virtuellen Maschinen und Anwendungen als Services in Softwarevorlagen zu definieren. Das bedeutet, dass sie diese Services wiederholt und konsistent installieren können, und zwar ohne umständliche, zeitaufwendige und fehleranfällige manuelle Einrichtungsaktivitäten. Administratoren können Sicherheitsrichtlinien für die Virtualisierung verwenden, um bestimmte Sicherheitskonfigurationen auf der Basis der Rolle der virtuellen Maschine festzulegen. Richtlinien können sogar die Ressourceneffizienz erhöhen, indem sie ungenutzte virtuelle Maschinen stilllegen, um Platz und Rechenleistung einzusparen.
  • Minimale Ausfallzeit: Betriebssystem- und Anwendungsabstürze können Ausfallzeiten verursachen und die Benutzerproduktivität beeinträchtigen. Hier können Administratoren mehrere redundante virtuelle Maschinen nebeneinander betreiben und bei Problemen einen Failover zwischen ihnen durchführen. Das Ausführen mehrerer redundanter physischer Server ist teurer.
  • Schnellere Bereitstellung: Das Kaufen, Installieren und Konfigurieren von Hardware für jede Anwendung ist zeitaufwendig. Sofern die Hardware bereits vorhanden ist, ist da die Bereitstellung virtueller Maschinen zur Ausführung all Ihrer Anwendungen deutlich schneller. Mit Management-Software können Sie dies sogar automatisieren und in vorhandene Workflows integrieren.

Eine eingehendere Betrachtung der potenziellen Vorteile finden Sie unter "5 Vorteile der Virtualisierung".

Lösungen

Verschiedene Unternehmen bieten Virtualisierungslösungen für spezielle Aufgaben im Rechenzentrum oder für endbenutzerorientierte Szenarios zur Desktop-Virtualisierung an. Bekanntere Beispiele sind VMware, das sich auf Server-, Desktop-, Netz- und Speichervirtualisierung spezialisiert hat; Citrix, das seine Nische in der Anwendungsvirtualisierung hat, aber auch Servervirtualisierung und virtuelle Desktop-Lösungen anbietet; und Microsoft, dessen Virtualisierungslösung Hyper-V mit Windows ausgeliefert wird und sich auf virtuelle Versionen von Server- und Desktop-Computern konzentriert.

Virtuelle Maschinen (VMs)

Virtuelle Maschinen (VMs) sind virtuelle Umgebungen, die eine physische Rechenressource durch Software simulieren. Sie enthalten normalerweise mehrere Dateien, die die Konfiguration der VM, den Speicher für die virtuelle Festplatte und einige Snapshots der VM enthalten, die ihren Zustand zu einem bestimmten Zeitpunkt festhalten.

Eine vollständige Übersicht der VMs finden Sie unter "Was ist eine virtuelle Maschine?"

Hypervisoren

Ein Hypervisor ist die Softwareebene, die VMs koordiniert. Er dient als Schnittstelle zwischen der VM und der zugrunde liegenden physischen Hardware, wobei sichergestellt wird, dass jede VM Zugriff auf die physischen Ressourcen hat, die sie benötigt. Er stellt auch sicher, dass sich die VMs nicht gegenseitig stören, indem sie sich gegenseitig Speicherplatz oder Rechenzyklen streitig machen.

Es gibt zwei Arten von Hypervisoren:

  • Typ-1- oder “Bare-Metal”-Hypervisoren interagieren mit den zugrunde liegenden physischen Ressourcen und ersetzen das traditionelle Betriebssystem. Sie werden am häufigsten in Szenarios mit virtuellen Servern verwendet.
  • Typ-2-Hypervisoren werden als Anwendung unter einem vorhandenen Betriebssystem ausgeführt. Sie werden meist auf Endgeräten verwendet, um alternative Betriebssysteme auszuführen, und bedeuten einen zusätzlichen Verarbeitungsaufwand, da sie das Hostbetriebssystem nutzen müssen, um auf die zugrunde liegenden Hardwareressourcen zuzugreifen und diese zu koordinieren.

"Hypervisoren: ein umfassender Überblick" bietet umfassende Informationen zu Hypervisoren.

Typen der Virtualisierung

Bisher wurde nur die Servervirtualisierung beschrieben, aber viele andere IT-Infrastrukturelemente können ebenfalls virtualisiert werden und bieten signifikante Vorteile für IT-Manager (insbesondere) und das Unternehmen als Ganzes. In diesem Abschnitt werden die folgenden Arten von Virtualisierung angesprochen:

  • Desktopvirtualisierung
  • Netzvirtualisierung
  • Speichervirtualisierung
  • Datenvirtualisierung
  • Anwendungsvirtualisierung
  • RZ-Virtualisierung
  • CPU-Virtualisierung
  • GPU-Virtualisierung
  • Linux-Virtualisierung
  • Cloud-Virtualisierung

Desktopvirtualisierung

Mit der Desktopvirtualisierung können Sie mehrere Desktop-Betriebssysteme ausführen, jedes in einer eigenen VM auf demselben Computer.

Es gibt zwei Arten von Desktopvirtualisierung:

  • Virtual Desktop Infrastructure (VDI) führt mehrere Desktops in VMs auf einem zentralen Server aus und streamt sie an Benutzer, die sich auf Thin-Client-Geräten anmelden. Auf diese Weise kann eine Organisation ihren Benutzern mit VDI den Zugriff auf eine Vielzahl von Betriebssystemen von jedem Gerät aus ermöglichen, ohne dass auf jedem Gerät Betriebssysteme installiert werden müssen. Weitere Informationen finden Sie unter "Was ist Virtual Desktop Infrastructure (VDI)?".
  • Lokale Desktopvirtualisierung führt einen Hypervisor auf einem lokalen Computer aus, der es dem Benutzer ermöglicht, ein oder mehr zusätzliche Betriebssysteme auf diesem Computer auszuführen und bei Bedarf von einem Betriebssystem zu einem anderen zu wechseln, ohne etwas am primären Betriebssystem zu ändern.

Weitere Informationen zu virtuellen Desktops finden Sie unter "Desktop-as-a-Service (DaaS)".

Netzvirtualisierung

Netzvirtualisierung verwendet Software, um eine "Ansicht" des Netzes zu erstellen, die ein Administrator verwenden kann, um das Netz über eine zentrale Konsole zu managen. Es werden Hardwareelemente und -funktionen (z. B. Verbindungen, Switches, Router usw.) in Software abstrahiert, die auf einem Hypervisor ausgeführt wird. Der Netzadministrator kann diese Elemente ändern und steuern, ohne die zugrunde liegenden physischen Komponenten zu berühren, was das Netzmanagement wesentlich vereinfacht.

Zu den Arten der Netzvirtualisierung gehören das Software-Defined Networking (SDN), das die Hardware virtualisiert, die das Netzverkehrsrouting steuert (die sogenannte "Steuerebene"), und die Network Function Virtualization (NFV), die eine oder mehrere Hardware-Appliances virtualisiert, die eine bestimmte Netzfunktion bereitstellen (z. B. eine Firewall, eine Lastausgleichsfunktion oder eine Datenverkehrsanalysefunktion), wodurch diese Appliances einfacher konfiguriert, bereitgestellt und verwaltet werden können.

Speichervirtualisierung

Speichervirtualisierung ermöglicht den Zugriff auf alle Speichereinheiten und das Management dieser Einheiten im Netz - unabhängig davon, ob sie auf einzelnen Servern oder als eigenständige Speichereinheiten installiert sind - so, als handle es sich um eine einzelne Speichereinheit. Konkret werden bei der Speichervirtualisierung alle Speicherblöcke in einem einzigen gemeinsamen Pool zusammengefasst, aus dem sie bei Bedarf jeder VM im Netz zugewiesen werden können. Die Speichervirtualisierung erleichtert die Bereitstellung von Speicher für VMs und nutzt den gesamten verfügbaren Speicher im Netz maximal aus.

Nähere Informationen zur Speichervirtualisierung finden Sie unter "Was ist Cloud-Speicher?"

Datenvirtualisierung

Moderne Unternehmen speichern Daten aus verschiedenen Anwendungen, in verschiedenen Dateiformaten, an verschiedenen Orten - von der Cloud bis hin zu Hardware- und Softwaresystemen vor Ort. Mit der Datenvirtualisierung können alle Anwendungen auf alle diese Daten zugreifen - unabhängig von der Quelle, dem Format oder dem Standort.

Tools zur Datenvirtualisierung schaffen eine Softwareschicht zwischen den Anwendungen, die auf die Daten zugreifen, und den Systemen, die sie speichern. Die Schicht übersetzt die Datenanforderung oder -abfrage einer Anwendung bedarfsgerecht und liefert Ergebnisse, die sich über mehrere Systeme erstrecken können. Datenvirtualisierung kann dazu beitragen, Datensilos aufzubrechen, wenn andere Arten der Integration nicht machbar, wünschenswert oder bezahlbar sind.

Anwendungsvirtualisierung

Anwendungsvirtualisierung führt Anwendungssoftware aus, ohne sie direkt auf dem Betriebssystem des Benutzers zu installieren. Dies ist ein Unterschied zur vollständigen Desktopvirtualisierung (siehe oben), da nur die Anwendung in einer virtuellen Umgebung läuft - das Betriebssystem wird wie gewohnt auf dem Gerät des Endanwenders ausgeführt. Es gibt drei Arten von Anwendungsvirtualisierung:

  • Lokale Anwendungsvirtualisierung: Die gesamte Anwendung wird auf dem Endpunktgerät ausgeführt, sie läuft jedoch in einer Laufzeitumgebung, anstatt auf der nativen Hardware.
  • Anwendungsstreaming: Die Anwendung befindet sich auf einem Server, der kleine Komponenten der Software bedarfsgesteuert an das Gerät des Endbenutzers sendet, damit sie dort ausgeführt werden können.
  • Serverbasierte Anwendungsvirtualisierung: Die Anwendung wird vollständig auf einem Server ausgeführt, der nur die zugehörige Benutzerschnittstelle an das Clientgerät sendet.

RZ-Virtualisierung

Die Virtualisierung von Rechenzentren abstrahiert den größten Teil der Hardware eines Rechenzentrums in Software und ermöglicht es dem Administrator, ein einzelnes physisches Rechenzentrum in mehrere virtuelle Rechenzentren für verschiedene Kunden aufzuteilen.

Jeder Kunde kann auf seine eigene Infrastructure-as-a-Service (IaaS) zugreifen, die auf derselben zugrunde liegenden physischen Hardware ausgeführt wird wie die der anderen Kunden. Virtuelle Rechenzentren bieten einen einfachen Einstieg in das cloudbasierte Computing, da ein Unternehmen schnell eine komplette Rechenzentrumsumgebung einrichten kann, ohne Infrastrukturhardware kaufen zu müssen.

CPU-Virtualisierung

Die Virtualisierung der CPU (Central Processing Unit) ist die grundlegende Technologie, die Hypervisoren, virtuelle Maschinen und virtuelle Betriebssysteme ermöglicht. Dabei wird eine einzelne CPU in mehrere virtuelle CPUs aufgeteilt wird, die von mehreren VMs verwendet werden können.

Zunächst war die CPU-Virtualisierung vollständig softwaredefiniert, aber viele der heutigen Prozessoren enthalten erweiterte Befehlssätze, die die CPU-Virtualisierung unterstützen, wodurch die VM-Leistung verbessert wird.

GPU-Virtualisierung

Eine GPU (Graphical Processing Unit) ist ein spezieller Multi-Core-Prozessor, der die Gesamtrechenleistung verbessert, indem er anspruchsvolle grafische oder mathematische Verarbeitung übernimmt. Mit der GPU-Virtualisierung können mehrere VMs die gesamte oder einen Teil der Rechenleistung eines einzelnen Grafikprozessors für schnellere Videos, künstliche Intelligenz (KI) und andere grafik- oder rechenintensive Anwendungen nutzen.

  • Durchgriffs-GPUs machen die gesamte GPU für ein einzelnes Gastsystem verfügbar.
  • Gemeinsam genutzte vGPUs teilen physische GPU-Kerne unter mehreren virtuellen GPUs (vGPUs) für die Verwendung durch serverbasierte VMs auf.

Linux-Virtualisierung

Linux enthält einen eigenen Hypervisor, der als kernelbasierte virtuelle Maschine (KVM) bezeichnet wird. Er unterstützt Virtualisierungsprozessorerweiterungen von Intel und AMD, sodass Sie x86-basierte VMs aus einem Linux-Hostbetriebssystem erstellen können.

Als Open-Source-Betriebssystem ist Linux in hohem Maße konfigurierbar. Sie können VMs mit Linux-Versionen erstellen, die auf bestimmte Workloads zugeschnitten sind, oder sicherheitsoptimierte Versionen für besonders sensible Anwendungen.

Cloud-Virtualisierung

Wie bereits erwähnt basiert das Cloud-Computing-Modell auf der Virtualisierungstechnologie. Durch die Virtualisierung von Servern, Speichern und anderen Ressourcen des physischen Rechenzentrums können Cloud-Computing-Anbieter Kunden eine Vielzahl von Services anbieten wie z. B.:

  • Infrastructure as a Service (IaaS): Virtualisierte Server-, Speicher- und Netzressourcen, die Sie entsprechend Ihren Anforderungen konfigurieren können.
  • Platform as a Service (PaaS): Virtualisierte Entwicklungstools, Datenbanken und andere cloudbasierte Services, die Sie zum Erstellen eigener cloudbasierter Anwendungen und Lösungen verwenden können.
  • Software as a Service (SaaS): Softwareanwendungen, die Sie in der Cloud verwenden. SaaS ist der cloudbasierte Service, der am stärksten von der Hardware abstrahiert ist.

Weitere Informationen zu Cloud-Service-Modellen finden Sie im Leitfaden zu "IaaS vs. PaaS vs. SaaS".

Virtualisierung vs. Containerisierung

Bei der Servervirtualisierung wird ein kompletter Computer in Hardware reproduziert, auf dem dann ein vollständiges Betriebssystem ausgeführt wird. Unter dem Betriebssystem wird eine Anwendung ausgeführt. Das ist effizienter als überhaupt keine Virtualisierung, aber es werden immer noch Code und Services unnötigerweise für jede Anwendung dupliziert, die Sie ausführen möchten.

Container verfolgen einen alternativen Ansatz. Sie nutzen gemeinsam einen zugrunde liegenden Betriebssystemkernel und führen nur die Anwendung und die Komponenten aus, von denen sie abhängig ist (z. B. Softwarebibliotheken und Umgebungsvariablen). Dadurch werden Container kleiner und können schneller bereitgestellt werden.

Detaillierte Informationen zu Containern und Containerisierung finden Sie unter "Container: ein umfassender Überblick" und " Containerisierung: ein umfassender Überblick".

Im Blogbeitrag "Container vs. VMs: Was ist der Unterschied?" finden Sie einen detaillierten Vergleich.

Im folgenden Video erläutert Sai Vennam die Grundlagen der Containerisierung und wie sie sich von der Virtualisierung über VMs unterscheidet (8:09):

VMware

VMware erstellt Virtualisierungssoftware. VMware bot zunächst nur Servervirtualisierung an - sein ESX (jetzt ESXi) Hypervisor war eines der ersten kommerziell erfolgreichen Virtualisierungsprodukte. Heute bietet VMware auch Lösungen für die Netz-, Speicher- und Desktopvirtualisierung.

Vielfältige Informationen zu VMware finden Sie unter "VMware: ein umfassender Überblick".

Sicherheit

Virtualisierung bietet Sicherheitsvorteile. So können beispielsweise mit Malware infizierte VMs auf einen bestimmten Zeitpunkt ('Snapshot') zurückgesetzt werden, an dem die VM noch stabil und nicht infiziert war; die VMs können zudem einfacher gelöscht und neu erstellt werden. Malware auf nicht virtualisierten Betriebssystemen kann nicht immer beseitigt werden, da sie oft tief in die Kernkomponenten des Betriebssystems integriert ist und auch über Systemrollbacks hinaus bestehen bleibt.

Die Virtualisierung bringt aber auch einige Herausforderungen für die Sicherheit mit sich. Wenn ein Angreifer einen Hypervisor kompromittiert, kontrolliert er potenziell alle VMs und Gastsysteme. Da Hypervisoren auch die Kommunikation zwischen VMs ermöglichen können, ohne das physische Netz zu berühren, kann es schwierig sein, deren Datenverkehr zu sehen und somit verdächtige Aktivitäten zu erkennen.

Ein Hypervisor vom Typ 2 auf einem Hostbetriebssystem ist zudem anfällig für eine Kompromittierung des Hostbetriebssystems.

Der Markt bietet eine Reihe von Virtualisierungssicherheitsprodukten, die VMs auf Malware scannen und entsprechend patchen können, die ganze virtuelle VM-Platten verschlüsseln und den VM-Zugriff steuern und prüfen können.

Virtualisierung und IBM

IBM Cloud bietet eine umfassende Palette an cloudbasierten Virtualisierungslösungen, die von Public Cloud-Services bis hin zu Private und Hybrid Cloud-Angeboten reicht. Sie können sie zum Erstellen und Ausführen von virtueller Infrastruktur verwenden und auch die Vorteile von Services nutzen, die von cloudbasierten KI bis zur VMware-Workload-Migration mit IBM Cloud for VMware-Lösungen reichen.

Lassen Sie sich heute für ein IBM Cloud-Konto registrieren.