Festplatten und andere Hardware Konfiguration

christianklaus

New Member
Feb 28, 2023
6
0
1
Hallo zusammen,

ich möchte einen neuen 2HE Virtualisierungs-Server für Proxmox (und evtl. VMware als Vergleich) konfigurieren und bin Neuling sowohl was Virtualisierung, als auch Server angeht. Ich hoffe, dass wir zum Testen erstmal einen vorhandenen Server oder eine Workstation zur Verfügung kriegen, im Worst-Case müssen wir aber direkt den finalen Server bestellen.

Zur Einordnung schildere ich zunächst das Anwendungsszenario, so gut es sich bisher abschätzen lässt.

Hauptanwendung ist das Aufnehmen von Time Series Data von verschiedenen Sensoren der Prozesstechnik und der Akustik, die über SPS, Edge Computer oder direkt angebunden sind. Dafür braucht es vermutlich verschiedene VM oder Container mit unterschiedlichen Windowsversionen oder Linux. Ich schätze es werden ca. 20 bis 30 Sensoren sein, Aktoren vermutlich keine.
Außerdem wird darauf laufen Monitoring (Grafana), Firewall (OPNsense), ZFS, Datenbank (PostgreSQL oder MongoDB), eine einfache Form von einem digitalen Zwilling / Verwaltungsschale der Prozesse, Remote Access, Predictive Maintenance, Skripte zum schieben von Daten und weitere Anwendungen die sich noch ergeben.

Die Rohdaten sollen großteils direkt geschrieben werden, für die Akustikmessungen gibt es vermutlich bereits ein Pre-processing.

Der Server soll schlussendlich im Dauerbetrieb für mehrere Jahre laufen, wobei teils nur ca. 5x pro Tag halbstündige Prozesse laufen wo wirklich Daten anfallen. Ich schätze es können pro Woche ca. 2TB an Daten anfallen, im Normalfall sollen die Daten täglich wieder vom Server runter.

Wie wichtig ein ausfallsicherer Betrieb ist, ist noch zu klären.

Nun zum Server, bisher dachte ich an folgende Konfiguration:

- 2x Intel® Xeon® 16 Core Processor 4216 2.10GHZ 22MB L3 Cache TDP 100W - Silver
Gedanke: möglichst viele Kerne, damit viele VMs parallel laufen können
- Supermicro Server Board X11DPH-I - 2 x 1 Gbit/s LAN, 16 DIMMs, 10 x SATA
Gedanke: Standard, oder macht für meine Anwendung 10 Gbit LAN oder PCI-E 4.0 Sinn?
- 128GB RAM
Gedanke: Solider Start, sollte es nicht reichen kann man noch erweitern. Oder haltet ihr für maßlos unter/über geplant?

Zu den Festplatten:
Ich schätze es fallen pro Tag ca. 300GB Daten an, die eigentlich dann auch direkt wieder runter sollen ins Archiv. Notfalls sollten aber auch 2-3 Tage überbrückt werden können. Ich dachte an ein RAID-Z1 von bspw. 3x 1TB Enterprise Mixed Workload SSD (DWPD: 3). Da wären PVE, VM/LXC und die Daten drauf.
Was wäre der Vorteil, PVE und/oder VM/LXC nicht in den Pool bzw. in einen gesonderten Pool zu nehmen? Kann das RAID bei Ausfall einer Platte problemlos wieder aufgebaut werden, wenn PVE, VMs und Daten auf demselben RAID liegen?
Wenn nicht, würde ich dazu tendieren zwei getrennte RAIDs aufzubauen:
- Mirror Pool 2x 500GB SSD für PVE und VM/LXC
- Mirror Pool 2x 1TB SSD oder RAID-Z1 3x 500GB SSD für Daten. Evtl. auch RAID-Z1 3x 1TB SSD

Dazu noch die Frage, welches RAID Konzept für meine Anwendung sinnvoller ist. Ich vermute, Mirror ist sowohl im Write/Read, als auch im Rebuild schneller als RAID-Z1.

Dann wäre da noch die Frage, soll ich einfach ausschließlich SATA Platten nehmen, bspw. 960 GB Intel D3-S4520 SSD? Eine (nur ein Steckplatz) M.2 Platte zu nutzen macht ja keinen Sinn, wenn der Rest des Pools dann SATA ist. Ich bin auch nicht auf SSDs festgelegt, wenn mich jemand von HDDs überzeugt.

