Mit den Tipps und Workshops im ADMIN-Magazin 03/2013 sichern Administratoren ihre Webserver und Netze gegen Angriffe ab: gegen Abhören sensibler Informationen, ... (mehr)

Journaling

Abhilfe für dieses Problem schaffen Dateisysteme mit Journaling wie JFS (Journaling File System) von IBM oder das GEOM-Modul Gjournal unter FreeBSD. Dabei werden sämtliche Änderungen am Dateisystem in einem Journal protokolliert. Im Falle eines Falles wird dieses Journal abgearbeitet und so das Dateisystem wieder in einen konsistenten Zustand versetzt. Diese Methode hat aber den Nachteil, dass das Journal Plattenplatz benötigt. Doch was ist, wenn bei Stromausfall das Journal nicht mehr geschrieben werden kann?

ZFS verwendet die Transaktionsmethode des Copy on Write (COW). Abbildung 3 zeigt, wie diese Methode funktioniert. Wie bei allen modernen Dateisystemen liegen die Daten in einer baumartigen Struktur vor (1). Die Wurzel bildet der Super-Node, die Daten sind in den Blöcken gespeichert. Im nächsten Schritt (2) werden die Blöcke kopiert, in denen Daten verändert werden sollen. Die Originalblöcke bleiben dabei erhalten. Sobald diese Transaktion erfolgreich abgeschlossen ist, werden die Nodes kopiert und deren Pointer zeigen gegebenenfalls auf die neuen Blöcke. Da auch dies wieder eine Transaktion darstellt, wird nur nach einem erfolgreichen Abschluss der nächste und letzte Schritt durchgeführt: Der Super-Node wird neu geschrieben. Auch dies ist wieder durch eine Transaktion abgesichert.

Abbildung 3: Transaktionsmethode "Copy on Write" in ZFS.

Konsistenz garantiert

Wie man anhand der beschriebenen Schritte schnell erkennen kann, bleibt bei einem Stromausfall das Dateisystem in einem konsistenten Zustand. Da nur mit Kopien der Nodes und Blöcke gearbeitet wird, bleiben im schlimmsten Fall die Originale erhalten, während die Kopien verloren sind.

Die Transaktionsmethode Copy on Write bietet außerdem auf einfache Art und Weise Snapshots: Die Originalblöcke werden einfach nicht freigegeben. So erhält man die Möglichkeit, jederzeit zum vorherigen Stand der Datei zurückzukehren. Kostengünstiger können Snapshots nicht sein. Außerdem benötigen sie im Gegensatz zur klassischen Methode der Snapshots kaum Systemresourcen.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Setup eines Kubernetes-Clusters mit Kops

Vor allem für Testinstallationen von Kubernetes gibt es einige Lösungen wie Kubeadm und Minikube. Für das Setup eines Kubernetes-Clusters in Cloud-Umgebungen hat sich Kops als Mittel der Wahl bewährt. Wir beschreiben seine Fähigkeiten und geben eine Anleitung für den praktischen Einsatz. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite