3 Knoten Cluster + Ceph / Empfehlung für Aufteilung der SSDs

s25a

Active Member
Dec 30, 2020
34
10
28
35
Hallo Zusammen,

ich bin gerade dabei mich mit Ceph zu beschäftigen und möchte für mein LAB ein 3 Knoten Cluster bauen. Mit Proxmox habe ich bereits einige Erfahrungen gesammelt. Ceph fehlt noch. Ich möchte das so Nahe wie möglich an einem Produktiv Cluster bauen um auch Performance Test etc. machen zu können. Ich habe mich in die Empfehlungen bereits etwas eingelesen allerdings sind noch ein paar Fragen offen. Wenn ihr hier Tipps habt Empfehlungen habt wäre ich sehr dankbar.

- Alle 3 Cluster haben identische Mainboards. Chipsatz ist ein W880 - Jeweils 64GB ECC Speicher sowie jeweils 2 x SFP+ Steckplätze (10Gbit) für das Ceph Netzwerk. Jeder Knoten ist jeweils an einen von 2 gestackten Core Switche verbunden. Ich habe lange überlegt hier statt der 10G auf 25G zu gehen. Auf der anderen Seite sprechen wir von einem 3 Node Cluster mit max. 4-6 Vms je Knoten und einer begrenzten Nutzerzahl. Das Upgrade wäre preislich einfach aus der Rolle gefallen. Die Option zu tauschen habe ich mir aber offen gelassen - Ich denke aber für die ersten Erfahrungen OK. Was meint ihr?

- Weiterhin bin ich mir mit der Aufteilung des Speichers unsicher. Das OS soll jeweils auf einem ZFS Spiegel liegen (Je 2 x SAMSUNG SATA PM893 - Mit denen habe ich bisher gute Erfahrungen gemacht) - zudem habe ich diese bereits aus anderen Projekten schon hier.

- Den CEPH Storage möchte ich auf U.2 NVMe Speicher legen. Je Knoten 2 Stück mit je 1,92 TB würden locker ausreichen. (Entweder Samsung oder die Kingston DC3000). Aus einem bereits angefangen Projekt habe ich 2 Stück 3,84GB Kingston DC3000 hier. Da die Dinger momentan nicht allzu günstig sind würde ich die gerne irgendwie verwenden. Dazu die Frage: Kann ich das mit anderen Größen mischen oder gibt es damit Einschränkungen die das Ganze sinnlos machen? Nochmals 4 Stück von denen zu kaufen (Also pro Knoten je 3,84GB) ist mir aktuell einfach zu teuer. Die 1,92 sind eher bezahlbar.

Gibt es noch irgendwas wichtiges zu beachten für so eine Konstellation? (Z.b mehr Speicher, irgendwelche anderen Zusätzlichen Komponenten)

Danke euch VG Alex
 
Du hast gute Technik für ein Labor. :-)

Für einen produktiven Cluster sind aus meiner Sicht aber drei Knoten zu wenig. Sobald irgendwo ein Problem auftritt, ist das ganze "degraded" - und bleibt es auch dauerhaft, zumindest wenn man die Default-Regel "drei Kopien, zwei mindestens" nutzt.

Ceph ist (unter anderem) für "self-healing" bekannt. Das setzt aber voraus, dass Redundanzen vorhanden sind. "Failure Domain" ist "host", also muss mindestens ein vierter Knoten vorhanden sein, damit das klappen kann. Falls das in einem Labor nicht so wichtig ist, kann man dieses Thema natürlich ignorieren ;-)

Ich hatte letztes Jahr versucht, mein Homelab mit Ceph auszurüsten (langsames Netz, nur MiniPC = drei Klassen unterhalb deiner Kisten), aber vielleicht sind ein paar von meinen Hinweisen dennoch interessant für dich: https://forum.proxmox.com/threads/fabu-can-i-use-ceph-in-a-_very_-small-cluster.159671/

In jedem Fall: have fun! :-)
 
Hallo Zusammen,

ich bin gerade dabei mich mit Ceph zu beschäftigen und möchte für mein LAB ein 3 Knoten Cluster bauen. Mit Proxmox habe ich bereits einige Erfahrungen gesammelt. Ceph fehlt noch. Ich möchte das so Nahe wie möglich an einem Produktiv Cluster bauen um auch Performance Test etc. machen zu können. Ich habe mich in die Empfehlungen bereits etwas eingelesen allerdings sind noch ein paar Fragen offen. Wenn ihr hier Tipps habt Empfehlungen habt wäre ich sehr dankbar.

- Alle 3 Cluster haben identische Mainboards. Chipsatz ist ein W880 - Jeweils 64GB ECC Speicher sowie jeweils 2 x SFP+ Steckplätze (10Gbit) für das Ceph Netzwerk. Jeder Knoten ist jeweils an einen von 2 gestackten Core Switche verbunden. Ich habe lange überlegt hier statt der 10G auf 25G zu gehen. Auf der anderen Seite sprechen wir von einem 3 Node Cluster mit max. 4-6 Vms je Knoten und einer begrenzten Nutzerzahl. Das Upgrade wäre preislich einfach aus der Rolle gefallen. Die Option zu tauschen habe ich mir aber offen gelassen - Ich denke aber für die ersten Erfahrungen OK. Was meint ihr?

