Zum Inhalt springen

Server Cloud und zuverlässiger IT-Betrieb – Virtuelle Maschinen und Container vergleichen

Aus MOOCsWiki Staging
aiMOOC-Siegel aiMOOC

Server Cloud und zuverlässiger IT-Betrieb – Virtuelle Maschinen und Container vergleichen

QR-Code



Einleitung

Server Cloud und zuverlässiger IT-Betrieb – Virtuelle Maschinen und Container vergleichen

Zielgruppe: IT-Ausbildung, insbesondere Fachinformatik Systemintegration und Digitale Vernetzung.

Lernzeit: ca. 90–120 Minuten einschließlich Praxisaufgaben.

Voraussetzungen: Grundkenntnisse zu Betriebssystem, Arbeitsspeicher, Prozessor und Server.

Leitfrage: Wann ist eine Virtuelle Maschine sinnvoller und wann ein Container?

Datei:OS vs Hardware virtualization.png

Deine Lernziele: Du erklärst den Betriebssystembezug, vergleichst CPU- und RAM-Bedarf, beurteilst Isolation und Betriebssicherheit und begründest eine technische Entscheidung.

Der Kurs verbindet Schaubilder, Fachvideos, einen Ausbildungsfall, zwei lokale Python-Labore, ein optionales isoliertes Container-Labor und interaktive Aufgaben.

Sicherheitsregel: Arbeite ausschließlich mit fiktiven Daten auf Deinem eigenen Lernrechner oder in einer ausdrücklich freigegebenen Schulungsumgebung. Keine fremden Netzwerke, Produktivsysteme, Kundendaten, Zugangsdaten oder ungefragten Datenübertragungen!


Ausbildungsfall: Die Lernwerkstatt Nord

Du arbeitest als angehende IT-Fachkraft für die fiktive Lernwerkstatt Nord.

Drei Anwendungen sollen auf einem Schulungsserver betrieben werden: ein Webportal, eine API und eine Testdatenbank.

Ressource Verfügbarer Wert
Arbeitsspeicher 8 GiB
CPU 4 logische CPU-Einheiten
Betriebssystem Linux
Sicherheitsreserve 1 GiB RAM
Verbindung Abgeschottete Lernumgebung

Dein Auftrag: Entscheide, welche Anwendungen auf virtuellen Maschinen oder in Containern betrieben werden sollten. Berücksichtige Betriebssystem, Ressourcen, Sicherheit und Wartung.

Alle nachfolgenden Verbrauchswerte sind fiktive Planungsannahmen. Sie sind keine gemessenen Eigenschaften realer Produkte.


Lerneinheit 1: Cloud und Virtualisierung verstehen

Lernzeit: 5 Minuten

Fehler beim Erstellen des Vorschaubildes:

Cloud Computing bedeutet, IT-Ressourcen über ein Netz bedarfsgerecht als Dienste bereitzustellen. Dazu gehören Rechenleistung, Speicher und Plattformdienste.

Bei Infrastructure as a Service werden beispielsweise virtuelle Server bereitgestellt. Cloud Computing und Virtualisierung sind nicht dasselbe: Virtualisierung ist eine wichtige technische Grundlage vieler Cloud-Angebote.

Merksatz: Ein physischer Server kann mehrere voneinander getrennte Betriebsumgebungen bereitstellen.

Video: Virtualization Explained – IBM Technology

Beobachtungsauftrag: Identifiziere im Video Hardware, Hypervisor und virtuelle Maschine.

Mini-Aufgabe: Zeichne einen Server, auf dem zwei voneinander getrennte Betriebssysteme laufen.


Lerneinheit 2: Virtuelle Maschinen

Lernzeit: 7 Minuten

Eine Virtuelle Maschine ist ein softwarebasiertes Computersystem. Ein Hypervisor stellt virtuelle Hardware bereit und verwaltet mehrere Maschinen auf einem Host.

Jede klassische System-VM enthält ein eigenes Gastbetriebssystem mit eigenem Kernel.

Fehler beim Erstellen des Vorschaubildes:

Zwei Grundformen:

  1. Typ-1-Hypervisor: Arbeitet unmittelbar auf der Hardware.
  2. Typ-2-Hypervisor: Arbeitet auf einem bereits laufenden Hostbetriebssystem.
Datei:Kernel-based Virtual Machine.svg

Das Beispiel KVM zeigt die Integration von Virtualisierung in Linux.

Video: What is a Hypervisor? – IBM Technology

Stärke einer VM Betriebliche Bedeutung
Eigener Betriebssystemkernel Unterschiedliche Gastsysteme möglich
Getrennte virtuelle Hardwareumgebung In der Regel stärkere Isolationsgrenze
Vollständiges Gastbetriebssystem Zusätzlicher RAM-, Speicher- und Wartungsbedarf
Eigenständiger Systembetrieb Separate Aktualisierung und Konfiguration

Merksatz: Eine VM virtualisiert einen Computer einschließlich des Betriebssystems.

Mini-Aufgabe: Erkläre, warum drei VMs mehr Betriebssystempflege erfordern können als drei Container auf einem gemeinsamen Linux-Host.


Lerneinheit 3: Container

Lernzeit: 7 Minuten

Ein Container ist eine isolierte Ausführungsumgebung für Anwendungen und ihre Abhängigkeiten.

Linux-Container teilen sich normalerweise den Kernel des Linux-Hosts. Sie benötigen daher nicht für jede Anwendung ein vollständiges Gastbetriebssystem.

Fehler beim Erstellen des Vorschaubildes:
Fehler beim Erstellen des Vorschaubildes:

Zwei wichtige Linux-Mechanismen:

  1. Namespaces: Begrenzen, welche Prozesse und Ressourcen eine Anwendung sehen kann.
  2. cgroups: Steuern und begrenzen beispielsweise die Nutzung von CPU und RAM.

Werkzeuge wie Docker oder Podman verwalten Container. Kubernetes kann Container über mehrere Systeme hinweg orchestrieren, ist aber selbst kein Hypervisor.

Betriebssystembezug: Ein Linux-Container benötigt einen Linux-Kernel. Auf anderen Hostsystemen wird dafür häufig eine zusätzliche Linux-VM genutzt. Windows-Container folgen eigenen Kompatibilitätsregeln.

Merksatz: Container isolieren Anwendungen auf Betriebssystemebene und teilen sich normalerweise einen Kernel.

Mini-Aufgabe: Warum lässt sich nicht einfach ein vollständiges Windows-Gastbetriebssystem als gewöhnlicher Linux-Container starten?


Lerneinheit 4: VM und Container direkt vergleichen

Lernzeit: 6 Minuten

Datei:Containerization2.svg

Video: Containers vs VMs – IBM Technology

Merkmal Virtuelle Maschine Container
Virtualisierungsebene Virtuelle Hardware Betriebssystemebene
Kernel Eigener Gastkernel Üblicherweise gemeinsamer Hostkernel
Betriebssystem Eigenständiges Gastsystem Kompatibel zum verwendeten Hostkernel
RAM-Grundbedarf Meist höher Meist geringer
Startvorgang Gastbetriebssystem muss starten Anwendungsprozesse starten
Isolation Üblicherweise stärkere Systemgrenze Prozessisolation, abhängig von Konfiguration
Wartung Zusätzliches Gastbetriebssystem Images, Hostkernel und Laufzeitumgebung
Typischer Einsatz Verschiedene Betriebssysteme, bestehende Systeme Anwendungsdienste, automatisierte Bereitstellung

Wichtig: Weder VMs noch Container sind automatisch sicher, hochverfügbar oder fehlerfrei. Beide benötigen korrekte Konfiguration, Updates, Zugriffsschutz, Backups und Überwachung.

Mini-Entscheidung:

Eine bestehende Anwendung benötigt einen eigenen Windows-Kernel, der Schulungsserver verwendet jedoch Linux.

Naheliegende Lösung: Eine geeignete Windows-VM auf einem entsprechend ausgestatteten Hypervisor, weil ein gewöhnlicher Linux-Container keinen eigenen Windows-Kernel bereitstellt.


Lerneinheit 5: Ressourcen planen

Lernzeit: 8 Minuten

Für einen zuverlässigen IT-Betrieb musst Du Ressourcenbedarf und Sicherheitsreserven unterscheiden.

Fiktive Daten des Ausbildungsfalls:

