Ceph Tentacle: Erasure Coding ohne Schreib-Overhead Teilschreibzugriffe für RBD, CephFS und RGW

Von Thomas Joos 2 min Lesedauer

Anbieter zum Thema

Verteilter Objektspeicher schont Kapazität, kostet bei Schreibzugriffen aber Rechenzeit und I/O. Die aktuelle Tentacle-Generation ordnet den Erasure-Code-Pfad neu und senkt den Aufwand pro Schreibvorgang. Administratoren gewinnen Durchsatz für Blockspeicher und Dateisysteme, ohne dabei Redundanz aufzugeben

Erasure Coding ohne Schreib-Overhead(Bild:  Thomas Joos)
Erasure Coding ohne Schreib-Overhead
(Bild: Thomas Joos)

Mit Tentacle 20.2 liefert das Ceph-Projekt eine überarbeitete Erasure-Coding-Verarbeitung aus, dokumentiert in den offiziellen Release Notes. Erasure Coding verteilt Daten samt Paritätssegmenten über mehrere OSDs und benötigt weniger Rohkapazität als eine dreifache Replikation. Diesen Vorteil erkauften Betreiber bislang mit höherem Schreibaufwand. Die Neuerung heißt FastEC und ersetzt den bisherigen Schreibpfad. Zuvor weitete Ceph jede kleine Änderung auf ein komplettes Stripe aus, las dafür sämtliche Datensegmente ein, rechnete die Parität neu und schrieb den Block zurück. Dieser Umweg kostete Durchsatz und belastete die OSDs unter vielen kleinen Zugriffen.

Teilschreibzugriffe statt kompletter Stripes

FastEC führt partielle Lese- und Schreibzugriffe ein und aktualisiert nur die betroffenen Segmente eines Stripes. Bei kleinen Änderungen berechnet Ceph die Parität über einen Delta-Vorgang und spart den Umweg über den gesamten Datenblock. So sinkt die Schreibverstärkung, die bei kleinen Zugriffen bisher ein Vielfaches der Nutzdaten bewegte. Der Gewinn zeigt sich vor allem bei Blockspeicher über RBD und bei CephFS, da dort viele kleine Schreibzugriffe zusammenkommen. Objektspeicher über RGW profitiert bei kleinen Objekten. Das Projekt beziffert die Beschleunigung für Erasure-Coding-Lasten auf das Zwei- bis Dreifache(.

Umstieg über ein Pool-Flag

Der neue Pfad greift nicht automatisch. Administratoren aktivieren ihn je Pool über das Flag allow_ec_optimizations und behalten die Kontrolle über den Zeitpunkt. Bestehende Pools arbeiten zunächst unverändert weiter und lassen sich nach einer Prüfung umstellen. Zusätzlich wechselt Ceph bei neu angelegten Erasure-Coding-Pools das Standard-Plugin von Jerasure auf ISA-L, das die Rechenoperationen über optimierte CPU-Befehle abwickelt und die Parität schneller bildet. Cluster auf der Vorgängerlinie Squid heben zunächst auf Tentacle an, bevor die neuen Funktionen bereitstehen.

Weitere Betriebsfunktionen

Neben FastEC überarbeitet Tentacle den Speicher-Layer und das Management der Cluster.

  • BlueStore: beschleunigt das Write-Ahead-Log und komprimiert Daten wirksamer
  • NVMe over TCP: erhält DHCHAP-Authentifizierung, verschlüsselte Namespaces und Gateway-Gruppen für den Mehrfachbetrieb
  • Dashboard: steuert Objektspeicher und SMB mit Mehrstandort-Automatik, Tiering und granularer Replikation

Fazit

Tentacle verlagert den Schwerpunkt von der reinen Kapazitätseffizienz hin zur Schreibleistung. Mit FastEC verliert Erasure Coding einen großen Teil seines bisherigen Aufwands und rückt näher an die Replikation heran, ohne deren Speicherbedarf zu verlangen. Über das Pool-Flag steuern Betreiber den Übergang in eigenem Tempo.

(ID:50891542)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu RZ- und Server-Technik

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung