Was ist eine virtuelle Maschine?

Eine virtuelle Maschine (VM) ist ein softwarebasierter Computer, der eine isolierte Umgebung auf der Hosthardware bereitstellt. Auf virtuellen Maschinen können Programme und Betriebssysteme ausgeführt, Daten gespeichert, Verbindungen zu Netzwerken hergestellt und andere Rechenfunktionen ausgeführt werden. Ein Großteil der Technologien, von denen wir heute profitieren, wie Cloud-Computing und künstliche Intelligenz, basiert auf dem Konzept der virtuellen Maschine, dank der Betriebssysteme und Software von einer physischen Maschine separiert werden können. Im Cloud-Computing werden beispielsweise VMs verwendet, um die Ressourcen der Server von Cloud-Dienstanbietern zu virtualisieren. Dies ermöglicht eine mandantenfähige Cloud-Architektur, in der Kunden Ressourcen gemeinsam nutzen können, ohne dass sie sich gegenseitig beeinflussen.

Wie funktionieren virtuelle Maschinen?

Virtuelle Maschinen verwenden Virtualisierungstechnologien, um virtuelle Hardware zu erstellen – oder eine virtuelle Version eines Computers auf einer physischen Maschine. Die physische Maschine, auf der die VMs ausgeführt werden, wird als Host und die auf dem Host ausgeführten VMs als Gäste bezeichnet. 

Jede Gast-VM wird auf einer isolierten Partition auf dem Host ausgeführt, die vollständig von anderen Gästen getrennt ist. Sie können mehrere VMs auf einem einzigen Hostcomputer hosten – oft auf einem Server –, der auf einer Softwareschicht ausgeführt wird, die als Hypervisor bezeichnet wird.

Der Hypervisor abstrahiert die physischen Ressourcen des Hostcomputers (z. B. CPUs, GPUs, TPUs, Arbeitsspeicher, Speicher, Netzwerke) in einen Pool, der bei Bedarf bereitgestellt und dynamisch Gast-VMs zugewiesen werden kann. Das steigert die Flexibilität und Gesamteffizienz.

Zwei Haupttypen von Hypervisoren

  • Typ 1: Bare-Metal-Hypervisoren: Werden direkt auf der physischen Hardware des Hosts ausgeführt. Sie werden häufig in Rechenzentren von Unternehmen eingesetzt, da sie sehr leistungsstark und effizient sind. Google Cloud verwendet beispielsweise einen KVM-basierten Hypervisor für seine Compute Engine-VMs.
  • Typ 2: gehostete Hypervisoren: Laufen als Anwendung auf einem vorhandenen Betriebssystem und eignen sich daher für die Verwendung mit Desktop-Computern. Die häufigsten Anwendungsfälle sind hier Entwicklung und Testen.

Arten virtueller Maschinen

Im Allgemeinen gibt es zwei Arten von virtuellen Maschinen: Prozess-VMs und System-VMs.

Eine Prozess-VM, auch als Anwendungs-VM oder verwaltete Laufzeitumgebung (Managed Runtime Environment, MRE) bezeichnet, erstellt eine virtuelle Umgebung eines Betriebssystems, während eine Anwendung oder ein einzelner Prozess ausgeführt wird, und löscht sie, sobald Sie sie beenden. Prozess-VMs ermöglichen das Erstellen einer plattformunabhängigen Umgebung, in der eine Anwendung oder ein Prozess auf beliebigen Plattformen gleich ausgeführt werden kann. Ein konkretes Beispiel dafür ist die Node.js-Laufzeit in App Engine. Damit kann ein Node.js-Programm in einer verwalteten Umgebung in Google Cloud ausgeführt werden, unabhängig vom zugrunde liegenden Betriebssystem.

Eine System-VM (manchmal als Hardware-VM bezeichnet) simuliert ein vollständiges Betriebssystem, sodass mehrere Betriebssystemumgebungen auf derselben Maschine ausgeführt werden können. Dies ist in der Regel die Art von VM, die gemeint ist, wenn von „virtuellen Maschinen“ gesprochen wird. System-VMs können ihr eigenes Betriebssystem und eigene Anwendungen ausführen. Ein Hypervisor überwacht und verteilt die Ressourcen der physischen Hostmaschine auf die System-VMs.

