Proxmox VE: Festplatte an VM durchreichen

Mitunter ist es notwendig oder sinnvoll, Festplatten direkt an eine virtuelle Maschine durchzureichen (pass-through) ohne den Umweg über Storage, iSCSI, etc. zu gehen.

Auch bei Proxmox VE ist das möglich. Dazu muss lediglich ein entsprechender Eintrag in der Konfigurationsdatei der virtuellen Maschine vorgenommen werden.

Zunächst muss festgestellt werden, welchen Gerätenamen (“dev/…”) die Festplatte hat. Dazu entweder per ssh oder an der Konsole den Befehl

fdisk -l

ausführen. Sobald festgestellt wurde, welche Festplatten an die virtuelle Maschine durchgereicht werden soll, mit dem Befehl

nano /etc/pve/nodes/$HOSTNAME/qemu-server/VM-ID.conf

die Konfigurationsdatei der VM bearbeiten und wie folgt erweitern:

virtio2: /dev/sdb

In diesem Beispiel wird die zweite Festplatte (“dev/sdb”) mittels zweiten VirtIO-Anschluss der VM zur Verfügung gestellt.

Damit die Änderung wirksam wird, muss die VM (Nicht nur das Gast-Betriebssystem!) neu gestartet werden.

Möchte man nicht die gesamte Festplatte, sondern nur eine Partition weiterleiten, muss die Angabe um die Nummer der Partition erweitert werden. Beispiel:

virtio2: /dev/sdb1

Persönliche Bemerkung

Eigentlich ist das nichts neues. Ich kam “nur” deshalb darauf, da eine USB-Festplatte einer VM zur Verfügung gestellt werden sollte. Da allerdings die Anbindung nicht stabil lief und die Performance obendrein noch recht schlecht war, wurde der hier beschriebene Weg gegangen.

Update 29.07.2013

Leider muss ich schreiben, das die Sache, zumindest in Verbindung mit USB-Festplatten, auf die Dauer nicht stabil ist.

Update 11.11.2013

Die letzten Wochen (oder Monate) funktionierte das zumindest bei unserem Test-System ohne Probleme. Möglicherweise liegt das an der neueren Version von Proxmox VE.

14 Kommentare

  1. Matthias König

    Hallo,

    klingt interessant, aber was für ein Vorteil ergibt sich daraus eine USB Festplatte direkt an einer VM anzubinden ???
    Ist USB-Passthrough zur VM langsamer ???

    Gruß
    Matthias König

  2. andy

    Hallo Matthias,

    unter “Persönliche Bemerkung” und den darauffolgenden Updates sind deine Fragen bereits geklärt worden.
    Ein solcher Weg kann interessant sein, wenn z.B. Backups auf USB-Festplatten erstellt werden oder
    Daten ausgelagert werden sollen, auf die nicht so oft zugegriffen werden soll und Performance keine Rolle spielt.

    Zum Dritten geht es manchmal auch nur schlicht um die Machbarkeit und die Erfahrung aus einem Test.

  3. Matthias König

    Hallo Andy,

    ok, der letzte Abschnitt ist ein Argument. 😉

    Für solche Situationen nutze ich die USB-Platte direkt an der VM und greife mit Samba,FTP oder NFS drauf zu. Schnell und stabil.

    Gruß
    Matthias

  4. andy

    So geht’s natürlich auch.
    Da ich seinerzeit möglichst wenige zusätzliche Pakete installieren wollte, hab’ ich’s bei den Bordmitteln belassen.

  5. Christofer

    Hallo, also ich habe probleme mit peformance

    Meine systemplatte ist eine SSD wo auch die VM´s installiert werden.
    Dann habe ich eine Datenplatte (HDD) dazugehängt, natürlich intern mit SATA.
    Jetzt mache ich das so, die VM wird auf der SSD installiert und ich hänge dann virtuelle HDD dran da nehme ich von der HDD einfach und erstelle eine Virtuelle HDD drauf die ich dann der VM zuweise. Doch wenn ich jetzt größere Mengen kopiere hängt er immer wieder. Das sieht dann so aus: Er kopiert 10-20 sekunden und dann steht es ca. 10 seknden und dann ladet er wieder weiter. Und das geht die ganze zeit schon. Ich habe schon versucht mit Wirte throught usw. no Cache ……. bringt alles nix. SSD und HDD sind komplett neu. Ich danke für deine Hilfe

  6. andy

    Wenn die Cache Settings nicht geändert haben, könnte man noch in die Logs von Host und Gast schauen. Evtl. mal Testprogramme laufen lassen.
    Die Frage ist wahrscheinlich im Proxmox-Forum besser aufgehoben:

    https://forum.proxmox.com/

  7. Benjamin Emmert

    Hallo, ich habe es ausprobiert…

    Gehen wir von dem Fall aus (den ich habe…)

    Proxmox–> darauf ein Winserver2012R2—>Datenbackup-Platte (die schon in dem alten Server war) durchreichen.

    Mit der Configerweiterung: virtio2: /dev/sdb funktioniert nicht….
    jedoch mit der Configerweiterung: ide0: /dev/sdb
    da läuft es stabil…

  8. andy

    Klingt danach, als ob es davon abhängt, wie die virtuellen Festplatten in der VM (IDE, VirtIO, …) konfiguriert sind.

  9. Benjamin Emmert

    Man muss halt mal was ausprobieren… normal an einem Testsystem und nicht an nem Kundengerät^^ aber die liebe Zeit… ich bin froh das es nun klappt…

    Vorteil ist halt, die Platte muss nicht formatiert werden und ich kann die von dem einen Server in einen vielleicht neueren übernehmen… (Hardwaretechnisch neuen Server) ohne etwas zu kopieren oder formatieren… es ist 8:53Uhr… *schnarch* ich denk Ihr wisst was ich meine… 😉

  10. Joscha Müller

    Heist das wenn das Gast System geknackt ist man sich einfach HDDs von Proxmox einhängen kann ? Ohne das bei ProxmoxVE zu bestätigen?

  11. andy

    Nein, da ja nur die VM auf die durchgereichte Festplatte zugreifen kann.

  12. Joscha

    Danke für die schnelle Antwort, Der Eintrag wird in der .conf der VM gemacht?? Oder habe ich das falsch verstanden ?
    Grüße
    J. Müller

  13. andy

    Genau, die Konfigurationsdatei der VM muss geändert werden. Ich weiß allerdings nicht, ob das heute so noch funktioniert. Der Beitrag ist ja schon ein paar Jahre alt und PVE hat sich mächtig weiterentwickelt.

  14. Matthias König

    bis zur 4.4 kann ich das noch bestätigen das es läuft, sollte aber auch bei aktuellen Versionen laufen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

© 2024 Andy's Blog

Theme von Anders NorénHoch ↑