Proxmox 3 Node Cluster 40GB Ceph Full Mesh Network

timmen

Member
May 8, 2023
17
1
8
Hallo ich stelle mir momentan die Frage warum unser direkt verkabeltes Cluster mir mit iper3 nicht die vollen 40GB Netzwerk ausnutzt sondern nur 19.9-20 Ich habe das Netzwerk nach der Der Anleitung von Proxmox "Routet with Fallback" eingerichtet das läuft auch soweit, nur macht mich das halt stutzig das er mir "nur" diese Werte liefert?

Connecting to host 10.15.15.51, port 5205
[ 5] local 10.15.15.50 port 59840 connected to 10.15.15.51 port 5205
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 2.72 GBytes 23.3 Gbits/sec 4788 1.09 MBytes
[ 5] 1.00-2.00 sec 1.86 GBytes 16.0 Gbits/sec 50 1.17 MBytes
[ 5] 2.00-3.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 3.00-4.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 4.00-5.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 5.00-6.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 6.00-7.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 7.00-8.00 sec 2.18 GBytes 18.7 Gbits/sec 0 1.17 MBytes
[ 5] 8.00-9.00 sec 2.18 GBytes 18.8 Gbits/sec 0 1.17 MBytes
[ 5] 9.00-10.00 sec 2.18 GBytes 18.8 Gbits/sec 0 1.17 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 22.0 GBytes 18.9 Gbits/sec 4838 sender
[ 5] 0.00-10.00 sec 22.0 GBytes 18.9 Gbits/sec receiver

habe ich irgendwas vergessen einzustellen?

Hat da evtl. jemand eine Idee?


Grüße

Tim
 
Ich weiß nicht wie du dein Netzwerk genau aufgebaut hast, aber die Performance klingt nach Round Robin, wo man immer nur die Hälfte der Bandbreite heraus bekommt.
Außerdem bekommst du mit einer vmbr in der Regel nicht mehr als 36GBit heraus. Das ist aber eine generelle Limitierung der Linux Bridge.
Für VMs reicht das in der Regel locker aus.
Für Ceph nutze ich immer den Bond direkt, aber ich baue meine Setups immer mit Switches auf, weil ich da besser Troubleshooten kann, wenn mal etwas nicht nach Plan läuft.
 
Moin,

Ich habe den Fehler gefunden die CPU lief auf iperf3 auf 100% also ein Core habe dann iperf mit 2-3 Instanzen laufen lassen und hatte dann meine 40gb. Habe das Netzwerk nun nach dem frr aus der Anleitung aufgebaut, das er im Notfall den anderen weg nimmt durch den anderen pve das läuft auch super.

Ja Switch wäre super gewesen, evtl später. Aber momentan habe ich leider keinen und es ist auch keiner geplant.

Hoffe nur das ceph mir die Leistung bringt die ich mir erhoffe . Habe irgendwie noch Bammel davor das das langsam ist.
 
Moin,

Ich habe den Fehler gefunden die CPU lief auf iperf3 auf 100% also ein Core habe dann iperf mit 2-3 Instanzen laufen lassen und hatte dann meine 40gb. Habe das Netzwerk nun nach dem frr aus der Anleitung aufgebaut, das er im Notfall den anderen weg nimmt durch den anderen pve das läuft auch super.

Ja Switch wäre super gewesen, evtl später. Aber momentan habe ich leider keinen und es ist auch keiner geplant.

Hoffe nur das ceph mir die Leistung bringt die ich mir erhoffe . Habe irgendwie noch Bammel davor das das langsam ist.
Ceph ist nicht langsam, wenn das Design stimmt.
Du brauchst schnelle SSDs wenn du Performance erwartest. Wenn du eine einzelne Anwendung hast, die sehr viel Performance braucht, kannst du als Limit die Performance einer Disk annehmen. Da du im Worst Case innerhalb einer PG arbeitest und diese dann von einer Disk für diese VM beim lesen genutzt wird. Beim schreiben müssen die Daten übers Netzwerk noch zu anderen Disks. Daher freut sich ceph auch über niedrige Latenzen. Da du bei 40G ja mit 4 x 10G Links arbeitest, hast du auch die 10G Latenzen. Wenn du es schneller brauchst, musst du auf 25G / 100G zurückgreifen. 50G und 200G/400G gibts zwar auch genug auf dem Markt, aber noch sehr teuer.
 