Anwendung Geschätzter RAM-Bedarf
Webportal 0,8 GiB
API 1,2 GiB
Testdatenbank 2,6 GiB
Summe der Anwendungen 4,6 GiB

Zusätzliche Modellannahmen: 0,7 GiB Grundbedarf je VM und 0,1 GiB zusätzlicher Bedarf je Container. Diese Werte dienen ausschließlich als Rechenbeispiel.

Berechnung 3 VMs 3 Container
Anwendungen 4,6 GiB 4,6 GiB
Angenommener Zusatzbedarf 2,1 GiB 0,3 GiB
Sicherheitsreserve 1,0 GiB 1,0 GiB
Gesamtbedarf 7,7 GiB 5,9 GiB
Rest auf dem 8-GiB-Host 0,3 GiB 2,1 GiB

Visualisierung:

RAM-Planung – 8 GiB Gesamtkapazität

VM        ███████████████░ 7,7 GiB
Container ████████████░░░░ 5,9 GiB

1 Block ≈ 0,5 GiB
Reserve ist bereits berücksichtigt.

Auswertung: Im vereinfachten Modell bleibt beim Containerszenario mehr RAM verfügbar. Das bedeutet jedoch nicht automatisch bessere Sicherheit oder Verfügbarkeit.

CPU beachten: Eine vCPU ist nicht gleichbedeutend mit einem exklusiven physischen Kern. CPU-Kontingente begrenzen Rechenzeit, reservieren aber nicht zwangsläufig Leistung.


Praxislabor A: Interaktiver RAM-Planer

Lernzeit: 12 Minuten

Lernumgebung: Dein lokaler Schulungsrechner mit Python 3. Keine zusätzlichen Pakete, keine Verbindung zu einem Server, keine echten Messdaten.

Speichere folgenden Code als ram_planer.py und starte ihn lokal mit python3 ram_planer.py. Unter Windows funktioniert bei entsprechender Python-Installation auch py ram_planer.py.

RAM = 8.0
RESERVE = 1.0
DIENSTE = {
    "Portal": 0.8,
    "API": 1.2,
    "Testdatenbank": 2.6
}

def pruefe(zusatz):
    for name, basis in (("VM", 0.7), ("Container", 0.1)):
        anzahl = len(DIENSTE) + (1 if zusatz > 0 else 0)
        bedarf = (
            RESERVE
            + sum(DIENSTE.values())
            + zusatz
            + basis * anzahl
        )
        voll = min(20, round(bedarf / RAM * 20))
        balken = "█" * voll + "░" * (20 - voll)
        status = "PASSEND" if bedarf <= RAM else "ZU WENIG RAM"
        print(
            f"{name:9} {balken} "
            f"{bedarf:.1f}/8.0 GiB - {status}"
        )

print("OFFLINE-LABOR: fiktive RAM-Planung")
pruefe(0.0)

while True:
    raw = input(
        "Zusatzdienst in GiB (0 bis 8, q=Ende): "
    ).strip().replace(",", ".")

    if raw.lower() == "q":
        break

    try:
        zusatz = float(raw)
    except ValueError:
        print("Bitte eine Zahl eingeben.")
        continue

    if not 0 <= zusatz <= 8:
        print("Nur Werte von 0 bis 8 verwenden.")
        continue

    pruefe(zusatz)

Dein interaktiver Versuch: Gib nacheinander 0, 1 und 2 als zusätzlichen RAM-Bedarf ein.

Erwartetes Ergebnis bei 1 GiB Zusatzdienst: Die modellierten Container benötigen 7,0 GiB, die VMs 9,4 GiB einschließlich Reserve.

Begründetes Feedback:

Beobachtung Erklärung
Beide Szenarien passen ohne Zusatzdienst Die geschätzten Bedarfe bleiben unter 8 GiB.
Nur Container passen beim 1-GiB-Zusatzdienst Das Modell rechnet mit geringerem Zusatzbedarf pro Instanz.
Beide Varianten passen beim 2-GiB-Zusatzdienst nicht Auch Container benötigen reale Ressourcen; ihre Vorteile sind nicht unbegrenzt.

Grenze des Experiments: Das Programm simuliert eine Kapazitätsplanung. Es startet weder VMs noch Container und bietet selbst keine Betriebssystemisolation.


