Zum Inhalt

Lab 10: Challenge: Volumes

Aufgabe 1: Ephemere Volumes

  • Erstelle ein Pod-YAML-Manifest mit zwei Containern, die beide das Image alpine:3.12.0 verwenden.
  • Definiere ein Kommando für beide Container, das sicherstellt, dass sie dauerhaft im Running-Zustand bleiben.

    Das geht mit dem Befehl sleep infinity.

  • Lege ein emptyDir-Volume im Pod an.
  • Container 1 muss dieses Volume unter /etc/a einhängen.
  • Container 2 muss dieses Volume unter /etc/b einhängen.

    Dokumentation zu emptyDir-Volumes

  • Öffne Container 1 über eine interaktive Shell und lege in seinem Mount-Pfad ein Verzeichnis namens data an.
  • Wechsle in das neue Verzeichnis und erstelle eine Datei namens hello.txt mit dem Inhalt Hello World.
  • Beende die Container-Shell.
  • Öffne Container 2 über eine interaktive Shell und navigiere nach /etc/b/data.
  • Prüfe den Inhalt der Datei hello.txt.
  • Beende die Container-Shell.

Aufgabe 2: Persistente Volumes

  • Erstelle ein PersistentVolume (PV) namens logs-pv.
  • Es soll hostPath mit dem Pfad /var/logs verwenden.
  • Die Access-Modes müssen ReadWriteOnce und ReadOnlyMany umfassen.
  • Stelle 5Gi Speicher bereit.
  • Prüfe, dass der PV-Status Available lautet.
  • Erstelle ein PersistentVolumeClaim (PVC) namens logs-pvc.
  • Es muss den Access-Mode ReadWriteOnce anfordern.
  • Fordere 2Gi Kapazitaet an.
  • Prüfe, dass der PVC-Status Bound ist (also mit dem PV verbunden).
  • Erstelle einen Pod, der das Image nginx ausführt, und binde logs-pvc unter /var/log/nginx ein.
  • Öffne eine interaktive Shell zum Container des Pods, erstelle unter /var/log/nginx eine neue Datei namens mynginx.log und verlasse den Pod.
  • Lösche den Pod und erstelle ihn erneut mit exakt demselben YAML-Manifest.
  • Öffne eine interaktive Shell zum neuen Pod, gehe nach /var/log/nginx und überprüfe, dass die zuvor angelegte Datei mynginx.log weiterhin vorhanden ist.