Software Raid auf Host oder in VM ?

MrWeb

New Member
Jan 25, 2025
8
1
3
Hallo,
ich hätte da mal eine allgemeine Konzeptfrage, und würde dazu gerne wissen,
was denn die bessere Variante ist und warum.

Ich habe ein Software Raid (mdraid) und die Frage ist nun, wo ist es effizienter zu managen ?

Ich hätte jetzt gedacht auf dem Host und ich gebe das md Device dann als Disk an die VM.
Nachteil, ich kann in der VM keine Smart Daten lesen, Raid Status erkennen etc.
(Die VM wird ein OpenMediafault mit diesem Raid)

Oder eben die einzelnen Platten an die VM durchgeben.
Da frage ich mich, woher weiß der Host beim boot, dass er das ja vorhandene mdraid nicht einfach starten soll ?
Gibt es da dann eine Sperre auf dem Host oder wie läuft das ?

Ich wäre für eine kurze Erläuterung sehr dankbar.

Grüße,
MrWeb
 
Nachteil, ich kann in der VM keine Smart Daten lesen, Raid Status erkennen etc.
(Die VM wird ein OpenMediafault mit diesem Raid)
Damit hast du dir die Frage auch schon beantwortet. Platten, die keine Funktion fürs "Hostlevel" haben, sollten möglichst nahe in die VM verlagert werden. Ich z.B. reiche einen kompletten Controller (wo dann die Platten dranhängen) in die jeweilige VM. Damit verschwinden Controller und die Platten komplett vom Host, in der VM habe ich da die beste Performance und habe nativen Zugriff (SMART etc.).
 
@news, zfs fällt aktuell bei mir noch raus. Möchte ich zumindest noch nicht produktiv nutzen

@mr44er ok, verstehe ich, wobei ich die Controller auf dem Host lasse (n muss, bis zu 24Platten/SSD's aktuell nur 4 für diese vm)
Also die Platten an die vm durch reichen. Aber wie wird dann beim Booten des Host's verhindert, dass der das Raid startet ?
Per default starten ja alle Systeme und auch Live Systeme alle Raids beim boot (sofern nicht explizit deaktiviert)
Wie kann ich das für diese Platten bzw. dessen Raid verhindern ?
Bzw. wie regelt ihr das ?
 
Also da ist doch ein Problem, warum sollte ich in der Virtualisierung mit Proxmox VE "HDDs" durchreichen wollen?

Einfach ein ZFS Dataset oder Volume an die LXC oder VM gereichen und es läuft.
 
Aber wie wird dann beim Booten des Host's verhindert, dass der das Raid startet ?
Ich habe auch ZFS und kenne mich mit mdraid nicht aus.
Pauschal würde ich sagen, dass wenn du z.B. zwei leere Platten in eine VM reichst (dein openmediavault) und du die darin dann als mdraid einrichtest, sollten die nicht automatisch von proxmox beim Boot als mdraid in Beschlag genommen werden.
Natürlich sieht proxmox die Platten selbst weiterhin, aber ohne Eintrag in fstab passiert da wahrscheinlich gar nichts.

Im Zweifel aber mal ausprobieren.
 
Nee.... normal schaut während des boot Prozesses von Debian schon ein Service nach Raids, und wenn er welche findet, startet er diese...
Erst danach kommt irgendwann Proxmox und startet die VM's... Früher war es ja normal, lokal ein Software Raid zu haben, auf dem die VM's liegen...
Aber soweit mal Danke für die Info.

Vielleicht hat ja jemand hier mit der Konstellation Softwareraid und durchreichen der Platten hier Erfahrung und kann mal seine
Erfahrung/Info dazu geben.

Grüße
 
Ich weiß nicht, woher du diese Info beziehst, aber ich nutze Proxmox von Anfang an.
Früher via LVM auf mdraids... schon immer. Locker 15 Jahre schon... und Probleme gab es noch nie.
Du kannst das mdraid nicht über die Proxmox Weboberfläche Verwalten, erstellen etc. das ist richtig.
Aber Proxmox kommt und kam schon immer Storage über mdraid's klar... Entweder via LVM oder
als Verzeichnis mount point.
 
Also eigentlich hat ein md raid eine homehost variable oder man setzt sie mit mdadm, wenn sie nicht mehr default ist. Dann weiß der host ob ihm das md raid gehört oder nicht, um es zu starten. Wenn man die Platten in anderen Host setzt oder den Namen des hosts ändert, muß man diese homehost variable mit mdadm umbennen, um das md raid wieder starten zu können. Eigentlich ganz einfach zu benutzen und keine Mißverständnisse zwischen pve und vm os bzgl. Eigner des md raids.
 
Last edited:
Dank für die Info. Davon habe ich tatsächlich noch nie gehört. Ich nutze Debian seit den 1990'igern.
Sobald ich Festplatten eines Raids dort dran hänge und neu starte ist das Raid aktiv. Egal wo es erstellt wurde.
Gleiches gilt bei den Live CD's, Sysetmrescuecd oder Grml... Bei denen (und ich glaube auch bei Debian) kann man
das generell via Bootparameter nodmraid deaktivieren, hab ich aber auch noch nicht getestet)
Deshalb ja die Frage... Ich ging davon aus, dass das auch schon andere versucht haben, wenn auch in den letzten Jahren zu
ZFS gewechselt wurde. Weißt du auch wo man diese Variable setzen/finden kann ? in der mdadm.conf mal nicht.
 