Praxislabor B: Lokales Monitoring

Lernzeit: 10 Minuten

Monitoring unterstützt die frühzeitige Erkennung von Ressourcenengpässen.

Die folgende Simulation zeigt ausschließlich erfundene Messwerte. Sie liest weder Systemmetriken noch personenbezogene Daten aus.

Speichere den Code als monitoring_lab.py und starte ihn mit python3 monitoring_lab.py.

ram = [3.0, 4.6, 6.1, 7.1, 5.4]
cpu = [30, 40, 58, 91, 45]

print("OFFLINE-MONITORING: fiktive Messwerte")

for minute, (r, c) in enumerate(zip(ram, cpu), 1):
    n = round(r / 8 * 16)
    balken = "█" * n + "░" * (16 - n)
    alarm = (
        "PRUEFEN"
        if r / 8 >= 0.85 or c >= 85
        else "OK"
    )
    print(
        f"Minute {minute}: |{balken}| "
        f"RAM {r:.1f}/8 GiB, CPU {c}% - {alarm}"
    )

Auftrag: Finde den Zeitpunkt mit der kritischsten Auslastung. Ändere anschließend einen fiktiven Messwert und überprüfe die Rückmeldung.

Feedback: Minute 4 löst im Ausgangsdatensatz die Prüfung aus, weil der RAM-Anteil 85 Prozent überschreitet und die CPU bei 91 Prozent liegt. Eine solche Warnung ist noch kein Beweis für einen Ausfall. Zur Diagnose gehören Dauer, Verlauf und Auswirkungen auf den Dienst.

Hinweis: Die verwendete Warnschwelle von 85 Prozent ist nur eine didaktische Festlegung.


Praxislabor C: Tatsächlich isolierter Container-Test

Lernzeit: 10 Minuten – optional

Voraussetzung: Eine ausdrücklich freigegebene lokale Linux-Schulungsumgebung mit funktionsfähigem rootless Podman und einem bereits lokal gespeicherten, vertrauenswürdigen Python-Container-Image.

Wichtig: Keine automatische Installation, kein Download und keine Nutzung auf Produktivsystemen. Die Python-Labore A und B sind ohne diese Voraussetzung ausführbar.

Prüfe zunächst lokal:

podman image exists docker.io/library/python:3.12-alpine

Nur wenn der Befehl erfolgreich ist, kannst Du den folgenden Test ausführen:

podman run --rm -it \
  --pull=never \
  --network=none \
  --read-only \
  --cap-drop=all \
  --security-opt=no-new-privileges \
  --pids-limit=32 \
  --memory=128m \
  --cpus=0.5 \
  docker.io/library/python:3.12-alpine \
  python3 -i

Im gestarteten Python-Dialog kannst Du beispielsweise Folgendes eingeben:

import os
print("Containerprozess:", os.getpid())
print("Lokale Berechnung:", 2 + 2)
exit()

Was bewirken die Optionen?

Option Schutzwirkung
--pull=never Verhindert das Nachladen eines Images.
--network=none Deaktiviert die normale Netzwerkverbindung des Containers.
--read-only Bindet das Container-Root-Dateisystem schreibgeschützt ein.
--cap-drop=all Entfernt zusätzliche Linux-Capabilities.
--pids-limit=32 Begrenzt die Zahl der Prozesse.
--memory=128m Setzt eine RAM-Grenze.
--cpus=0.5 Begrenzt das CPU-Zeitkontingent.

Auswertung: Der Container ist deutlich eingeschränkt. Dennoch nutzt er weiterhin den Hostkernel. Die Isolation eines Containers ist nicht mit der einer eigenständigen VM gleichzusetzen.

Schlägt die Prüfung des lokalen Images oder der Ressourcenbegrenzung fehl, beende diesen optionalen Versuch. Es ist kein Download erforderlich.


Lerneinheit 6: Zuverlässiger IT-Betrieb

Lernzeit: 8 Minuten

IT-Sicherheit und IT-Service-Management betreffen beide Betriebsformen.

Betriebsaufgabe VM Container
Updates Gast- und Hostsystem pflegen Hostkernel, Images und Laufzeit pflegen
Isolation Hypervisor und Gastgrenzen absichern Namespaces, Rechte und Containergrenzen absichern
Ressourcen vCPU, RAM und Speicher planen CPU-, RAM- und Prozesslimits setzen
Backup Systeme und Anwendungsdaten sichern Dauerhafte Anwendungsdaten unabhängig vom Container sichern
Überwachung Gast und Host beobachten Anwendungen, Container und Host beobachten
Wiederherstellung VM und Daten wiederherstellen Container neu bereitstellen und Daten wiederherstellen

Wichtiger Unterschied: Ein Container-Image ist kein automatisches Backup einer Datenbank. Auch ein VM-Snapshot ersetzt kein vollständiges, geprüftes Backupkonzept.

Typische Kombination: Container können innerhalb von VMs laufen. Dadurch lassen sich Eigenschaften beider Verfahren nutzen.

Zuverlässigkeit entsteht durch: geeignete Architektur, Redundanz, Überwachung, Kapazitätsplanung, Berechtigungskonzepte und getestete Wiederherstellung.


Gestufte Lernhilfen

Nutze die Hilfen erst, wenn Du selbst keine Lösung findest.

Lernstufe Hilfe
Hilfe 1 – Denkanstoß Frage Dich, ob eine ganze Maschine oder nur eine Anwendung isoliert werden soll.
Hilfe 2 – Struktur Vergleiche Kernel, Hypervisor, RAM-Zusatzbedarf, Isolation und Wartung.
Hilfe 3 – Musterrechnung 3 VMs benötigen im Modell 4,6 + 2,1 + 1,0 = 7,7 GiB. Drei Container benötigen 4,6 + 0,3 + 1,0 = 5,9 GiB.

Feedback für technische Entscheidungen:

Entscheidung Begründete Rückmeldung
Container für passende Linux-Anwendungen Plausibel wegen des geringeren modellierten Grundbedarfs; Sicherheits- und Betriebsanforderungen bleiben wichtig.
VM für ein eigenständiges Windows-Gastsystem Plausibel, weil ein gewöhnlicher Linux-Container keinen Windows-Kernel mitbringt.
Container grundsätzlich für sicherer halten Nicht ausreichend begründet; gemeinsam genutzte Kernel und Konfiguration beeinflussen die Isolation.
Technologie nur nach RAM auswählen Unvollständig; Betriebssystem, Verfügbarkeit, Wartung und Sicherheitsanforderungen gehören dazu.
Container in einer VM betreiben Technisch möglich und bei geeigneter Architektur eine sinnvolle Kombination.


Interaktive Aufgaben


Quiz: Teste Dein Wissen

Welchen Bestandteil besitzt eine klassische virtuelle Systemmaschine? (Ein eigenes Gastbetriebssystem mit eigenem Kernel) (!Nur einen isolierten Anwendungsprozess) (!Ausschließlich ein Container-Image) (!Immer einen gemeinsamen Gastkernel)




Was nutzen Linux-Container auf demselben Linux-Host normalerweise gemeinsam? (Den Linux-Kernel des Hosts) (!Jeweils einen eigenen Windows-Kernel) (!Eine unabhängige physische CPU) (!Jeweils einen eigenen Hypervisor)




Welche Aufgabe übernimmt ein Hypervisor? (Er stellt virtuelle Maschinen bereit und verwaltet sie) (!Er ersetzt jedes Backup) (!Er verhindert grundsätzlich jeden Systemausfall) (!Er übersetzt nur HTML-Dateien)




Welchem Zweck dienen Linux-Namespaces? (Sie begrenzen die Sicht von Prozessen auf Ressourcen) (!Sie erhöhen automatisch den physischen RAM) (!Sie ersetzen das Betriebssystem) (!Sie garantieren eine feste Rechenleistung)




Welche Aufgabe haben Linux-cgroups? (Sie steuern und begrenzen die Ressourcennutzung von Prozessen) (!Sie stellen vollständige Gastbetriebssysteme bereit) (!Sie erstellen automatisch Datensicherungen) (!Sie verhindern sämtliche Sicherheitslücken)




Welche Lösung eignet sich für ein eigenständiges Windows-Gastsystem auf einem Linux-Virtualisierungshost? (Eine passend konfigurierte virtuelle Maschine) (!Ein gewöhnlicher Linux-Container ohne weitere Virtualisierung) (!Ein Linux-Namespace als Ersatz für den Windows-Kernel) (!Ein ausschließliches CPU-Limit)