Ich hoffe das war jetzt halbwegs strukturiert und die relevanten Infos sind enthalten. Ich freue mich auf eure Kommentare.

Viele Grüße
Christian
 
Last edited:
Ich dachte an ein RAID-Z1 von bspw. 3x 1TB Enterprise Mixed Workload SSD (DWPD: 3). Da wären PVE, VM/LXC und die Daten drauf.
Schlechte Idee für DBs wie PostgreSQL. Bei einem Raidz1/2/3 musst du nämlich die Blocksize erhöhen, weil du sonst Padding Overhead bekommst und Kapazitätsverlust auch nicht besser als bei einem Mirror wäre. Bei ashift=12 und 3 Disks im Raidz1 müsste die Volblocksize z.B. mindestens 16K sein und die PostgreSQL DB würde dann mit 8K auf einen 16K Storage schreiben. Außerdem nicht vergessen, dass ein ZFS Pool nicht über 90% gefüllt werden sollte, weil der sonst sehr langsam wird. Für optimale Performance sollte der sogar nicht voller als 80% sein. Für 1,6TB an nutzbarer Kapazität würde ich da eher 4x 1TB SATA SSDs im Striped Mirror (Raid10) mit ashift=12 sowie Volblocksize=8K nehmen.
Wenn du meinst die DBs würden sehr viel schreiben könnte es noch Sinn machen den M.2 Slot für eine kleine (wenige GBs reichen) NVMe SSD für write-intense Workloads (ideal wäre eine Intel Optane) als SLOG zu benutzen, dass da die Sync Writes der DBs dann schneller sind und die SATA SSDs etwas entlastet werden, die sonst alle Sync Writes doppelt schreiben müssten. SLOG ist nur Cache, da ist dann auch Redundanz nicht so ganz wichtig (darf nur die SLOG SSD z.B. nicht während eines Stromasufalls defekt gehen, da nicht Daten im RAM und SLOG gleichzeitig ausfallen dürfen).
Was wäre der Vorteil, PVE und/oder VM/LXC nicht in den Pool bzw. in einen gesonderten Pool zu nehmen? Kann das RAID bei Ausfall einer Platte problemlos wieder aufgebaut werden, wenn PVE, VMs und Daten auf demselben RAID liegen?
Extra Disks für PVE macht eher Sinn, wenn du Angst hast die Disks ans Limit zu bringen (PVE hängt weil es auf Daten von den Disks warten muss, weil ein Gast den Pool komplett auslastet) oder du vor hast öfter mal den VM/LXC Pool zerstören zu wollen (z.B. Raidz1/2/3 um einzelne Disks erweitern ohne Performanceeinbußen), ohne dann immer PVE neu aufsetzen zu müssen.
Ausgefalle Disks ersetzen ist kein Problem. Siehe hier Abschnitt "Replacing a failed bootable device": https://pve.proxmox.com/wiki/ZFS_on_Linux#_zfs_administration
 
Last edited:
  • Like
Reactions: christianklaus
Für optimale Performance sollte der sogar nicht voller als 80% sein. Für 1,6TB an nutzbarer Kapazität würde ich da eher 4x 1TB SATA SSDs im Striped Mirror (Raid10) mit ashift=12 sowie Volblocksize=8K nehmen.
Danke für die Erklärung, dann werde ich das so vorschlagen.
Wenn du meinst die DBs würden sehr viel schreiben könnte es noch Sinn machen den M.2 Slot für eine kleine (wenige GBs reichen) NVMe SSD für write-intense Workloads (ideal wäre eine Intel Optane) als SLOG zu benutzen, dass da die Sync Writes der DBs dann schneller sind und die SATA SSDs etwas entlastet werden, die sonst alle Sync Writes doppelt schreiben müssten.
Das klingt sehr gut, versuche ich hin zu kriegen. In den Shops, in denen ich bisher konfiguriert habe, gibts sowas nicht... vielleicht auf Anfrage. Bei Thomas-Krenn gibt es bspw. eine "240 GB ATP N600Sc Superior M.2 NVMe SSD" und bei server-konfigurieren.de eine "Samsung PM9A1" mit 256 oder 512GB. Scheint mir beides nicht so geeignet zu sein. Selbst einbauen würde ich ungern, um zu vermeiden dass Garantie erlischt.

