Cloud Computing und Virtualisierung
Virtualisierung abstrahiert physische Maschinen zu flexiblen, isolierten virtuellen Ressourcen, und Cloud Computing baut darauf auf, um elastisches, bedarfsgerechtes Computing als Dienstleistung bereitzustellen.
Definition
Virtualisierung schafft abstrakte, isolierte Instanzen von Computerressourcen – ganze Maschinen oder Prozessumgebungen – die von spezifischer Hardware entkoppelt sind; Cloud Computing nutzt Virtualisierung, um gemessenes, bedarfsgerechtes, elastisch skalierbares Computing und Speicher für viele Mandanten über ein Netzwerk bereitzustellen.
Scope
Dieses Thema behandelt die Maschinenvirtualisierung (Hypervisoren und virtuelle Maschinen) und die Virtualisierung auf Betriebssystemebene (Container); die Cloud-Dienst- und Bereitstellungsmodelle (IaaS, PaaS, SaaS; öffentlich, privat, hybrid), wie sie vom NIST standardisiert wurden; Elastizität, Mandantenfähigkeit und Ressourcenisolierung; sowie die Cluster-Manager und Orchestrierungssysteme, die virtualisierte Workloads über Rechenzentren hinweg planen.
Core questions
- Wie gewährleisten Hypervisoren und Container Isolation und Ressourcenteilung, und worin unterscheiden sie sich?
- Was bieten die Dienstmodelle IaaS, PaaS und SaaS, und wem?
- Wie werden virtualisierte Workloads in einem Rechenzentrum in großem Maßstab geplant und isoliert?
Key theories
- Maschinenvirtualisierung
- Ein Hypervisor multiplexiert physische Hardware auf mehrere virtuelle Maschinen mit starker Isolation; Paravirtualisierung, wie bei Xen, erreicht nahezu native Leistung, indem sie Gastbetriebssystemen eine modifizierte Hardwareschnittstelle präsentiert.
- Cloud-Dienst- und Bereitstellungsmodelle
- Das NIST-Framework definiert Cloud Computing durch fünf wesentliche Merkmale, drei Dienstmodelle (Infrastruktur, Plattform und Software als Dienstleistung) und vier Bereitstellungsmodelle, wodurch ein gemeinsames Vokabular für das Feld geschaffen wird.
- Clustermanagement und Orchestrierung
- Groß angelegte Cluster-Manager packen diverse virtualisierte und containerisierte Workloads auf gemeinsame Maschinen, um die Auslastung zu steigern, während Isolation und Priorität gewahrt bleiben, wie es Systeme wie Borg beispielhaft zeigen.
Clinical relevance
Virtualisierung und Orchestrierung sind die operative Grundlage jeder öffentlichen und privaten Cloud; sie bestimmen, wie effizient die Hardware von Rechenzentren genutzt wird, wie Workloads voneinander isoliert werden und wie Dienste elastisch mit der Nachfrage skalieren.
History
Die Hardware-Virtualisierung, die ursprünglich auf Mainframes entwickelt wurde, wurde Anfang der 2000er Jahre von Xen und VMware für Commodity-Server wiederbelebt; die NIST-Definition (2011) standardisierte die Cloud-Terminologie, Container-Technologie und Cluster-Manager wie Borg trieben dann die Verlagerung zu einer feingranularen, orchestrierten Bereitstellung voran, die den modernen Cloud-Betrieb definiert.
Debates
- Virtuelle Maschinen versus Container
- Virtuelle Maschinen bieten eine starke Isolation auf Hardwareebene bei höherem Overhead, während Container den Host-Kernel für einen leichtgewichtigen, schnellen Start mit schwächerer Isolation teilen; der Kompromiss zwischen Isolationsstärke und Effizienz bestimmt die fortlaufenden Entscheidungen bei der Bereitstellung.
Key figures
- Paul Barham
- John Wilkes
- Michael Armbrust
- Peter Mell
Related topics
Seminal works
- armbrust2010
- barham2003
- mell2011
Frequently asked questions
- Was ist der Unterschied zwischen einer virtuellen Maschine und einem Container?
- Eine virtuelle Maschine virtualisiert einen gesamten Computer, der sein eigenes Gastbetriebssystem auf einem Hypervisor ausführt, was eine starke Isolation bietet. Ein Container virtualisiert auf Betriebssystemebene und teilt den Host-Kernel, was ihn wesentlich leichter und schneller starten lässt, aber mit einer schwächeren Isolation zwischen den Mandanten einhergeht.