Einige Cloud-Anbieter, darunter Google, bieten die zusätzliche Möglichkeit, die genaue Menge virtueller Prozessoren und virtuellen Arbeitsspeichers pro Instanz anzupassen. So lässt sich für jede Arbeitslast die richtige Größe präziser bestimmen, was Unterauslastungen und die damit verbundenen Ressourcen- und Softwarelizenzkosten für diese Compute-Instanz vermeidet. Einige Arbeitslasten erfordern beispielsweise ein hohes Verhältnis von Rechenkernen zu Arbeitsspeicher, während andere das Gegenteil erfordern. Durch die Anpassung der Adressen der virtuellen Maschinen werden diese Anwendungsfälle abgedeckt, ohne dass Ressourcen überdimensioniert und zu viel für nicht genutzte Ressourcen bezahlt wird.

VMs und Container im Vergleich

VMs und Container werden zwar beide verwendet, um Anwendungen zu isolieren, aber auf grundlegend unterschiedliche Weise. Eine virtuelle Maschine virtualisiert den gesamten physischen Hardware-Stack, einschließlich des Betriebssystems. Dadurch ist jede VM eine in sich geschlossene, isolierte Umgebung. Das bedeutet aber auch, dass VMs tendenziell größer sind und mehr Ressourcen verbrauchen.

Container sind dagegen schlanker, da sie nur die Betriebssystemebene virtualisieren. Anstatt ein vollständiges Betriebssystem mit jeder Anwendung zu bündeln, teilt sich ein Container den Kernel des Host-Betriebssystems. Dadurch können Container weniger Ressourcen als VMs nutzen und schneller gestartet werden, während sie isoliert bleiben. Deshalb sind Container für die Entwicklung neuer Anwendungen so attraktiv. Da viele der in den letzten 10 Jahren entwickelten Anwendungen für Container geschrieben wurden, sind viele Arbeitslasten, darunter E‑Commerce, Backoffice und KI, „container-nativ“.

Wie werden virtuelle Maschinen verwendet?

VMs sind die Grundbausteine virtualisierter Rechenressourcen und spielen eine wichtige Rolle beim Erstellen von Anwendungen, Tools und Umgebungen – sowohl in der Cloud als auch lokal.

Im Folgenden finden Sie einige der häufigsten Einsatzmöglichkeiten von virtuellen Maschinen in Unternehmen:

Mehrere physische Maschinen können als VM neu konfiguriert und zusammen mit anderen VMs auf einem Host ausgeführt werden. So können Unternehmen Ressourcen bündeln. VMs haben sich im Laufe der Zeit als fähig erwiesen, selbst die leistungsempfindlichsten Anwendungen auszuführen.

Eine zentrale IT-Organisation kann VMs pro Geschäftseinheit und Funktionsbereich bereitstellen und verwalten, was den Zugriff auf Ressourcen beschleunigt und die Transparenz im Unternehmen verbessert.

VMs können als isolierte Umgebungen zum Testen und Entwickeln verwendet werden. Sie bieten eine komplette Funktionalität, haben aber keine Auswirkungen auf die umgebende Infrastruktur.

VMs können einfach deaktiviert, aktiviert, migriert und angepasst werden und bieten so maximale Flexibilität für die Entwicklung und Bereitstellung.

Flexibilität und Portabilität von VMs ermöglichen beschleunigte Migrationsinitiativen.

Die Replikation von Systemen in Cloud-Umgebungen mithilfe von VMs bietet eine zusätzliche Sicherheitsebene. Cloud-Umgebungen können außerdem kontinuierlich aktualisiert werden.

VMs bieten die Grundlage zum Erstellen einer Cloud-Umgebung zusammen mit einer lokalen Umgebung. So erhalten Sie mehr Flexibilität, ohne die vorhandenen Systeme aufgeben zu müssen.

Vorteile virtueller Maschinen

Virtuelle Maschinen bieten viele Vorteile, insbesondere wenn Sie sich für eine Cloud-VM entscheiden, darunter: 

Skalierbarkeit

Cloudbasierte VMs erleichtern die Skalierung Ihrer Anwendungen und erhöhen die Verfügbarkeit und Leistung. Sie können Ihre Kapazität je nach Bedarf erhöhen, ohne in eigene physische Server investieren zu müssen. 

Portabilität 

Eine virtuelle Maschine ist ein einzelnes Softwarepaket mit Hardwareressourcen, einem Betriebssystem und allen zugehörigen Anwendungen. Sie können VMs ganz einfach von einem Server auf einen anderen oder sogar von lokaler Hardware in Cloud-Umgebungen verschieben. 

