Dies ist ein maschinell übersetzter Text, der Fehler enthalten kann!
Virtualisierung ermöglicht es mehreren Maschinen oder abgegrenzten Umgebungen, physische Hardware zu teilen. Cloud-Dienste bieten Ressourcen als Dienste über ein Netzwerk an, in der Regel mit Selbstbedienung und Skalierungsmöglichkeiten. Sie können selbst gehörende Hardware virtualisieren, wobei eine Virtualisumgebung nicht automatisch eine Cloud ist.
Hier sollen Sie erklären, was eine VM und ein Container mit dem Host gemeinsam haben, und IaaS, PaaS und SaaS anhand eigener Beispiele unterscheiden. Es ist nicht erforderlich, einen Cloud-Service zu kaufen. Verwenden Sie eine VM, auf die Sie bereits Zugriff haben, oder die im Text angegebenen Beispiele.
Stellung im Lehrstoff: Dieses Niveau erklärt Virtualisierung in einer Betriebsarchitektur. [[Betriebssystem Ebene 3 - Betriebssystemkern|Der Betriebssystemkern]] erklärt, wofür ein Gastbetriebssystem seine eigene Version hat. [[Betriebsarchitektur Ebene 0 - Betriebssystems, VMs und Container|Die Übersichtskarte]] zeigt Teil-Ganzes, technische Beziehungen und Wege zu praktischen Aufgaben.
Was ist Virtualisierung?
Virtualisierung bedeutet, mehrere „virtuelle“ Maschinen auf derselben physischen Maschine auszuführen. Anstatt einen eigenen physischen Server für den Webserver, einen für die Datenbank und einen für den Dateiserver zu haben, können Sie alle drei als virtuelle Maschinen auf einer einzigen Maschine ausführen.
Die Software, die dies ermöglicht, wird als Hypervisor bezeichnet:
| Typ | Erklärung | Beispiel |
|---|---|---|
| Typ 1 (Bare-Metal) | Die Virtualisierungsplattform wird direkt auf dem Server installiert | Proxmox VE (KVM), VMware ESXi |
| Typ 2 (Hosted) | Läuft über ein normales Betriebssystem | VirtualBox, VMware Workstation |
Type 1 vs. Type 2
- Type 1 ist das, was wir in der Produktion und im Serverraum verwenden. Proxmox läuft direkt auf dem Server.
- Type 2 ist das, was Sie auf Ihrem eigenen PC zum Testen verwenden. VirtualBox läuft auf Windows oder macOS.
Was ist eine virtuelle Maschine (VM)?
Eine VM ist ein virtueller Computer mit virtueller CPU, Speicher und Festplatte. Sie führt ein Gastbetriebssystem mit eigener Kernel aus, während der Hypervisor Zugriff auf die physische Hardware bereitstellt. Proxmox VE verwendet Linux und KVM zum Ausführen von VMs; „direkt auf dem Server“ bedeutet nicht, dass der Plattform kein Betriebssystem-Kernel fehlt.
Vorteile von VMs:
- Isolation – Ein Fehler in einem Gastbetriebssystem muss normalerweise andere VMs nicht stoppen. Sie teilen sich dennoch den Host, das Speichersystem und andere Ressourcen und können durch gemeinsame Fehler oder Ressourcengrenzen beeinträchtigt werden.
- Flexibilität – Auf derselben Maschine können verschiedene Betriebssysteme ausgeführt werden (z. B. Ubuntu und Windows Server).
- Schnappschuss/Sicherung – Es kann ein Snapshot einer VM erstellt und bei Problemen zurückgerollt werden.
- Nutzungseffizienz – Eine physische Maschine mit viel RAM und CPU kann viele VMs betreiben.
Was sind Container?
Ein Linux-Container führt die Anwendung in einer isolierten Umgebung aus und teilt sich den Kernel des zugrunde liegenden Linux-Betriebssystems. Eine VM verfügt über ein eigenes Gastbetriebssystem mit eigenem Kernel.
[[Containerisierung Level 1 - Container und virtuelle Maschinen|Container und virtuelle Maschinen]] enthält die illustrierte Vergleichsdarstellung und zeigt auch, wie mehrere Container innerhalb einer einzigen VM ausgeführt werden können. Verwenden Sie diese, um zu erklären, was den Kernel teilt und was passiert, wenn die VM heruntergefahren wird. [[Docker Level 0 - Was ist Docker|Docker Level 0]] stellt anschließend ein konkretes Tool für Anwendungscontainer vor.
In der Praxis verwenden wir oft beides: VMs als Host für Docker-Container.
Cloud-Diensteleistungen
In einer öffentlichen Cloud besitzt und betreibt ein Anbieter die Infrastruktur, während Sie Ressourcen über das Netzwerk bestellen. Eine private Cloud ist für ein einzelnes Unternehmen bestimmt und kann entweder vom Unternehmen selbst oder von einem Anbieter betrieben werden. Selbstbedienung, geteilte Ressourcenspeicher, Skalierung und Nutzungsmessung sind zentrale Merkmale der Cloud.
Dienstmodelle
Es gibt drei Hauptmodelle für Cloud-Dienste:
| Modell | Vollständiger Name | Was Sie erhalten | Was Sie selbst steuern | Beispiel |
|---|---|---|---|---|
| IaaS | Infrastructure as a Service | Virtuelle Maschinen, Netzwerke und Speicher | Betriebssysteme, Anwendungen, Einrichtung | Azure VM, AWS EC2 |
| PaaS | Platform as a Service | Eine fertige Plattform zum Ausführen Ihres Codes | Nur die Anwendung | Azure App Service, Heroku |
| SaaS | Software as a Service | Fertige Anwendungen, die über einen Browser oder eine App genutzt werden | Benutzer, Zugriff, Daten und verfügbare Einstellungen | Microsoft 365, Google Docs |
Eine einfache Möglichkeit, sich das zu merken
- IaaS = Sie mieten eine leere Maschine. Sie installieren und konfigurieren alles selbst.
- PaaS = Sie mieten eine fertige Umgebung. Sie müssen nur Ihren Code einfügen.
- SaaS = Sie mieten eine fertige App. Sie müssen sich nur anmelden und sie benutzen.
Liefermodelle
Cloud-Dienste können auf verschiedene Weisen bereitgestellt werden:
| Modell | Beschreibung | Beispiel |
|---|---|---|
| Öffentliche Cloud | Geteilte Infrastruktur für alle verfügbar | Azure, AWS, Google Cloud |
| Private Cloud | Cloud-Umgebung für ein Unternehmen | Eine interne Umgebung mit Self-Service, Ressourcenteilung und Skalierung |
| Hybride Cloud | Kombination aus öffentlicher und privater Cloud | Einige Dienste lokal, einige in Azure |
VPS: Eine gängige Cloud-Lösung
Ein VPS (Virtual Private Server) ist eine der häufigsten IaaS-Lösungen. Sie mieten bei einem Cloud-Anbieter einen virtuellen Computer und haben die volle Kontrolle darüber, genau als hätten Sie einen eigenen Server.
Typische Anwendungsgebiete:
- Betrieb eines Webservers
- Einrichtung einer VPN-Dienstleistung
- Hosting einer Anwendung (z. B. Flask + Datenbank)
- Dinge testen, ohne das eigene Hardware-Risiko einzugehen
Beispiele für Anbieter, die virtuelle Server anbieten:
- Akamai (Linode)
- DigitalOcean
- Hetzner
- Microsoft Azure
Kosten in der Cloud
Prüfen Sie die Preise und richten Sie Kostenwarnungen ein, bevor Sie Ressourcen bestellen. Eine gestoppte VM kann weiterhin Kosten für z. B. Speicher und reservierte Adressen verursachen. Überprüfen Sie, wofür der Anbieter berechnet wird, und löschen Sie Ressourcen, die Sie nicht weiter verwenden möchten.
Lokal vs. Cloud
Viele Unternehmen nutzen eine Kombination aus lokalen Servern und Cloud-Diensten. Hier sind einige Faktoren, die zu berücksichtigen sind:
| Faktor | Lokal (On-Premises) | Cloud |
|---|---|---|
| Kontrolle | Volle Kontrolle über Hardware und Daten | Abhängig vom Anbieter |
| Kosten | Hohe Anfangsinvestition | Laufende monatliche Kosten |
| Skalierbarkeit | Begrenzt durch physische Hardware | Kann nach Bedarf hoch- und herunterskaliert werden |
| Wartung | Sie müssen alles selbst reparieren | Der Anbieter verwaltet die Hardware |
| Datenschutz | Sie wissen, wo sich die Daten befinden | Die Daten können in anderen Ländern gespeichert werden |
Aufgabe 1 – Untersuche eine VM
Verwende eine VM, auf die Sie bereits Zugriff haben. Wenn Sie Proxmox verwenden, zeigt Ihnen [[Serverinstallation Level 3 – Navigation in Proxmox VE|Navigation in Proxmox VE]], wo Sie CPU, RAM und Festplatte einsehen können. Möchten Sie eine VM erstellen, folgen Sie der [[Serverinstallation Level 2 – VM in Proxmox|Installationsanleitung]]. Für diese Aufgabe müssen Sie keinen zusätzlichen Hypervisor auf Ihrem eigenen Rechner installieren.
- Wie viel CPU, RAM und Speicher wird der VM zugewiesen?
- Was wird mit anderen VMs auf dem physischen Host geteilt?
- Was kann passieren, wenn mehrere VMs zusammen mehr Arbeitsspeicher benötigen als der Host verfügbar hat? Erklären Sie dies ohne die Ressourcen zu ändern.
Falls keine VM für Sie zugänglich ist, nutzen Sie die Ressourcenvorschläge aus der Installationsanleitung als gedachtes Beispiel. Kennzeichnen Sie dann Ihre Antwort als Erklärung des Beispiels und nicht als durchgeführte Installation.
Aufgabe 2 – Starte einen Container mit Docker
Verwenden Sie die Nginx-Container aus Ausführen und Untersuchen eines Containers, falls Sie die Übung bereits durchgeführt haben. Falls Sie ihn entfernt haben, erstellen Sie ihn neu wie in der Containerübung gezeigt. Fehlt Docker, beginnen Sie mit der Installation. Erklären Sie, welchen Kernel der Container verwendet, und vergleichen Sie das Startverhalten mit einer VM. Wenn Ihnen kein Docker zur Verfügung steht, verwenden Sie die Diagramme zu Containerisierung, um den Unterschied zu erklären, ohne so tun zu müssen, als hätten Sie eine praktische Testdurchführung absolviert.
Aufgabe 3 – Welche Cloud-Dienste nutzen Sie bereits?
Überlegen Sie sich, welche Dienste Sie im Alltag verwenden:
- Microsoft 365 (Word, Teams, OneDrive) ist SaaS
- GitHub Pages zum Hosten einer Website ist PaaS
- Eine VM in Proxmox zeigt Virtualisierung an. Sie ist nicht automatisch IaaS; es hängt davon ab, wie die Ressourcen als Dienst bereitgestellt und verwaltet werden.
Gelingt es Ihnen, andere von Ihnen genutzte Dienste zu klassifizieren?
Aufgabe 4 – Wo befinden sich Ihre Daten?
Gehen Sie zum Microsoft Privacy Dashboard und sehen Sie, was Microsoft über Sie speichert. Überprüfen Sie auch die Bedingungen eines Cloud-Dienstes, den Sie nutzen:
- Wo auf der Welt werden die Daten gespeichert?
- Was passiert mit den Daten, wenn Sie Ihr Konto löschen?
- Besitzen Sie Ihre Daten, oder der Anbieter?
Diese Fragen sind besonders wichtig im Hinblick auf die DSGVO und den Datenschutz.
Erklärung überprüfen
Erklären Sie mündlich oder schriftlich, warum eine VM in Proxmox nicht automatisch ein Cloud-Dienst ist. Wählen Sie anschließend je ein Beispiel für IaaS, PaaS und SaaS aus und beschreiben Sie, was Kunde und Anbieter in jedem Fall verwalten. Wenn Sie nur Namen aufzählen, nutzen Sie die Tabelle zu den Dienstmodellen, um die Aufgabenteilung zu erklären.
Zusammenfassung
- Virtualisierung ermöglicht es Ihnen, mehrere Dienste auf derselben Hardware auszuführen, entweder als VMs oder Container
- Cloud-Dienste stellen Ressourcen über das Netzwerk bereit und bieten unter anderem Selbstbedienung und Skalierung an
- IaaS, PaaS und SaaS beschreiben, wie viel Verantwortung Sie selbst tragen
- In der Praxis nutzen viele eine Hybrid-Lösung mit sowohl lokalen als auch cloud-basierten Diensten
- Die Wahl zwischen lokal und Cloud hängt von Kontrolle, Kosten, Skalierbarkeit und Datenschutz ab
Quellen: NIST: Definition von Cloud-Services und Proxmox VE: KVM und virtuelle Maschinen.