Ceph ist nicht langsam, wenn das Design stimmt.
Du brauchst schnelle SSDs wenn du Performance erwartest. Wenn du eine einzelne Anwendung hast, die sehr viel Performance braucht, kannst du als Limit die Performance einer Disk annehmen. Da du im Worst Case innerhalb einer PG arbeitest und diese dann von einer Disk für diese VM beim lesen genutzt wird. Beim schreiben müssen die Daten übers Netzwerk noch zu anderen Disks. Daher freut sich ceph auch über niedrige Latenzen. Da du bei 40G ja mit 4 x 10G Links arbeitest, hast du auch die 10G Latenzen. Wenn du es schneller brauchst, musst du auf 25G / 100G zurückgreifen. 50G und 200G/400G gibts zwar auch genug auf dem Markt, aber noch sehr teuer.
Okay, also

wir haben 3 PVE Nodes mit:

1x EPIC 99124
4x 32GB DDR5-4800
1x960GB Samsung NVME (OS)
4x 3,84TB Samsung SSD PM9A3 u.2 NMVe MZQL23T8HCLS-00A07
1x Intel XL710 40GB
und dann dazu halt DAC Kabel

Das dann halt 3 mal Ich weiss schneller und besser geht immer aber das sollte eigentlich reichen? dort laufen 12 VM's wie sieht das eigentlich mit SQL Servern aus laufen die auf CEPH stabil und schnell?

Wir haben noch ein physischen Windows 2022 Server den wir dann evtl auch migrieren wollten :D
 
Okay, also

wir haben 3 PVE Nodes mit:

1x EPIC 99124
4x 32GB DDR5-4800
Dein Epyc 9124 hat 12 Speicherkanäle, ich hätte da lieber 8x 16GB genommen oder gleich 12x. ;)
1x960GB Samsung NVME (OS)
Auch beim OS nutze ich gern Redundanz.
4x 3,84TB Samsung SSD PM9A3 u.2 NMVe MZQL23T8HCLS-00A07
Die Samsung NVMe sind OK.
1x Intel XL710 40GB
und dann dazu halt DAC Kabel

Das dann halt 3 mal Ich weiss schneller und besser geht immer aber das sollte eigentlich reichen? dort laufen 12 VM's wie sieht das eigentlich mit SQL Servern aus laufen die auf CEPH stabil und schnell?
12 VMs können groß oder aber auch sehr klein sein. SQL läuft natürlich stabil und die meisten Mittelständischen Unternehmen haben eh nicht so viel Last auf den SQL. Oft werden die SQL überschätzt, da im Betrieb die wichtigen Datenbankteile oft im RAM liegen, kommt da in der Regel mehr Schreibtraffic als die Leute erwarten.
Die NVMe sind auf jeden Fall schnell genug, wie schnell ihr das Netzwerk sättigt, könnt ihr nur mit dem eigenen Workload herausfinden.
Wir haben noch ein physischen Windows 2022 Server den wir dann evtl auch migrieren wollten :D
Dem sollte nicht im Wege stehen.

P.S. ich habe zuhause im Homelab auch alte 40G NICs und da ich zuhause keine Redundanz benötige, nur 1x 100G Switch. Den habe ich damals für 600€ gekauft, jetzt findet man den für 700-800€ überall auf dem Markt.
 
  • Like
Reactions: UdoB
Ja verbessern kann man denke ich immer was. das mit dem OS Raid überlege ich mir nochmal, aber nen Proxmox neu aufzusetzen ist nun kein hexenwerk.

Da es für einen kleineren Standort ist und die halt jetzt nur 2 Server haben, sollte das dann mit 3 schon gut laufen. An den anderen werde ich das mit dem Switch auch zwecks evtl- späterer erweiterbarkeit defintiv in betracht ziehen einen Switch zu nehmen. Aber wir haben momentan nur Aruba HPE Switche, und davon möchte man momentan keine 100GB Switche kaufen^^. Hast du da evtl. ne Idee was ? Also für reinen SAN Switch? oder in dem Fall CEPH.