Welche Aussage über Ressourcenlimits ist richtig? (Sie helfen dabei die Nutzung von CPU und RAM zu begrenzen) (!Sie machen RAM vollständig überflüssig) (!Sie garantieren automatisch Hochverfügbarkeit) (!Sie erhöhen die Zahl physischer Prozessorkerne)




Was bewirkt die Option network none bei einem entsprechend gestarteten Podman-Container? (Sie startet den Container ohne normale Netzwerkverbindung) (!Sie verbindet den Container mit allen Netzwerken) (!Sie veröffentlicht automatisch sämtliche Ports) (!Sie erstellt einen vollständigen Backupserver)




Warum ist der Python-RAM-Planer nur eine Simulation? (Er berechnet fiktive Werte ohne echte VMs oder Container zu starten) (!Er installiert automatisch einen Hypervisor) (!Er misst die Leistung fremder Server) (!Er verändert die Hardware des Rechners)




Welche Aussage über VMs und Container trifft zu? (Container können innerhalb virtueller Maschinen betrieben werden) (!Container ersetzen sämtliche Hypervisoren) (!Jede virtuelle Maschine ist automatisch ein Container) (!Beide Betriebsformen benötigen grundsätzlich gleich viel RAM)




Quiz-Feedback: Die Fragen 1–3 prüfen den Betriebssystemaufbau, 4–5 die Linux-Isolation, 6–8 technische Einsatzbedingungen und 9–10 den Transfer. Überprüfe bei einer falschen Antwort nicht nur den Begriff, sondern die dahinterliegende technische Funktion.


Memory

Ordne jedem Fachbegriff seine passende Erklärung zu.

Hypervisor Verwaltet virtuelle Maschinen
Gastkernel Eigenständiger Betriebssystemkern einer VM
Hostkernel Gemeinsamer Betriebssystemkern von Linux-Containern
Namespace Begrenzt die Sicht auf Systemressourcen
cgroup Steuert die Nutzung von Rechenressourcen
Sicherheitsreserve Freigehaltene Kapazität für zusätzlichen Bedarf





Drag and Drop

Ordne die fachlich passenden Begriffe zu.

Ordne die richtigen Begriffe zu. Thema
Hypervisor Virtualisierung von Hardware
Hostkernel Gemeinsamer Betriebssystemkern
Namespace Sichtbare Ressourcen
cgroup Ressourcenbegrenzung
Monitoring Betriebsüberwachung
Backup Wiederherstellung von Daten





Kreuzworträtsel

Hypervisor Welche Komponente verwaltet virtuelle Maschinen?
Kernel Wie heißt der zentrale Kern eines Betriebssystems?
Container Wie nennt man eine isolierte Ausführungsumgebung für Anwendungen?
Namespace Welcher Linux-Mechanismus begrenzt die Sicht auf Ressourcen?
Cgroup Welcher Linux-Mechanismus dient der Ressourcensteuerung?
Monitoring Wie bezeichnet man die laufende Überwachung von IT-Systemen?





LearningApps

Ergänzende Suchaufgaben zur Virtualisierung und Containervirtualisierung:

Hinweis: LearningApps ist ein optionaler externer Dienst. Die lokalen Praxislabore benötigen ihn nicht.


Lückentext

Vervollständige den Text.
Eine klassische virtuelle Systemmaschine besitzt ein eigenes

.
Der zentrale Bestandteil des Betriebssystems heißt

.
Ein

stellt virtuelle Hardwareumgebungen bereit.
Linux-Container nutzen normalerweise den

gemeinsam.
Ein

kann die Sicht von Prozessen auf Systemressourcen begrenzen.
Mit einer

lässt sich die Ressourcennutzung einer Prozessgruppe steuern.
Ein Container benötigt normalerweise weniger Betriebssystemzusatzaufwand als eine

.
Für die Planung des Hauptspeichers betrachten wir den

.
Die laufende Überwachung technischer Systeme heißt

.
Die Wiederherstellung von Daten benötigt ein geeignetes

.
Eine Kombination aus virtuellen Maschinen und Containern wird oft als

bezeichnet.




Offene Aufgaben