Geringerer Platzbedarf und geringere Kosten

Mit VMs können Sie mehrere virtuelle Umgebungen auf einem einzigen Computer ausführen. So können Sie Aufwendungen für physische Infrastruktur, Stromrechnung sowie Wartungs- und Verwaltungskosten reduzieren. 

Schnellere Bereitstellung 

VMs lassen sich einfach duplizieren, sodass Unternehmen neue, identische Umgebungen hochfahren können, ohne sie von Grund auf neu einrichten zu müssen.

Zuverlässigkeit

Virtuelle Maschinen und ihre Komponenten existieren virtuell und sind von anderen Gast-VMs isoliert. Wenn die VM abstürzt, bleiben die anderen Gast-VMs betriebsbereit und der physische Hostcomputer ist nicht betroffen. 

Mehr Sicherheit

Mit virtuellen Maschinen können Sie mehrere Betriebssysteme ausführen, ohne das Hostbetriebssystem zu beeinträchtigen. Mit VMs können Sie sichere, virtuelle Umgebungen erstellen, um Apps zu testen oder sogar Sicherheitslücken zu untersuchen, ohne dass der Hostcomputer einem hohen Risiko ausgesetzt ist. 

Virtuellen Maschinen: Mögliche Herausforderungen

Beim Ausführen von VMs sind jedoch einige Aspekte zu beachten. Eine der größten Herausforderungen virtueller Maschinen besteht darin, dass die Ausführung mehrerer Betriebssysteme und einer Hypervisor-Ebene Leistungskosten verursachen kann, wenn der Hostcomputer nicht robust genug ist. Darüber hinaus ist virtuelle Hardware möglicherweise nicht so effizient wie die physische Hardware einer physischen Maschine. Schließlich bieten die meisten Cloud-Anbieter virtuelle Maschinen an, deren CPU- und Arbeitsspeicherleistung fest vorgegeben ist, was zu einer ineffizienten Ressourcennutzung führt.

Viele dieser Bedenken können jedoch überwunden werden, wenn Sie VMs verwenden, die von einem Cloud-Dienstanbieter angeboten werden. Cloud-VMs bieten viele Vorteile gegenüber herkömmlichen VMs, da sie Organisationen Zugriff auf die Rechenleistung der Computer eines ganzen Rechenzentrums anstelle einer einzelnen Maschine bieten. Außerdem bietet Google Compute Engine virtuelle Maschinen in benutzerdefinierten Größen an. Anstatt aus vordefinierten Maschinentypen mit möglicherweise überschüssiger Kapazität auszuwählen, können Sie das CPU-Arbeitsspeicher-Verhältnis speziell auf Ihre Arbeitslasten abstimmen und zahlen so nur für die Ressourcen, die Sie tatsächlich nutzen. Dieser gezielte Ansatz minimiert Verschwendung und kann Ihre Cloud-Ausgaben erheblich reduzieren, insbesondere bei der Migration von lokalen Umgebungen oder von anderen Cloud-Anbietern zu Google Cloud. Compute Engine bietet auch virtuelle Maschinentypen, die für spezifische Kundenanforderungen wie Unternehmensarbeitslasten, Konfigurationen mit großem Arbeitsspeicher oder anspruchsvolle Arbeitslasten wie Machine Learning oder Hochleistungs-Computing optimiert sind.

Google Cloud bietet sogar abgeschirmte virtuelle Maschinen für zusätzliche Sicherheit und prüfbare Integrität Ihrer VM-Instanzen. Von Google Cloud abgeschirmte virtuelle Maschinen nutzen erweiterte Plattformsicherheitsfunktionen und -kontrollen, die Unternehmensarbeitslasten vor Bedrohungen wie Remote-Angriffen, Rechteausweitung und böswilligen Insidern schützen. 

Meistern Sie Ihre geschäftlichen Herausforderungen mit Google Cloud

Neukunden erhalten ein Guthaben im Wert von 300 $ für Google Cloud.
Sprechen Sie mit einem Google Cloud-Vertriebsexperten, um Ihre besonderen Herausforderungen im Detail zu besprechen.

Gleich loslegen

Profitieren Sie von einem Guthaben über 300 $, um Google Cloud und mehr als 20 „Immer kostenlos“ Produkte kennenzulernen.

Google Cloud