ZFS – Begrifflichkeiten und Erklärungen

VDEV

Ein virtuelles Gerät (virtual device, vdev) ist ein Verbund aus blockorientierten Geräten (LinuxWiki: Block-Device) welche zu einem (virtuellen) Gerät zusammengefasst werden.

Pool

Ein Pool umfasst ein oder mehrere vdevs, welche unterschiedlich konfiguriert (verschiedene RAID-Typen) sein können und ein paar globale Einstellunngen, welche auf alle enthaltenen vdevs zutreffen (deduplizierung, kompression uvm.).

RAIDZx

N = Anzahl FestplattenStripeMirrorRAIDZ1RAIDZ2RAIDZ3
Min. Festplatten12245
Fehlertolleranz0N-1123
Größe Parität0(N-1)/N123
Die Parität wird über alle Festplatten verteilt.

ARC – Lesecache im RAM

Der Adaptive Replacement Cache (https://www.usenix.org/legacy/events/fast03/tech/full_papers/megiddo/megiddo.pdf) wird von ZFS im RAM abgelegt und enthält häufig angefragten Daten. Demnach sollte der RAM im Hostsystem so groß wie möglich sein. Empfohlen wird ZFS nicht mit weniger als 32GB RAM zu verwenden. Im Detail kann dies jedoch je nach Anwendungsfall variieren.

L2ARC – Lesecache auf SSDs

Level-2-ARC ist eine Lösung für kleine Budgets oder besondere Anforderungen. Dabei wird ein Teil der Daten aus dem ARC, wenn dieser voll ist, in den L2ARC geschoben. Es sollte klar sein, dass ausschließlich enterprise ssds als L2ARC verwendet werden sollten, da es sonst zu einer überaus schlechteren Performance führen kann, als ohne L2ARC und vollem ARC. Stichwort: Latenz

ZIL / LOG – Schreibcache auf SSDs

Um sicherzustellen, dass ein Schreibvorgang abgeschlossen ist, wird jeder Vorgang nach Abschluss bestätigt. Sobald bspw. das Betriebssystem nach einem Schreibvorgang eine solche Bestätigung erhält, ist wohldefiniert, dass die geschriebenen Daten an der vorgegeben Stelle vorhanden sind.

Dieses verhalten führt aber zu Problemen bei Festplatten. Da die Latenz einer Festplatte (Signalweg, Bewegung Lese-/Schreibkopf etc.) sehr hoch ist, kann es bei vielen paralellen Vorgängen dazu führen, dass das Hostsystem im sogenannten „iowait“ einfriert.

Als Antwort auf das Problem bietet ZFS die Möglichkeit, einen Schreibcache zu konfigurieren. Diese fängt alle Schreibvorgänge ab und muss immer schneller als der „echte“ Pool aus (wahrscheinlich) Festplatten. Da der ZIL nur mit SSDs eingerichtet werden sollte, ist klar, dass durch die verringerte Latenz es zu wesentlich weniger iowait kommt.

Bei der Umsetzung sollte jedoch darauf geachtet werden, dass der ZIL immer als Mirror betrieben werden muss, die SSDs PLP besitzen und das Hostsystem über eine UPS verfügt. Da die Daten im ZIL noch nicht auf den Pool geschrieben wurden, würde es ansonsten bei einem Stromausfall oder Hard-reset zu Datenverlust kommen.

Prefetch

demnächst

Demand

demnächst

Intel CNVi

Intel Integrated Connectivity I/O interface beschreibt ein Feature neuerer Intel-Plattformen zur Integration von Netzwerk-Funktionen in der CPU und im Chipsatz.

In den meisten Fällen sind Netzwerk-Funktionen auf sogenannten ASICs (Application-specific integrated circuit) implementiert. Diese werden anschließend mit vielen zusätzlichen Komponenten auf einem PCB verbaut und bilden dann z. B. einen PCIe NIC.

„Intel CNVi“ weiterlesen

SSO mit Authentik – Eine Einführung

Ahoi,

im vorherigen Beitrag ging es darum, was () überhaupt ist.
Jetzt schauen wir uns Authentik an, welches es uns ermöglicht, einen eigenen SSO Provider zu betreiben.

Doch bevor es um die Installation geht, widmen wir uns der Funktionsweise von .

Authentik ist kein reines Benutzerverzeichnis, sondern eine vollumfänglicher SSO Dienst, welcher die verschiedene Protokolle untestützt um auch wirklich jede Anwendung mit SSO zu versehen.

„SSO mit Authentik – Eine Einführung“ weiterlesen

SSO mit Authentik – Was ist das?

Ahoi,

ist eine tolle und vor allem bequeme Funktion, welche die meisten Internet-Nutzer bereits verwendet haben. Meist sogar, ohne es zu wissen. wird überall da benutzt, wo es nötig ist, jemanden anhand zentral abgelegter Daten gegenüber einem Dritten zu authentifizieren.

„SSO mit Authentik – Was ist das?“ weiterlesen