Entweder beim erstellen mitgeben, zB
root@pve1:# mdadm --create /dev/md/myarray --homehost=pve1 --level=1 --raid-devices=2 /dev/sdc /dev/sdd
oder ändern, wenn raid schon existiert, zB (wenn gestoppt):
root@pve1:# mdadm --assemble --update=homehost /dev/md/myarray
oder explizit zB
root@pve1:# mdadm --manage --homehost=pve1 /dev/md/myarray
kontrolliere mit zB
mdadm --scan --detail /dev/md/myarray
Eine Datei /etc/mdadm/mdadm.conf muß nicht existieren, ist aber idR sinnvoll, um festzuhalten was es an md raids gibt, weil auch Kommentare drin erlaubt.
 
Ich betreibe einen kleinen Proxmoxserver auf Consumer Hardware, einem i5 11400 und das Board ist ein MSI H510 Pro. U.a. läuft dort eine Openmediavault VM. An diese reiche ich direkt 2 SATA SSDs durch (via Serialnumber). In OMV bilden diese ein Multipledevice Mirror System. Auch wenn nicht unbedingt empfohlen, läuft stabil. Es gibt keine Probleme bei Reeboits des Hosts oder der VM.
 
Ich würde md raid auf host level machen, 1. weil es wegen der mehr Resourcen (da Maschine nicht virtualisiert mit Teil-HW-Leistung) dort schneller läuft
und 2. man die VM nicht mal auf anderen pve umziehen kann. Das md raid kann man ruckzuck exportieren und dann die vm auf anderem Host wieder laufen lassen. Ein Umbau der Platten von zB pve1 zu pve2 steht in beiden Fällen auch nichts entgegen.
 
Danke für eure Beiträge.

Hm, jetzt bin ich genauso unentschlossen wie vorher ...

Power auf dem Host ist besser, klar. Das ist eigentlich auch mein Grundgedanke,
Hardware immer auf dem Host handeln.
Aber, dass das Raid nicht auf der vm managebar ist, finde ich nicht so gut und
dass die Smart Daten nicht erreichbar sind auch nicht.
Ich kann der vm genug Power/Ram zur Verfügung stellen. Es sind 56 Kerne verfügbar...
Also da muss ich nicht sparen.
Ich muss dann wohl doch ein wenig testen. Ich habe gehofft, ihr bzw. hier gibt es Erfahrungswerte,
die mir die Entscheidung erleichtern...
Wenn ich den gleichen Datendurchsatz der Festplatten (Wird ein Softwareraid 5 Array, mit aktuell 3 20TB Festplatten
Beim jetzigen Umzug erweitere ich vlt. gleich auf 4 Festplatten. )
Das sind Exos x20 20TB Festplatten, die eigentlich so 280MB/s schaffen. Im Softwareraid 5 werde ich das wohl nicht
ganz erreichen, aber muss ich halt mal beide Varianten testen was da jeweils raus kommt.
Da die Exos in Betrieb sind, teste ich das mit 5 älteren WD Red's mit je 2TB.
Weiß jemand ein Tool um die Bandbreite(n) beim schreiben/lesen vernünftig messen zu können ?
Hat dazu vielleicht einer eine Idee ?

Wenn die Performance innerhalb der vm nicht gravierend niedriger ist als auf dem Host, wäre mir das tatsächlich lieber.

@waltar Das mit dem homehost kannte ich tatsächlich nicht und das klingt perfekt dafür, das schau ich mir an.
Bzgl. raid umziehen ob jetzt von vm oder von host finde ich jetzt beides nicht problematisch.
Die vm kann ich aus einem Backup einfach auf dem anderen System wieder herstellen und bevor man sie startet
eben die Platten in der Config wieder passend durchreichen...

So wäre im Openmediafault smart verfügbar, das raid Managemenet etc....

Was würdet ihr so einer VM für Resourcen verpassen wenn genug zur Verfügung steht ?

Grüße und einen schönen Sonntag euch allen :-)
 
Last edited:
Aber, dass das Raid nicht auf der vm managebar ist, finde ich nicht so gut und
dass die Smart Daten nicht erreichbar sind auch nicht
Klar kann eine vm das. Smart Checks laufen und liest man idR per cronjob aus, von dem man dann ggf. Mails bekommt, ist doch nun wirklich egal von wo die mails herkommen und wo man sich ggf. mal einloggt, um bei Problemen sich die Platte genauer anzusehen. :)
 
Sorry waltar, da hast du mich missverstanden.
ich meine, wenn das Raid auf dem Host gemanaged wird, dann sieht die vm nur das Volume und hat keinen Zugriff auf smart oder eben das
raid Management.
Ja, prinzipiell ist es egal, das stimmt schon. Aber gerade bei Openmediafault ist das alles mit im System und er meckert sogar, wenn er daten
wie smart etc nicht finden/erreichen kann. Von daher wäre es schon schöner/sauberer, wenn die Platten in der vm wären.
Mein Hauptproblem/Angst war immer, dass jede Livecd, jedes Debian OS das Raid bei einem Boot immer direkt startet und das dann mit der
vm knallt.... Mit Deinem Tipp des homehost hast du mir da die Angst genommen. Ich will das zwar auch nochmal testen, vor allem bei einer
Live/Rescue wie bspw. grml, oder systemrescuecd, so dass die das raid auch in ruhe lassen, dann wäre das echt klasse.
 
  • Like
Reactions: waltar

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!