Edit: Wenn ich bei der Server-Konfiguration auswähle, dass es VMware zertifiziert sein soll, wird mir die Optane nicht angezeigt. Ich weiß, falsches Forum dafür, aber wisst ihr ob ich dann VMware nicht zum Laufen kriege, wenn ich eine Optane drin habe?
Extra Disks für PVE macht eher Sinn, wenn du Angst hast die Disks ans Limit zu bringen (PVE hängt weil es auf Daten von den Disks warten muss, weil ein Gast den Pool komplett auslastet)
Das ist bei uns durchaus ein realistisches Szenario, von daher würde es wohl Sinn machen, das PVE extra zu machen. Hier macht ein Mirror dann nur Sinn, wenn ich im Falle, dass die Festplatte ausfällt, direkt weitermachen will. Wenn es für mich OK wäre dann eine kurze Downtime zu haben, zum Festplatte wechseln und PVE vom Backup neu aufsetzen, brauche ich das nicht, richtig?
oder du vor hast öfter mal den VM/LXC Pool zerstören zu wollen (z.B. Raidz1/2/3 um einzelne Disks erweitern ohne Performanceeinbußen), ohne dann immer PVE neu aufsetzen zu müssen.
Wo sollte ich die VM/LXC hinpacken? Gut fände ich, wenn die VM/LXC zerstört werden dürfen, ohne dass ich das PVE neu aufsetzen muss. Außerdem sollen die auch kein Problem damit haben, wenn ein Gast den Datenpool komplett auslastet. Auch hier brauche ich keinen Mirror, wenn ein kurze Downtime OK wäre, oder?

-> Sollen dann die VM/LXC zu den Daten, zur PVE oder nochmal extra? Und reicht für irgendeinen der drei Anwendungsfälle eine Consumer SSD (Samsung 870 EVO)? Ich vermute nicht :)

Noch eine Frage zu Backups: Was wäre die einfachste und sinnvollste Möglichkeit, für Backups von PVE und VM/LXC, um 1. im Falle dass eine Festplatte ausfällt schnell wieder startklar zu sein oder 2. falls man etwas kaputt gemacht hat, auf einen vorherigen Stand zurückzugehen (wie Apple Time Machine)? In meinem Kopf wäre das einfachste, noch ein Mirror aus 2x 4TB HDD (bspw. 4TB WD Ultrastar - 3.5" SATA 6Gb/s 7.2K).
 
Last edited:
Das klingt sehr gut, versuche ich hin zu kriegen. In den Shops, in denen ich bisher konfiguriert habe, gibts sowas nicht... vielleicht auf Anfrage. Bei Thomas-Krenn gibt es bspw. eine "240 GB ATP N600Sc Superior M.2 NVMe SSD" und bei server-konfigurieren.de eine "Samsung PM9A1" mit 256 oder 512GB. Scheint mir beides nicht so geeignet zu sein. Selbst einbauen würde ich ungern, um zu vermeiden dass Garantie erlischt.
Ja, beides nicht toll. Intel Optane ist halt SLC NAND mit daher extrem guter Latenz und Haltbarkeit. Musst du dir z.B. mal das Datenblatt der Intel Optane P4801X 100GB angucken. Eine P4800X findest du z.B. auch Platz 1 im ZFS Benchmark Paper: https://www.proxmox.com/de/downloads/item/proxmox-ve-zfs-benchmark-2020
Das ist bei uns durchaus ein realistisches Szenario, von daher würde es wohl Sinn machen, das PVE extra zu machen. Hier macht ein Mirror dann nur Sinn, wenn ich im Falle, dass die Festplatte ausfällt, direkt weitermachen will. Wenn es für mich OK wäre dann eine kurze Downtime zu haben, zum Festplatte wechseln und PVE vom Backup neu aufsetzen, brauche ich das nicht, richtig?
PVE bietet aber noch kein Backup des PVE Hosts. Das ist noch auf der Roadmap. Und PVE ist auch keine Appliance, sondern eine vollwertige komplette Linux-Distribution, wo man ggf. noch etliches außerhalb von PVE selbst über die CLI konfigurieren muss (Postfix Mail Server für Status-E-Mails, SMB/NFS Server falls man Remote auf Daten zugreifen will, Backup-Software, USV-software, ...). Ohne Raid müsstest du schon das ganze OS neu aufsetzen, sofern du nicht über 3rd-Party-Software irgendwie die komplette Systemdisk sicherst und zurückspielst. Außerdem nicht vergessen, dass auf der VM/LXC Disk dann nur die virtuellen Disks liegen. Ohne die VM Konfig-Dateien, welche auf der System-Disk liegen, hast du keine lauffähige VM.

-> Sollen dann die VM/LXC zu den Daten, zur PVE oder nochmal extra? Und reicht für irgendeinen der drei Anwendungsfälle eine Consumer SSD (Samsung 870 EVO)? Ich vermute nicht
Für ZFS und Co sollte man generell nur Enterprise/Datacenter Grade SSDs nehmen.

Noch eine Frage zu Backups: Was wäre die einfachste und sinnvollste Möglichkeit, für Backups von PVE und VM/LXC, um 1. im Falle dass eine Festplatte ausfällt schnell wieder startklar zu sein oder 2. falls man etwas kaputt gemacht hat, auf einen vorherigen Stand zurückzugehen (wie Apple Time Machine)? In meinem Kopf wäre das einfachste, noch ein Mirror aus 2x 4TB HDD (bspw. 4TB WD Ultrastar - 3.5" SATA 6Gb/s 7.2K).
Proxmox hat noch den Proxmox Backup Server (PBS). Der wäre klar Vzdump Backups vorzuziehen, da Vzdump Backups nicht inkrementell sind und daher ewig brauchen und massig Platz verschwenden.
Ansonsten kann man sich noch 3rd-Party-Lösungen wie Veeam angucken, die sind dann aber nicht ins PVE Ökosystem integriert.
 
  • Like
Reactions: christianklaus
Ja, beides nicht toll. Intel Optane ist halt SLC NAND mit daher extrem guter Latenz und Haltbarkeit. Musst du dir z.B. mal das Datenblatt der Intel Optane P4801X 100GB angucken.
Es gibt jetzt doch eine 58 GB Intel P1600X M.2 Optane im Konfigurator, das wäre doch vielleicht was. Wenn nicht frage ich noch wegen der P4801X 100GB.

PVE bietet aber noch kein Backup des PVE Hosts. Das ist noch auf der Roadmap.
Alles klar, dann definitiv auch ein Mirror für das PVE.

Proxmox hat noch den Proxmox Backup Server (PBS). Der wäre klar Vzdump Backups vorzuziehen, da Vzdump Backups nicht inkrementell sind und daher ewig brauchen und massig Platz verschwenden.
Ansonsten kann man sich noch 3rd-Party-Lösungen wie Veeam angucken, die sind dann aber nicht ins PVE Ökosystem integriert.
PBS klingt prinzipiell gut, allerdings muss unser Server wohl zumindest zeitweise vom Internet getrennt laufen. dafür bräuchten wir dann eine Backup Lösung innerhalb des Netzwerks.

Offen wäre noch die Frage, ob die VM/LXC auf dem Pool des PVE oder der Daten, oder seperat laufen sollen.
 
Es gibt jetzt doch eine 58 GB Intel P1600X M.2 Optane im Konfigurator, das wäre doch vielleicht was.
Ja, die würde schon sehr gut als SLOG taugen. Aber nicht vergessen, dass ein SLOG wirklich nur Sync Writes cachen kann und keine Async Writes. Solltest du also vorher gucken, um deine Workload wirklich schnelle Sync Writes braucht, damit es auch Sinn macht da extra Geld für auszugeben.

Offen wäre noch die Frage, ob die VM/LXC auf dem Pool des PVE oder der Daten, oder seperat laufen sollen.
Wenn du keinen Mangel an Anschlüssen/Slots hast, dann kann man durchaus einfach zwei kleine günstige Enterprise SSDs im Mirror für PVE nehmen. PVE selbst reichen so 16-32GB, sofern du nicht noch massig zusätzliche Pakete nachinstallieren oder dort Dateien wie ISOs und Co speichern willst. Willst du dort noch Dateien speichern, dann halt entsprechend zusätzlichen Platz einplanen.
 
  • Like
Reactions: christianklaus

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!