Die VM's sind unterschiedlich manche für sehr kleine Anwendungen andere für Applications und halt dann der SQL wo halt maximal 20-30 Leute mit arbeiten ( aber auch nicht immer gleichzeitig).

Sind die Festplatten nicht gut?
 
Ja verbessern kann man denke ich immer was. das mit dem OS Raid überlege ich mir nochmal, aber nen Proxmox neu aufzusetzen ist nun kein hexenwerk.

Da es für einen kleineren Standort ist und die halt jetzt nur 2 Server haben, sollte das dann mit 3 schon gut laufen. An den anderen werde ich das mit dem Switch auch zwecks evtl- späterer erweiterbarkeit defintiv in betracht ziehen einen Switch zu nehmen. Aber wir haben momentan nur Aruba HPE Switche, und davon möchte man momentan keine 100GB Switche kaufen^^. Hast du da evtl. ne Idee was ? Also für reinen SAN Switch? oder in dem Fall CEPH.

Die VM's sind unterschiedlich manche für sehr kleine Anwendungen andere für Applications und halt dann der SQL wo halt maximal 20-30 Leute mit arbeiten ( aber auch nicht immer gleichzeitig).

Sind die Festplatten nicht gut?
Die Samsung sind guter Durchschnitt, also nix schlechtes aber es gibt natürlich auch performantere Modelle auf dem Markt. Für den Zweck mit den paar Usern vollkommen ausreichend.

Für die kleinen 3 Node Cluster nehme ich gern die MikroTik CRS504 Switches. 4x 100G reicht aus, redundante Stromversorgung und können auch MLAG.
Nur an die Bedienung muss man sich gewöhnen, aber im reinen Storageeinsatz ändert man ja nicht so oft etwas.
 
Die Samsung sind guter Durchschnitt, also nix schlechtes aber es gibt natürlich auch performantere Modelle auf dem Markt. Für den Zweck mit den paar Usern vollkommen ausreichend.

Für die kleinen 3 Node Cluster nehme ich gern die MikroTik CRS504 Switches. 4x 100G reicht aus, redundante Stromversorgung und können auch MLAG.
Nur an die Bedienung muss man sich gewöhnen, aber im reinen Storageeinsatz ändert man ja nicht so oft etwas.

Hättest du denn da evtl eine Empfehlung für Festplatten? Das ist nicht so meine Welt aber für später könnte man sich das ja schonmal gut merken :), Marke wäre dabei egal. Hauptsache Leistung und nun nicht utopisch teuer :D oder halt auch mal das High End teuer als NetApp kann es ja eigentlich nicht werden :p
 
Hättest du denn da evtl eine Empfehlung für Festplatten? Das ist nicht so meine Welt aber für später könnte man sich das ja schonmal gut merken :), Marke wäre dabei egal. Hauptsache Leistung und nun nicht utopisch teuer :D oder halt auch mal das High End teuer als NetApp kann es ja eigentlich nicht werden :p
Bei der Größe der Server würde ich auch zu Samsung oder Kioxia (früher Toshiba) greifen.
Wenn du ein PCIe5 System hast, da geht Preis/Leistung derzeit nix über die Huawei NVMe.

Das OK von mir war nicht abwertend gemeint, sondern wirklich OK. Es gibt einige Leute die SATA SSDs als Top ansehen. :rolleyes:
 
Achso, dann bin ich ja beruhigt das das nicht abwerten war :P.
Ne für den Standort sollte das alles reichen. für die anderen jedoch eher nicht. Da wird dann definitiv mehr power benötigt. Ich schaue mir mal den Switch an weißt du ob man den Stacken kann? zwecks Ausfall Sicherheit?

Sata SSD, für zuhause mag das ja reichen. Aber nicht bei sowas. Da haette ich viel zu viel angst vor das das am "Anfang" gut läuft und dann die performance komplett einbricht :D
 
