Ceph und Proxmox Cluster mit einen Server?

1 Antwort

Jein ;)

Mal ganz grundsaetzlich ginge das schon, der Vorteil von Ceph ist ja u.A. dass du im Betrieb in die Breite skalieren kannst (auch wenn das in deinem Fall mit etwas Handarbeit verbunden waere, weil du deine CRUSH Map mindestens einmal mehr anpacken musst).

Aus den folgenden Gruenden kann ich dein Vorhaben nicht empfehlen:

Grundsaetzlich ist es erfahrungsgemaess keine gute Idee, Hypervisoren noch als Storage Nodes zu betreiben. Deine VMs (oder Container) brauchen CPU und RAM, ein Software Defined Storage (und Ceph ganz besonders) braucht auch viel CPU und RAM (natuerlich in Abhaengigkeit davon, ob du replicated oder erasure coded Pools benutzen moechtest, aber das Grundproblem bleibt).

Weiterhin braucht Ceph neben deinen 3 potenziellen OSD Nodes noch mindestens einen, fuer die von dir gewollte HA aber eigentlich 3 - weil Quorum - MON Nodes, diese sollten nicht auf den OSD Nodes mitlaufen (was sie aber muessten, wenn du alles zusammen packen moechtest).

Sofern du vorhast mit CephFS zu arbeiten, kaemen noch min. 2 MDS Nodes hinzu.

Das alleine wuerde bereits bedeuten, dass deine Nodes ziemlich fett sein muessen.

Ohne zu wissen, welche Hardware du stehen hast sei noch gesagt, dass du unbedingt gute SSDs (z.B. Intel DC 35xx, besser Intel DC 37xx) als Journal fuer deine OSDs brauchst; ohne diese wirst du schnell in eine Situation kommen in der du viel blocking IO oder viele OSD Ausfaelle im Cluster hast.

Und selbst wenn du alle diese Huerden gehen moechtest: Kleine Ceph Cluster zu betreiben endet sehr schnell im Gegenteil von dem was erreicht werden sollte.

Vom Design her ist es kein Problem 3 Node Cluster zu betreiben, aber in der Realitaet verhalten sich kleine Ceph Cluster ziemlich merkwuerdig. Mal ganz davon ab, dass du 33% deiner Daten verlierst, wenn mal ein Node ausfaellt und ohne manipulierte CRUSH Map kein Ziel mehr hast um diese fehlenden 33% zu recovern.

Sollte so ein Fall eintreten, kannst du anhand der physischen Limits auch davon ausgehen, dass dein Cluster fuer die VMs/Container entweder kaum benutzbar sein wird oder aber das Backfilling etwig und 3 Tage dauern wird.

Wenn man weiss, was man tut sind 7 OSD Nodes eine gute Zahl, ansonsten ist meine Empfehlung eher mit 11 Nodes anzufangen. Das natuerlich alles unter der Praemisse, dass die Hardware stimmig gewaehlt ist, d.h. die CPUs genuegend Dampf haben, genug RAM in den Kisten steckt, das Verhaeltnis zwischen Journal SSDs und OSDs "vernuenftig" ist.

Alternativen koennten fuer dich sein:

  • Ein kleines zentrales Storage z.B. mit DRBD zu bauen
  • Deine Proxmoxe weiterhin dediziert zu betreiben und die HA ueber die VMs/Container abzubilden