Abo
  • Services:
Anzeige
Ceph, kurz für Cephalopoda (Kopffüßer),
Ceph, kurz für Cephalopoda (Kopffüßer), (Bild: Rich Bowen, Flickr.com/CC-BY 2.0)

Zwei Basis-Komponenten

Ein typischer Ceph-Cluster besteht aus zwei Diensten, die innerhalb eines Clusters beinahe beliebig oft vorkommen: den OSDs auf der einen Seite und den MONs auf der anderen Seite.

OSD ist die Abkürzung für Object Storage Device. So bezeichnet Ceph den Dienst, der physische Platten in den Clusterverbund integriert. Die zuvor erwähnte Ebene, die verteilte Storage-Systeme zwischen die Nutzer und die physischen Geräte einfügen, stellen genau diese OSDs dar. Die Kommunikation mit den physischen Blockgeräten wickeln die OSD-Server im Hintergrund ab. Auch um die inhärente Replikation kümmern sich vorrangig die OSD-Dienste.

Anzeige

Dabei gilt, dass pro physischem Blockgerät ein OSD-Dienst läuft. Auf einem Server mit 24 Festplatten finden sich also 24 laufende OSD-Instanzen. OSDs bilden obendrein den Anlaufpunkt für Clients, um Daten anzuliefern oder abzuholen. Die Clients liefern Daten bei einem OSD an, das sich danach um die Replikation kümmert. Erst wenn die eingestellten Replikationsvorgaben erfüllt sind, erhält der Client die Nachricht, dass der Schreibvorgang erfolgreich war.

Die Monitoring-Server, kurz MONs, sind in Ceph die Cluster-Wachhunde: Sie führen Buch über vorhandene MONs und OSDs und erzwingen im Cluster ein Quorum auf der MON-Ebene. Das ist wichtig in Situationen, in denen der Cluster in mehrere Partitionen zerfällt, etwa weil Netzwerkhardware kaputtgeht: Die MONs stellen in solchen Szenarien sicher, dass Clients nur auf die Partition des Clusters schreibend zugreifen können, die die Mehrheit der insgesamt im Cluster bekannten MON-Server hinter sich weiß. MON-Server sind auch der erste Anlaufpunkt für Clients und OSDs gleichermaßen, wenn diese Informationen über die aktuelle Topologie des Clusters brauchen.

Die Platzierung von Daten

Dieser Punkt führt zu einem der interessantesten Probleme, wenn es um das Thema verteilte Speicherlösungen geht. Der zwischengeschaltete Layer trägt wie eingangs beschrieben die Verantwortung dafür, dass eingehende Daten auf den physischen Speichergeräten sinnvoll verteilt abgelegt werden. Er ist obendrein zuständig, wenn Clients spezifische Informationen über eines der Cluster-Frontends wieder auslesen wollen, denn dann läuft der Vorgang einfach in umgekehrter Reihenfolge ab.

Woher aber erfährt ein Client, der Daten in den Cluster laden möchte, welches OSD das richtige ist? Und wo bekommt jenes Primary OSD die Information her, auf welchen anderen OSDs es von den hochgeladenen Daten Replikate anlegen muss, bevor es dem Client einen erfolgreichen Schreibvorgang vermeldet?

Im Beispiel von Ceph kommt an dieser Stelle der Crush-Algorithmus ins Spiel. Er ist Cephs Placement-Algorithmus und ermöglicht es Clients wie OSDs, sich das jeweils passende Ziel-OSD für bestimmte Datensätze auszurechnen.

Crush als Dreh- und Angelpunkt

Der Crush-Algorithmus ist in Ceph der zentrale Punkt, wenn es um die Platzierung von Daten geht. Die Abkürzung steht für Controlled Replication Under Scalable Hashing. Gemeint ist das Prinzip, anhand dessen Clients oder OSDs die Ziel-OSDs für bestimmte Datensätze festlegen.

Zur Erinnerung, Ceph betrachtet sämtliche Daten als binäre Objekte. Wenn ein Client nun also Informationen in den Cluster laden möchte, findet zuerst die Aufteilung in Objekte statt. Für jedes der Objekte stellt sich dann die Frage, an welches OSD es zu senden ist und wohin es von dort repliziert wird.

Der Crush-Algorithmus beantwortet ebendiese Frage. Der Client organisiert sich zunächst von den MON-Servern des Ceph-Clusters das aktuelle Verzeichnis aller OSDs und stößt danach die Crush-Berechnung für das jeweilige Objekt an.

Crush lässt sich auch von außen beeinflussen: Die Crush-Map bietet dem Admin etwa die Möglichkeit, Rechner oder OSDs logisch zu gruppieren. Legt der Admin zum Beispiel fest, dass bestimmte Server in Rack 1 hängen und andere Server in Rack 2, so kann er im nächsten Schritt bestimmen, dass Replikate eines binären Objektes in beiden Racks vorhanden sein müssen.

