Hopp til innhold

Cloud-Dienste und Virtualisierung

Skip to content

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

Easy 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.

Easy 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.

Easy 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?

Easy 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.