Virtualisierung + Cloud Computing Flashcards
Was ist Virtualisierung?
Virtualisierung bezeichnet Methoden, die es erlauben, Ressourcen eines Rechensystems zusammenzufassen oder aufzuteilen.
Wo wird virtualisiert? +Beispiele
System /Hardware HW-Partitionierung IBM LPAR, Sun Logical Domains LDOMs,
Hypervisor, Paravirtualisierung, Emulation
Betriebssystem Container, Zoning, Jails
Anwendung Laufzeitumgebung, Sandbox, portable Anwendungen
wird auch auch Applikations-Virtualisierung genannt
Desktop Terminaldienste, Thin Clients
Rechenzentrum Cloud-Computing, Software Defined Datacenter (SDDC)
Gründe für die Virtualisierung von Rechensystemen
bessere Ausnutzung der Hardware
Ressourcen einsparen, Kosten senken
vereinfachte Bereitstellung
maximale Flexibilität
einfaches Kopieren von Virtuellen Maschinen* (VMs), erstellen von Snapshots
höhere Sicherheit durch stärkere Trennung der Systeme untereinander
Optimierung von Software-Tests und Software-Entwicklung
Unterstützung alter (legacy) Systeme und Anwendungen
legacy, engl. Erbe, Altlast
Was ist eine VM?
Virtuelle Maschine (VM): Nachgebildeter, simulierter Rechner, der auf einem realen Rechner (=Host) läuft und über alle Ressourcen (CPU, RAM, HDD, …) eines vollwertigen Rechners verfügt.
Was ist Nested Virtualisation?
Nested Virtualisation: Verschachtelte Virtualisierung: in einer VM läuft eine weitere VM
Nachteile und Grenzen Virtueller Maschinen
VMs bieten eine geringere Performance als reale Maschinen
nicht jede Hardware kann virtualisiert werden
z.B. Grafikprozessoren, Hardwaredongles
Virtualisierung kann ein Single Point of Failure sein
VM-Host → viele VMs
Virtualisierung ist kompliziert
Welche 2 Bereiche sind relevant beim Aufbau von Betriebssystemen?
Prozessbereich
Anwendungsbereich
user mode, user space, userland
erbringt die eigentlichen
Funktionen des BS
Kernbereich
kernel mode, kernel space
stellt die erforderliche
Infrastruktur für Prozesse zur
Verfügung
Welche Konzepte der Systemvirtualisierung gibt es?
Emulation, Applikations-Virtualisierung, Betriebssystem-Virtualisierung, Level 2 Virtualisierung, Level 1 Virtualisierung
Erkläre das Virtualisierungs Konzept: Emulation
- Nachbildung der kompletten Hardware eines Rechnersystems
- geringe Performance
- Beispiele:
DOSBox - DOS-Programme auf 64-Bit-Systemen (x64)
Qemu - viele Architekturen auf x86 (ARM, PowerPC, …)
Erkläre das Virtualisierungs Konzept: Applikations- bzw. Anwendungs-Virtualisierung
- Anwendungen laufen lokal in einer Laufzeit-Umgebung
(runtime environment) - eine Laufzeit-Umgebung wird machmal auch als VM bezeichnet
- die Laufzeit-Umgebung verhindert Konflikte mit anderen
Anwendungen - geringere Ausführungsgeschwindigkeit gegenüber
nativer* Programmausführung - z.B. Java VM, ThinApp, Sandboxie, App-V, Cygwin
in Android laufen alle Apps getrennt in einer VM (ART)
Erkläre das Virtualisierungs Konzept: Betriebssystem-Virtualisierung
- ein einzelner Betriebssystem-Kernel bildet mehrere isolierte
Prozessbereiche (userlands) ab
(=Container/Zone/Jail) - bestmögliche, fast native Performance
- nicht möglich: unterschiedliche Kernel bzw. Betriebssysteme
- z.B. Docker, Virtuozzo, Linux-VServer, OpenVZ,
FreeBSD Jail, Solaris Zones
Erkläre das Virtualisierungs Konzept: Level 2 Vritualisierung
- Hypervisor (auch: Virtual Machine Monitor - VMM)
stellt virtuelle Maschinen bereit und verteilt Hardwareressourcen
geschickt an die Gast-Betriebssysteme - läuft auf dem Host-Betriebssystem
- kaum Änderungen an Host- und Gast-Betriebssystemen
erforderlich - fast native Verarbeitungsgeschwindigkeit
der Gast-Betriebssysteme - jedes Gast-Betriebssystem hat seinen eigenen Kernel
- z.B. VMware Workstation/Fusion
VirtualBox
Erkläre das Virtualisierungs Konzept: Level 1 Virtualisierung
- Hypervisor läuft direkt auf der Hardware
- stellt Software-Schnittstelle (API) bereit,
z.B. VMBus, Virtual Machine Interface - VMI - der Betriebssystem-Kern der Gäste muss an die
Software-Schnittstelle angepasst werden (=Paravirtualisierung)
z.B. über den Virtualization Service Client - VSC - dadurch höhere Leistung als bei Level 2 Virtualisierung
- z.B. Xen
VMware ESX
Der Unterschied zwischen type 1 und type 2 Hypervisor?
type 1 Hypervisor läuft direkt auf der Hardware, ohne ein zugrundeliegendes Betriebssystem. Type 2 Hypervisor hingegen läuft auf einem hostbetriebssystem als Anwendung.
Was ist “Bare Metal”?
“Bare Metal” bedeutet, dass Software direkt auf physischer Hardware läuft, ohne ein Betriebssystem dazwischen. Es ermöglicht eine effiziente Nutzung der Hardware-Ressourcen, besonders in virtualisierten Umgebungen.
Was ist Cloud Computing?
ermöglicht die bedarfsgerechte und flexible Nutzung von IT-Leistungen,
die in Echtzeit bereitgestellt und nach Nutzung abgerechnet werden.
Ansatz: virtualisierte IT-Infrastrukturen, dynamisch an den Bedarf
angepasst über ein Netzwerk zur Verfügung stellen, z.B.:
- Software
- Rechenkapazität
- Datenspeicher
- Netzwerkkapazitäten
Warum heißt es „Cloud“ - Computing?
Aus Nutzersicht erscheint die zur Verfügung gestellte IT-Infrastruktur
fern und undurchsichtig, wie von einer „Wolke“ verhüllt.
Was ist Saas?
Software as a Service
Zugang und Nutzung von Anwendungsprogrammen über das Internet
SaaS wird auch als Software on demand bezeichnet.
Was ist PaaS?
Platform as a Service
Zugang und Nutzung von Programmierumgebungen mit anpassbaren Rechenund Datenkapazitäten
Nutzer entwickeln ihre eigene Software und lassen diese innerhalb einer Softwareumgebung,
die vom Service Provider bereitgestellt und unterhalten wird, ausführen
Was ist IaaS
Infrastructure as a Service
Zugang und Nutzung zu virtualisierten Computerhardware-Ressourcen, wie
Rechnern, Netzwerken und Speicher
Nutzer gestalten ihr eigenes virtuelles Rechenzentrum und sie sind daher für Auswahl,
Installation, Betrieb und das Funktionieren ihrer Systeme und Programme selbst verantwortlich.
welche 4 Bereitstellungsmodelle gibt es bei Cloud Computing?
- Public Cloud
- Private Cloud
- Hybrid Cloud
- Community Cloud
Welche Eigenschaften sind relevant für die Bereitstellungsmodelle beim Cloud Computing?
- Selbstzuweisung von Leistungen bei Bedarf durch die Nutzer
- Skalierbarkeit
- Zuverlässigkeit
- Optimierung und Konsolidierung
- Qualitätssicherung und -kontrolle
Was ist eine Public Cloud?
Public Cloud
bietet Zugang für die breite Öffentlichkeit über das Internet.
Public-Cloud-Diensteanbieter erlauben ihren Kunden, IT-Infrastruktur zu mieten,
bezahlt werden nur tatsächliche Nutzung bzw. Verbrauch (pay-as-you-go),
ohne Kapital in Rechenzentrums-Infrastruktur investieren zu müssen.