Drahtlose Netzwerke sind überall: Zu Hause, im Café und in der Firma. Im Gegensatz zu Kabelnetzen verliert der Admin bei WLANs allerdings schnell die ... (mehr)

HTTP-basierte Konfiguration

Ebenfalls in Dumpling hinzugekommen ist das Feature, das die Entwickler als »ReSTful-basierte HTTP-Konfiguration« bezeichnen. Wer zunächst an ein Web-Interface denkt, liegt damit allerdings daneben, denn gemeint ist hier in der Tat ein Konfigurationsmechanismus, der sich per ReSTful-Protokoll über eine eigens dafür in Ceph implementierte API ansteuern lässt. Die API kennt eigene Befehle, versucht sich in Sachen Syntax aber weitestgehend an die vom »ceph« -Programm gewohnten Konventionen zu halten. Die Lösung verfügt über einen eigenen Single-Threaded HTTP-Server, und letztlich dürfte diese Art der Ceph-Administration der Konfiguration über die Kommandozeile ebenbürtig sein. Beide Mechanismen wollen die Ceph-Entwickler jedenfalls Seite an Seite pflegen.

Kleinvieh in Emperor

Die Ceph-Version 0.72 alias »Emperor« , die im November erschienen ist, kam ohne pompöses Release-Announcement aus und widmete sich eher verschiedenen Details. Dazu gehören Performance-Improvements hier und da sowie verschiedene Optimierungen, was die Benutzbarkeit einzelner Dienste angeht. Die MONs können seit Emperor beispielsweise Nutzungsstatistiken basierend auf der Einteilung von Ceph in Pools ausgeben; obendrein warnen die MONs nun auch, wenn Pools mit einer Anzahl von Placement Groups angelegt werden, die technisch nicht sinnvoll ist. Im Ceph-Gateway lassen sich seit Emperor Quotas definieren, was eine echte Premiere in Ceph darstellt – bis jetzt waren Quotas allenfalls ein Wunsch in der Planung vieler Ceph-Nutzer.

Quasi neben dem offiziellen Release-Cycle haben die Inktank-Entwickler auf dem Weg zu Emperor übrigens auch an anderen Projekten herumgeschraubt; Zeugnis davon legt das »tgt« -iSCSI-Target ab. Denn jenes kann nun über die »librados« unmittelbar und direkt mit Ceph sprechen, ohne den mühsamen Umweg über ein »rbd« -Device zu gehen.

Was harmlos klingt, wirkt sich deutlich erkennbar auf die Benutzbarkeit von Ceph mit iSCSI aus: Der alte Mechanismus mit einem »rbd« -Device und darauf liegendem »tgt« -Target ermöglicht es nämlich beispielsweise nicht, das Target auf einem Host laufen zu lassen, der selbst Teil des Kernels ist. Eine Limitierung im Linux-Kernel würde bei solchen Setups unter hoher Last sporadisch zu Deadlocks führen (das Problem ist übrigens nicht Ceph-spezifisch sondern bezieht sich generell auf die sogenannten "Loopmounts" und vergleichbare Konstrukte [3] ). Durch die Änderungen an »tgt« fällt wie erwähnt der Umweg über den Kernel weg und das Problem erübrigt sich.

Eine zusätzliche Neuerung in Emperor erfreut die Benutzer, die Ceph in der Kombination mit OpenStack einsetzen und Ceph dort insbesondere als Ersatz für OpenStacks eigenen Objektspeicher Swift nutzen. Swift unterstützt ja neben dem eigenen, nativen Protokoll auch Amazons S3 in ausreichend kompatibler Art und Weise. Das Ceph-Gateway, das als ReSTful-Schnittstelle für Ceph dient, kennt ebenfalls beide Protokolle. Allerdings war die Anbindung des Ceph-Gateways an Keystone bis jetzt eher löchrig. Keystone ist die Komponente, die sich um die Authentifizierung von Nutzern in OpenStack kümmert. Das Ceph-Gateway konnte Keystone zwar nutzen, allerdings ließ es sich dann nur im Kompatibilitätsmodus für das Swift-eigene Protokoll verwenden – die Option, Amazons S3 ebenfalls anzubieten, fiel flach. Dieses Problem haben die Ceph-Entwickler in Emperor aber beseitigt: Das Ceph-Gateway in Emperor kann auf der einen Seite direkt mit Keystone verbunden sein und von dort seine Nutzerdaten beziehen, auf der anderen Seite aber sowohl das S3- wie auch das native Swift-Interface an die Außenwelt durchreichen.

Insgesamt präsentiert sich Emperor insofern als stabiles Wartungsrelease ohne aufregende Neuerungen.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023