Linux-Magazin_-_Januar_2019

(singke) #1
bei entsprechenden Geräten keine spe-
zifischen Treiber mehr laden, sondern
darf annehmen, dass ein standardisierter
Befehlssatz unterstützt wird.
Der bekannteste Standard dieser Art war
bis vor einigen Jahren AHCI. Das Pro-
tokoll fungiert als Übersetzer zwischen
PCIe-Schnittstellen, über die entspre-
chende Storage-Geräte meist angebunden
sind, und SATA-Geräten, wie sie bis vor
einigen Jahren üblich waren. Sind PCIe-
basierte Speichergeräte per ATA-Protokoll
anzubinden, ist also immer eine Konver-
tierung der jeweiligen Befehle nötig, was
Zeit kostet und die Latenz beim Zugriff
auf die Speichergeräte erhöht.
Dieser Umstand ist die Grundlage für den
Wunsch der Industrie, ein neues, speziell
für PCIe gebautes Protokoll zu haben,
das die Konvertierung überflüssig macht.
Und genau diese Aufgabe kommt NVMe
zu: Das Protokoll gibt entsprechenden
Speichergeräten die Möglichkeit, direkt
das PCIe-Protokoll zu verwenden, ohne
den Umweg über das uralte ATA-Protokoll
zu nehmen.
NVMe steht für „Non-Volatile Memory
Express“ und deutet schon in seinem Na-
men darauf hin, dass es vorrangig für den
Einsatz in schnellen Flashumgebungen
konzipiert ist, sich mithin an Geräte auf
Basis von SSD richtet. NVMe definiert
also ein Protokoll für den PCIe-basierten
Zugriff auf Flashspeicher – dabei ist die

genaue Bauform zu-
nächst egal.
Mittlerweile ist NVMe
allerdings nicht mehr
ohne Konkurrenz:
M-SATA sowie SATA
Express sind Konkur-
renzstandards, die


  • im Gegensatz zu
    NVMe – auch die phy-
    sischen Eigenschaften
    etwa der Stecker defi-
    nieren und unmittel-
    bar PCI Express spre-
    chen.
    Wer die Excelero-Do-
    kumentation liest,
    stolpert dort nicht nur
    über den Begriff
    NVMe, sondern auch
    über NVMf. NVMf (in
    Dokumenten taucht
    der Standard manch-
    mal auch als NVMoF auf) steht für „NVM
    over Fabric“, erweitert den NVMe-Stan-
    dard also um die Möglichkeit des Netz-
    werkzugriffs. Die primäre Idee hinter
    dieser Erweiterung war es offensichtlich,
    den Bau von SAN-Systemen zu ermögli-
    chen – zu genau diesem Zweck macht
    sich Excelero die Funktion auch zunutze.


RDDA für direkten Zugriff


Der Vollständigkeit halber sei allerdings
erwähnt, dass NVMe oder NVMf, das
Excelero nutzen kann, nur einen Teil der
Lösung ausmachen. Denn Excelero hat
für NVMe und NVMf eine Erweiterung
fabriziert, die der Hersteller auf den Na-
men Remote Direct Drive Access getauft
hat. Auf die ist Excelero so stolz, dass
die Firma in der offiziellen Dokumen-
tation gleich mehrfach darauf hinweist,
dass sie patentiert ist. Stellt sich also die
Frage: Was tut RDDA (Abbildung 3) in
Excelero?
Die offensichtliche Antwort auf die Frage
ist, dass RDDA für die NVMe-Geräte Re-
mote-Funktionalität nachrüstet, die sie
ab Werk nicht haben – längst nicht jedes
NVMe-Gerät kann auch NVMf. RDDA ist
Teil der Kernelmodule auf den Zielsys-
temen und kommuniziert dort unmit-
telbar mit RDMA-NICs, um die Pakete
auf direktem Weg ans Ziel zu bringen.
Und selbst bei Geräten, die NVMf kön-

etlichen Modulen gehört, die auf den Sys-
temen mit NVM-Speicher in den Kernel
zu laden sind.
Auf den Systemen haben die Kernelmo-
dule mehrere Aufgaben. Zunächst suchen
sie die Liste der lokalen Blockgeräte nach
geeigneten Kandidaten für NVMesh ab
und erkennen auch, ob im System geeig-
nete, RDMA-fähige Netzwerkkarten ver-
baut sind. Sind diese identifiziert, klinkt
sich das Modul direkt in den Block Layer
des Kernels ein und beansprucht mit Blick
auf das jeweilige Gerät Exklusivrechte.

NVMe, SATA, M2, SSDs ...


Um zu verstehen, wie Excelero das
macht, ist ein kleiner Ausflug in die
Welt der non-volatilen Flashspeicher nö-
tig. Auch die Excelero-Dokumentation
mischt Begriffe wie NVMe, NVMf, SSDs
und viele andere nämlich wild und ohne
zu erklären, was im jeweiligen Kontext
gemeint ist.
Damit der Kernel auf ein Speichergerät
zugreifen kann, muss es wie bei jedem
anderen Gerät auch mit diesem kommu-
nizieren können. Weil Festplatten und
die später aufkommenden SSDs aller-
dings Geräte sind, die in praktisch je-
dem Computer in der einen oder anderen
Art vorkommen, hat man sich geeinigt,
ein standardisiertes Protokoll für diese
Geräte zu entwickeln. Der Kernel muss

Sysadmin

76


http://www.linux-magazin.de

Excelero

Abbildung 2: Excelero kommt mit einem eigenen Dashboard daher, das alle relevanten Vitalwerte der Installation anzeigt.

© Excelero
Free download pdf