Wenn der Client oder die OSDs danach die Crush-Kalkulation für ein bestimmtes Objekt durchführen, beziehen sie jene Faktoren mit ein und erhalten ein entsprechendes Ergebnis. Das gilt übrigens sowohl für Lese- wie auch für Schreibvorgänge. Solange sich die Topologie des Clusters nicht ändert, bleibt das Crush-Resultat identisch.

 Software Defined Storage ermöglicht verteiltes SpeichernParallellität als Matchwinner 

eye home zur Startseite
AgentBignose 19. Okt 2016

Ich finde den Artikel etwas zu unkritisch, klingt ein bisschen wie ein Werbe Prospekt...

amagol 07. Okt 2016

Die lokale SSD bring dir aber nur etwas wenn du weisst das die Daten genau auf dieser...

Käx 07. Okt 2016

Eben dieses. Der Vorteil von Drive Pooling ist das selektive (!) Spiegeln von Daten. Die...

olqs 06. Okt 2016

Wenn ihr sowieso eine Forschungseinrichtung seit, dann fragt doch mal unverbindlich beim...



Anzeige

Stellenmarkt
  1. cbs Corporate Business Solutions Unternehmensberatung GmbH, Dortmund, Hamburg, Heidelberg, München, Stuttgart
  2. Bertrandt Technikum GmbH, Ehningen bei Stuttgart
  3. Robert Bosch GmbH, Schwieberdingen
  4. MBtech Group GmbH & Co. KGaA, Norddeutschland


Anzeige
Hardware-Angebote
  1. und Halo Wars 2 + zwei weitere Games gratis erhalten + dank Nvidia-Aktion Tom Clancy’s Ghost...
  2. ab 649,90€
  3. 39,99€

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Beurteilungskriterien für den Schutz in der Cloud
  2. Wissens-Guide und Kaufberatung für Cloud-Sicherheit


  1. Mobilfunk

    Patentverwerter klagt gegen Apple und Mobilfunkanbieter

  2. Privatsphäre

    Bildungsrechner spionieren Schüler aus

  3. Raumfahrt

    Chinesischer Raumfrachter Tanzhou 1 dockt an Raumstation an

  4. Die Woche im Video

    Kein Saft, kein Wumms, keine Argumente

  5. Windows 7 und 8

    Github-Nutzer schafft Freischaltung von neuen CPUs

  6. Whitelist umgehen

    Node-Server im Nvidia-Treiber ermöglicht Malware-Ausführung

  7. Easy S und Easy M

    Vodafone stellt günstige Einsteigertarife ohne LTE vor

  8. UP2718Q

    Dell verkauft HDR10-Monitor ab Mai 2017

  9. Datenschutzreform

    EU-Kommission lehnt deutschen Sonderweg ab

  10. Moby-Projekt

    Docker bekommt eigenes Upstream-Projekt zum Basteln



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Elektromobilität: Wie kommt der Strom in die Tiefgarage?
Elektromobilität
Wie kommt der Strom in die Tiefgarage?
  1. Elektroauto Volkswagen I.D. Crozz soll als Crossover autonom fahren
  2. Sportback Concept Audis zweiter E-tron ist ein Sportwagen
  3. Vision E Skoda will elektrisch überzeugen

Hate-Speech-Gesetz: Regierung kennt keine einzige strafbare Falschnachricht
Hate-Speech-Gesetz
Regierung kennt keine einzige strafbare Falschnachricht
  1. Neurowissenschaft Facebook erforscht Gedanken-Postings
  2. Rundumvideo Facebooks 360-Grad-Ballkamera nimmt Tiefeninformationen auf
  3. Spaces Facebook stellt Beta seiner Virtual-Reality-Welt vor

Linux auf dem Switch: Freiheit kann ganz schön kompliziert sein!
Linux auf dem Switch
Freiheit kann ganz schön kompliziert sein!
  1. Digital Ocean Cloud-Hoster löscht versehentlich Primärdatenbank
  2. Google Cloud Platform für weitere Microsoft-Produkte angepasst
  3. Marktforschung Cloud-Geschäft wächst rasant, Amazon dominiert den Markt

  1. Re: immer diese Chinesen...

    KlugKacka | 06:43

  2. Re: Chrome in Firmennetz

    Apfelbrot | 03:55

  3. Re: Eines ist Fakt

    gaym0r | 03:04

  4. Re: Ist das nun Sabotage von "Computersystemen?"

    gaym0r | 03:03

  5. Re: Ihr hab doch keine Ahnung

    jo-1 | 02:54


  1. 15:19

  2. 13:40

  3. 11:00

  4. 09:03

  5. 18:01

  6. 17:08

  7. 16:43

  8. 16:15


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel