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.

comments powered by Disqus

Artikel der Woche

Loadtests ohne Server

Für Loadtests der eigenen Server bietet sich die Cloud an, denn kurz getaktet lassen sich dort viele Rechnerinstanzen starten, die das eigene Budget nur wenig belasten. Noch flexibler, günstiger und besser skalierbar sind Tests mit einer Serverless-Infrastruktur wie AWS Lambda. Wir führen vor, wie Sie dort mit Serverless Artillery eigene Loadtests starten. (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