- Weiterhin bin ich mir mit der Aufteilung des Speichers unsicher. Das OS soll jeweils auf einem ZFS Spiegel liegen (Je 2 x SAMSUNG SATA PM893 - Mit denen habe ich bisher gute Erfahrungen gemacht) - zudem habe ich diese bereits aus anderen Projekten schon hier.

- Den CEPH Storage möchte ich auf U.2 NVMe Speicher legen. Je Knoten 2 Stück mit je 1,92 TB würden locker ausreichen. (Entweder Samsung oder die Kingston DC3000). Aus einem bereits angefangen Projekt habe ich 2 Stück 3,84GB Kingston DC3000 hier. Da die Dinger momentan nicht allzu günstig sind würde ich die gerne irgendwie verwenden. Dazu die Frage: Kann ich das mit anderen Größen mischen oder gibt es damit Einschränkungen die das Ganze sinnlos machen? Nochmals 4 Stück von denen zu kaufen (Also pro Knoten je 3,84GB) ist mir aktuell einfach zu teuer. Die 1,92 sind eher bezahlbar.

Gibt es noch irgendwas wichtiges zu beachten für so eine Konstellation? (Z.b mehr Speicher, irgendwelche anderen Zusätzlichen Komponenten)

Danke euch VG Alex
Zum Spielen ein gutes Setup, aber Performancetests werden immer am 10G Limit scheitern. Du solltest immer mindestens 4 OSDs pro Node haben, außer du willst deinen Pool maximal zu 40% befüllen.
Mit 4x1,92 TB PCIe3 NVMe habe ich schon einmal bis 60 GBit peaklast gemessen. Wenn du deine NVMe wirklich testen willst brauchst du schon 2x25G im L3+4 LACP.
 
Hi s25a,
zu seiner Frage bzgl. der SSD-Größe: Die kannst du mischen. Allerdings verschenkt du quasi den zusätzlichen Platz, in dem 3-Nodecluster durch die oben bereits angesprochene Fehlerdomäne auf der Hostebene.
Die wiederum sollte das Minimum sein, für eine Simulation des produktiven Einsatzes.
Da wird jede Placement Group mit der default crush Regel (3-2) auf jeden Host geschrieben, daher brauchst du dafür auch den Platz auf den weiteren Host.

GGf. hilft dir eine weitere 3,84TB Platte, dann kannst du gleichmäßig mischen. In dem Setup wird vmtl. eh das Netzwerk der Bottleneck werden, statt eine ungleichmäßig Controllerauslastung.

BG, Lucas
 
Guten Morgen Zusammen,

Vielen Dank für eure Hilfe. Damit kann ich schonmal gut arbeiten. Abgesehen vom Netzwerk (Bottleneck) habe ich verstanden dass wohl die Anzahl der Knoten das größte Thema sind. Heißt: Aufstocken auf 4 mit entsprechender Config sollte für die Datensicherheit ein großes Plus bringen. Das Thema Anzahl der OSDs ist auch sehr relevant. 4 Stück pro Knoten sind für meine geplante Testumgebung einfach Zuviel :-) Aber für eine Produktivumgebung zu berücksichtigen (Genau wie das 25G Netzwerk mit LACP). Dann werde ich die Spielwiese mal eröffnen. Danke und Grüße Alex
 
  • Like
Reactions: Johannes S
Kurzer Nachbrenner:
4 Hosts bei Fehlerdomäne Node, kann passen.
Wenn es später mal die Fehlerdomäne Site werden soll,
können dadurch Quorumsprobleme für Corosync und das Ceph entstehen.
In deinem Testsetup vmtl. nicht relevant, aber bei der Hardwareschlacht weiß man ja nie wo die Reise hingeht. :D :)

BG, Lucas
 
Ok Danke für den Hinweis. Wegen der Fehlerdomäne: Ich hatte verstanden dass man hier Host nehmen soll. Oder hast du das gemeint? Das war der Originaltext den ich gelesen hatte: "CRUSH failure domain = host"
 
Guten Morgen Zusammen,

Vielen Dank für eure Hilfe. Damit kann ich schonmal gut arbeiten. Abgesehen vom Netzwerk (Bottleneck) habe ich verstanden dass wohl die Anzahl der Knoten das größte Thema sind. Heißt: Aufstocken auf 4 mit entsprechender Config sollte für die Datensicherheit ein großes Plus bringen. Das Thema Anzahl der OSDs ist auch sehr relevant. 4 Stück pro Knoten sind für meine geplante Testumgebung einfach Zuviel :-) Aber für eine Produktivumgebung zu berücksichtigen (Genau wie das 25G Netzwerk mit LACP). Dann werde ich die Spielwiese mal eröffnen. Danke und Grüße Alex
Wenn du heutzutage neue Server kaufst, würde ich für Ceph immer 100G einplanen. Ich baue seit Jahren keine neuen Cluster mit unter 100G für Ceph auf.
Auch wenn viele meinen, man braucht mehr als 3 Nodes, dann ist man sofort bei 5 und das sprengt oft den Rahmen kleinerer Firmen. 3 Nodes reichen locker, wenn man damit leben kann, dass während der 5 Minuten Reboot eines Nodes, kein anderer sterben darf.
 
  • Like
Reactions: Johannes S