ceph - quota setzen?

grefabu

Well-Known Member
May 23, 2018
245
16
58
51
Moin,

ein ceph über drei nodes mit jeweils 4 1TB SSDs ergibt ja eine Speichergröße von 12TB.
Für einen Hyperconvergenten cluster sollte es doch Sinnvoll sein, höchstens 9TB zu nutzen? Damit ich z.b. einen Knoten zu Wrtungszwecken herunterfahren kann.

Setze ich dafür ein quota auf den Pool?

Grüße

Gregor
 
Da Ceph auf jeden Fall 3 mal replizieren soll/muss, sind in diesem Fall max. 85 % von 4 x 1 TB nutzbar. (also ca. 3 bis 3,4 TB, da kommt die "near full warning")

Einen Knoten für Wartung zur rebooten oder runterfahren ist kein Problem, da auch kein rebalance stattfinden kann. (da nur 3 nodes).
 
Moin,

ich muss das für mein Verständnis noch einmal hochholen:
Bei drei Knoten entspricht dass einem RAID 1 (Spiegelung) über alle drei Knoten? Also habe ich bei drei Knoten für den Cluster nur die Ressourcen entsprechend eines Knoten zur Verfügung. Wenn es mehr Knoten werden, vergrößert sich dann der mögliche Plattenplatz?

Kann ich festlegen, auf welchen OSDs welche Pools laufen? z.B. Ich habe eine Mischung aus schnelleren und langsameren SSDs oder auch HDDs. Auf die langsamen lege ich VMs an, die weniger Perfprmance benötigen.
 
Hallo grefabu,

von der groben Draufsicht entspricht das RAID1 auf drei Knoten.
Ceph spiegelt aber nicht 1:1 sondern speichert in Objekten und verteilt diese in Placement Groups. Diese Placement Groups suchen sich osd.
Aber die 1/3 Betrachtung an sich ist korrekt, wobei man bei Ceph default ab 85% bereits voll ist. Siehe Toms Beitrag.

Über Device-Classes läßt sich das mit dem langsamen und schnellerem Pool regeln:
https://ceph.io/community/new-luminous-crush-device-classes/
 
Das klingt schon mal vielversprechend. Aber man kann keine Unterscheidungen bei den Klassen in sich machen? Das man bestimmte SSDs markiert, die Klasse manuell setzt z.B. SSD1 SSD2 um festzulegen dass bestimmte Pools nur auf einer bestimmten Klasse läuft?