Leicht – Basisaufgaben

  1. Virtualisierung: Erstelle eine beschriftete Skizze einer VM mit Hardware, Hypervisor, Gastkernel und Anwendung.
  2. Container: Zeichne die Struktur von drei Linux-Containern mit einem gemeinsamen Kernel.
  3. Arbeitsspeicher: Berechne aus den fiktiven Daten den RAM-Bedarf der drei Anwendungen und kontrolliere Dein Ergebnis mit dem Python-Labor.
  4. Betriebssystem: Erstelle vier kurze Merksätze zu den wichtigsten Unterschieden zwischen VM und Container.


Standard – Anwendungsaufgaben

  1. Kapazitätsplanung: Simuliere mit dem RAM-Planer mehrere Zusatzdienste und dokumentiere, wann ein Szenario seine Kapazität überschreitet.
  2. Monitoring: Ändere zwei Messwerte des lokalen Python-Labors und erstelle eine neue Übersicht mit begründeter Warnbewertung.
  3. IT-Dokumentation: Gestalte eine Vergleichstabelle für die fiktive Lernwerkstatt und empfehle eine Betriebsform für jeden Dienst.
  4. Erklärvideo: Produziere ein ein- bis zweiminütiges Lernvideo zum Unterschied zwischen Hostkernel und Gastkernel. Verwende ausschließlich selbst erstellte oder korrekt lizenzierte Medien.


Schwer – Transferaufgaben

  1. Systemarchitektur: Entwickle eine Hybridarchitektur, in der Linux-Container innerhalb einer VM betrieben werden und ein zusätzlicher Windows-Dienst separat läuft.
  2. IT-Sicherheit: Erstelle ein Schutzkonzept für die fiktive Umgebung mit Betriebssystemupdates, minimalen Berechtigungen, Ressourcenlimits und Datensicherung.
  3. Fehleranalyse: Simuliere einen Ressourcenengpass, stelle zwei technische Gegenmaßnahmen gegenüber und beurteile mögliche Nebenwirkungen.
  4. Projektmanagement: Entwickle einen begründeten Migrationsplan von drei Einzel-VMs zu einer passenden Container- oder Hybridlösung einschließlich Rollback und Funktionstests.




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

Bearbeite mindestens fünf der folgenden Aufgaben mit Begründung. Alle Daten und Szenarien sind fiktiv.

  1. Betriebssystemarchitektur: Erkläre, warum die gemeinsame Nutzung eines Hostkernels sowohl einen Ressourcenvorteil als auch eine Sicherheitsfrage darstellen kann.
  2. Virtualisierung: Entscheide, wie eine Windows-Altanwendung und zwei Linux-Webdienste auf einem freigegebenen Schulungshost betrieben werden sollten.
  3. Kapazitätsplanung: Bewerte den 8-GiB-Server, wenn sich der geschätzte RAM-Bedarf der Testdatenbank verdoppelt. Berücksichtige die Reserve.
  4. Monitoring: Begründe, warum eine kurzzeitige CPU-Auslastung von 91 Prozent allein noch keinen Systemausfall beweist.
  5. IT-Sicherheit: Vergleiche die Risiken falsch konfigurierter Containerberechtigungen und falsch konfigurierter VM-Netzwerkfreigaben.
  6. Backup: Entwickle ein Konzept zur Wiederherstellung der fiktiven Testdatenbank nach einem Fehler.
  7. Systemverfügbarkeit: Erkläre, warum mehrere Container auf einem einzigen Host keine automatische Hochverfügbarkeit gewährleisten.
  8. Cloud Computing: Beurteile, weshalb in einer Cloud-Umgebung sowohl VMs als auch Container gleichzeitig eingesetzt werden können.

Bewertungsmaßstab: Eine überzeugende Lösung benennt technische Voraussetzungen, stellt Alternativen gegenüber, erklärt die Auswirkungen auf den Betrieb und kennzeichnet unsichere Annahmen.


Lernnachweis

Du erstellst eine kurze, nachvollziehbare Projektdokumentation für die fiktive Lernwerkstatt Nord.

Pflichtbestandteile:

  1. Systemarchitektur: Beschriftete Darstellung einer VM-, Container- oder Hybridlösung.
  2. Betriebssystem: Erklärung des Unterschieds zwischen Hostkernel und Gastkernel.
  3. Kapazitätsplanung: Eigene Ressourcenrechnung mit den fiktiven Ausgangswerten und einem Zusatzszenario.
  4. Python: Lokale Ausführung eines der Offline-Labore mit dokumentiertem Ergebnis.
  5. IT-Sicherheit: Mindestens drei begründete Schutzmaßnahmen.
  6. Monitoring: Interpretation eines fiktiven Warnereignisses.
  7. Entscheidungsfindung: Begründete Empfehlung mit mindestens einem Nachteil der gewählten Lösung.

Beurteilung:

Kriterium Anteil
Fachlich richtige Systemarchitektur 25 %
Nachvollziehbare Ressourcenrechnung 25 %
Auswertung der Praxisversuche 20 %
Sicherheit und zuverlässiger Betrieb 20 %
Verständliche Dokumentation 10 %

Erfolgreicher Lernnachweis: Du kannst Deine Entscheidung erklären, mit Daten stützen und ihre Grenzen benennen.




OERs zum Thema

Wikipedia: Containervirtualisierung

Weitere passende Grundlagen:

  1. Virtuelle Maschine
  2. Hypervisor
  3. Containervirtualisierung
  4. Cloud Computing
  5. Docker
  6. Kernel-based Virtual Machine
  7. Linux
  8. IT-Sicherheit

Technische Primärquellen:

  1. Docker Docs – What is a container?: Containerarchitektur und Unterschiede zu VMs.
  2. Microsoft Learn – Containers vs. virtual machines: Betriebssystembezug, Isolation und Kompatibilität.
  3. Linux Kernel Documentation – Control Group v2: Linux-Ressourcensteuerung.
  4. Docker Docs – Resource constraints: CPU- und RAM-Grenzen.
  5. Podman Documentation – podman run: Optionen für das isolierte lokale Labor.
  6. NIST SP 800-190 – Application Container Security Guide: Sicherheitsanforderungen an Container.


Mediennachweise und Nutzungsrechte

Die folgenden Wikimedia-Commons-Dateien und ihre Lizenzinformationen wurden anhand ihrer Beschreibungsseiten geprüft.

Eingebundene Datei Urheberangabe Lizenz beziehungsweise Status
OS vs Hardware virtualization.png RicoRico CC0 1.0
Cloud computing layers.svg Wylve, nach einer Vorlage von Bikeborg CC0 1.0
Hyperviseur.svg Scsami CC0 1.0
Kernel-based Virtual Machine.svg V4711, überarbeitet von Smartcom5 CC BY-SA 4.0
Containers.svg Joseph554 CC BY-SA 4.0
Docker-linux-interfaces.svg Maklaan Auf Commons als gemeinfrei gekennzeichnet
Containerization2.svg MoreInput CC BY-SA 4.0

Lizenzlinks: CC0 1.0 und CC BY-SA 4.0.

Die Urheberangaben und Lizenzverweise gelten für die unverändert eingebundenen Dateien. Bei Bearbeitung und Weiterverwendung sind die jeweiligen Lizenzbedingungen einschließlich der Namensnennung und gegebenenfalls der Weitergabe unter gleichen Bedingungen einzuhalten.

Verwendete Videos:

  1. Virtualization Explained – IBM Technology.
  2. What is a Hypervisor? – IBM Technology.
  3. Containers vs VMs: What's the difference? – IBM Technology.

Die YouTube-Videos werden als externe Lernmedien eingebettet. Eine Einbettung bedeutet keine automatische Veröffentlichung unter einer freien OER-Lizenz. Die Rechte verbleiben bei den jeweiligen Rechteinhabern. Die Wiedergabe kann von der Freigabe durch den Anbieter abhängen.

Die Python-Beispiele und alle Falldaten des Kurses sind eigenständig formulierte didaktische Beispiele. Sie benötigen keine externen Bibliotheken und führen keine Netzwerkzugriffe aus.



Verknüpfte Lernbereiche


aiMOOC-Projekte



Schulfach+




aiMOOCs



aiMOOC Projekte









MOOCwiki · Deutsch

Nach dem Lernen ist vor dem Lernen

Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.

Zur MOOCwiki-Hauptseite

Mediathek

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...