Achso, dann bin ich ja beruhigt das das nicht abwerten war :P.
Ne für den Standort sollte das alles reichen. für die anderen jedoch eher nicht. Da wird dann definitiv mehr power benötigt. Ich schaue mir mal den Switch an weißt du ob man den Stacken kann? zwecks Ausfall Sicherheit?
Nein, stacken ist auch nicht so gut im Storage Bereich. Deshalb nutzt man MLAG oder die properitären Ableger.
MLAG können die MikroTik.
Sata SSD, für zuhause mag das ja reichen. Aber nicht bei sowas. Da haette ich viel zu viel angst vor das das am "Anfang" gut läuft und dann die performance komplett einbricht :D
Nee, mit SATA ist das auch am Anfang genauso langsam, ;)
 
Nein, stacken ist auch nicht so gut im Storage Bereich. Deshalb nutzt man MLAG oder die properitären Ableger.
MLAG können die MikroTik.
Meinte nicht direkt stacken eher so für Ausfallsicherheit, atm haben wir immer 2 HPE SAN Switche.
 
Meinte nicht direkt stacken eher so für Ausfallsicherheit, atm haben wir immer 2 HPE SAN Switche.
Ich nutze für die großem Cluster gern fs.com Switches mit 32/64 x 100G oder MikroTik mit bis zu 16x 100G. Beides immer mit MLAG als Ausfallsicherheit.
 
Ich muss das Thema noch einmal aufgreifen. Wir sind gerade dabei ein wenig umzusatteln. das heisst wir werden wohl aus unseren 4 Datacentern, 1 Zentrales Datacenter welches bei einem Provider wo wir jeweils zu 4 verschiedenen Standorten redundante 10GB Netzwerkanbindung haben werden lokalisiert.


Das Ceph oben läuft bisher tadelos was mich auch super freut. Nun da aber die überlegung ist die 4 Standorte zusammenzulegen und diese haben ungefair 130 VM's diverse DB Oracle Windows etc. Ich möchte da auf jedenfall das Netzwerk wie du schon sagtest dann auf Mirkotik 16x 100GB Switche im MLAG ausbauen ( auch wenn ich diese Switche überhaupt nicht kenne), aber eine alternative von HP/Aruba ist nicht wirklich bezahlbar.

Aktuell haben wir an jedem Standort ein vMware Cluster mit 3 ESXi welche jeweils 2x 24 CPU haben. Diese Server sind zwar EPIC Server, aber sind nicht für CEPH geeignet (Chasis etc) da normal SATA.


Ich würde sehr gerne bei Supermirco Servern bleiben und dann halt die 3 Nodes die wir schon haben dann mit in das "neue Cluster" nehmen und auch auf 100GB umrüsten.

Was wäre da nun sinnvoll um 9 ESXi zu ersetzen. (In Zukunft fallen auf jedenfall noch ein Paar Leistungstarke VM's weg da die Software in die Cloud gehen wird).

Ich hatte angedacht

3-4 neue Nodes mit jeweils

Single CPU? ( ist das besser für Ceph?) 48 Kerne
768GB Arbeitsspeicher DDR5
Sollte man das Ceph immer noch aufsplitten? Also komplett VLAN technisch getrennt? Dann müsste ich ja doof gesagt 4 NIC pro Node machen? Damit die Ausfallsicherheit der Karte gegeben ist?
und 2x10GB für Zugriff auf die VM's
und ein paar 1GB Nic's für Corosync (doppelt) und Zugriff über GUI
Als Switch dachte ich an 2x Mikrotik CRS520-4XS-16XQ-RM im Cluster.
Ich bin mir nicht ganz sicher momentan haben die 3 Proxmox Nodes 4 OSD's
die Frage ist ob man dann bei den neueren wenn es z.B. eine "2HE" Server ist auch die 8 OSD' nutzen sollte

Hätte da jemand Hardware technisch ein paar Ideen?
 
  • Like
Reactions: Johannes S
Fangen wir erst einmal bei den Basics an.
4 Standorte mit nur 10GBit dazwischen.
Willst du in jedem Standort eigene Cluster aufbauen?
Ich bin auch kein Freund, die Netzwerke zu mischen. Wenn möglich nutze ich dedizierte Switches für Ceph.
Details für die Server, können wir besprechen, wenn das grundlegende Clusterdesign steht.
 
  • Like
Reactions: Johannes S
Ja genau Ich sage mal Sternverteilung also in der Mitte die Server und dann zu jedem Standort redudante 10GB aber im Active Backup mode. So ist das Momentan auch und funktioniert bei uns auf jedenfall, nur wollen wir davon weg mehrere Datacenter zu haben. Momentan greift jeder Standort zu jedem, aber nur mit 1x 10GB dies wird dann im Zuge eines Umbaus auf 2x 10GB Pro Standort geändert.

Ich möchte ein Cluster für alle Standorte momentan haben wir 4 Standorte ( wo bei einem das Cluster was ganz oben beschrieben ist läuft). und an den anderen Standorten laufen jeweils 3 Server mit vMware, wie gesagt an einem Standort wird gewisse Software in die Cloud gehen womit an dem Standort nur noch ein paar VM laufen.

also aus 12 sollen dann 6 oder 7 werden. Soll ich die Momentane Hardware einmal aufzählen?

"Ich bin auch kein Freund, die Netzwerke zu mischen. Wenn möglich nutze ich dedizierte Switches für Ceph."

Wie meinst du das?

Für das Ceph wollte wie gesagt die Switche von Mikrotek nutzen und dann halt 100GB dann 2 Stück davon damit die falls mal einer ausfällt nicht gleich Holland in Not ist.

Aktuell auch was sich ändern würde haben wir an jedem Standort 2 Domain Controller ( wo dann natürlich einige wegfallen werden).

Datacenter I, drei ESXi mit jeweils folgender Hardware:

2x AMD EPYC 7443 24-Core Processor
16x 32GB DDR4-3200 CL22
4x 10GB Network (2x SAN, 2x VM Netzwerk)
Storage ist momentan eine alte NetApp AFF-A200 ( welche dann durch Ceph) ersetzt werden soll.

Wenn ich nun einfach mal von den Daten ausgehe welche mir das vCenter liefert was die Auslastung angeht.

CPU: 81,68GHz von 410,3GHz (Verwendet / Kapazität)
Arbeitsspeicher: 814,83 GB von 1500GB (Verwendet / Kapazität)
Speicher: 3,9TB von 5,6TB (Verwendet / Kapazität)
Datacenter II, drei ESXi mit jeweils folgender Hardware:

2x AMD EPYC 7443 24-Core Processor
16x 32GB DDR4-3200 CL22
4x 10GB Network (2x SAN, 2x VM Netzwerk)
Storage ist momentan eine alte NetApp AFF-A200 ( welche dann durch Ceph) ersetzt werden soll.

Wenn ich nun einfach mal von den Daten ausgehe welche mir das vCenter liefert was die Auslastung angeht.

CPU: 12,19GHz von 410,3GHz (Verwendet / Kapazität)
Arbeitsspeicher: 390,77 GB von 1500GB (Verwendet / Kapazität)
Speicher: 2,8TB von 5,6TB (Verwendet / Kapazität)

Wichtig hier ist das hier noch 4 VM wegfallen werden welches dann nochmal knapp 200GB Arbeitspeicher frei werden.
Datacenter III, drei ESXi mit jeweils folgender Hardware:

2x Intel Xeon E5-2650 v4 2.20GHz
24x 16GB DDR4-2133
4x 10GB Network (2x SAN, 2x VM Netzwerk)
Storage ist momentan eine alte NetApp AFF-A200 ( welche dann durch Ceph) ersetzt werden soll.

Wenn ich nun einfach mal von den Daten ausgehe welche mir das vCenter liefert was die Auslastung angeht.

CPU: 33,45GHz von 161,4GHz (Verwendet / Kapazität)
Arbeitsspeicher: 667,96 GB von 1120GB (Verwendet / Kapazität)
Speicher: 15,85TB von 22,65TB (Verwendet / Kapazität)



Also kommen wir insgesamt auf:

CPU: 118,07GHz von 982,01GHz (Verwendet / Kapazität)
Arbeitsspeicher: 1830 GB von 4120GB (Verwendet / Kapazität)
Speicher: 22,55TB von 33,95TB (Verwendet / Kapazität)





So nun habe ich erstmal genug geschrieben :D

Wie gesagt dachte da an 3x Maschinen mit jeweils 768GB RAM DDR5 macht schon Sinn denke ich?`Man könnte sonst auch den Arbeitspeicher noch auf die 3 vorhandenen aufteilen das wir somit auf allen gleichviel haben sage ich mal.
 
Last edited: