Die erste VM unter Proxmox

Wenn ich mir “Freitag der 13.” so anschaue, so hat sich in der letzten Zeit einiges getan. Der Host mit Proxmox läuft stabil und ist so eingerichtet, dass die erste VM aufgesetzt werden kann. Auch das Durchschleifen von PCI Devices ist vorbereitet. An dieser Stelle möchte ich noch eine kleine Anmerkung abgeben. Ich habe noch ein wenig mit dem PCI Passtrough experimentiert und habe festgestellt, dass der letzte Teil des Artikels Durchgeschleift (PROXMOX & PCI Passthrough) auch weggelassen werden kann. Diesen Teil habe ich jetzt einfach mal durchgestrichen.

Die erste VM soll bei mir LinuxMCE werden. Für das Setup von LinuxMCE benötigt man eine Soundkarte, da die Einrichtung des Systems durch ein Video begleitet wird. Bevor ich also mit der Installation beginnen kann, muss auch die Soundkarte mittels PCI Passthrough an das Gastsystem durchgereicht werden. Im Grunde ist es genau der selbe Ablauf wie bei den TV Karten. Zuerst alle wichtigen Informationen sammeln (lspci, lspci -n, lspci -vv). Anschließend die Soundkarte in der Blacklist eintragen und Proxmox neu starten. Eine detaillierte Beschreibung gibt es im Artikel: Durchgeschleift (PROXMOX & PCI Passthrough).

Nachdem jetzt alles vorbereitet ist, kann es endlich los gehen:

1. Neue VM in Proxmox erstellen
Dies kann im VM Manager unter Virtual Machines auf dem Reiter Create durchgeführt werden.

2. Iso Storage auswählen
In meinem Fall ist das der zusätzlich angelegte Store (iso) auf der zweiten Platte.

3. Installationsmedium auswählen
Die Iso Datei habe ich zuvor mit Filezilla auf das Hostsystem geladen. Wie das geht habe ich unter ISO & Backup Storage unter Proxmox einrichten beschrieben.

4. Weitere Einstellungen
Weiterhin habe ich in meinem Fall 4096 MB RAM, 10 GB Plattenspeicher und als Bezeichnung linuxmce eingestellt. Die VMID habe ich bei dem vorgegebenen Wert 101 belassen. Als Gasttyp habe ich Linux 2.6 gewählt, da LinuxMCE 8.10 auf dieser Kernel Version aufbaut.

5. VM erstellen
Die VM wird durch Betätigung des create Links erstellt. Wenn alles funktioniert hat, erscheint eine Meldung analog zu dieser auf dem Bildschirm:

/usr/sbin/qm create 101 --cdrom iso:iso/LinuxMCE-8.10-final.iso --name linuxmce --vlan0 rtl8139=42:03:98:A5:6E:3C --bootdisk ide0 --ostype l26 --ide0 local:10,format=raw --memory 4096 --onboot no --sockets 1
Formatting '/var/lib/vz/images/101/vm-101-disk-1.raw', fmt=raw size=10737418240
VM 101 created

6. Übersicht öffnen
In der Übersicht (VM Manager | Virtual Machines) erscheint jetzt die soeben angelegte VM.

7. Optionale Einstellungen
Weitere Einstellungen können durch Klick auf die soeben ersetelle VM vorgenommen werden.

In meinem Fall habe ich noch eine Beschreibung hinzugefügt. Unter dem Reiter Hardware können noch weitere Festplatten, Netzwerkkarten und CD Rom Laufwerke hinzugefügt werden.

8. Weitere Optionen
Unter Optionen können die Bootreihenfolge und einige weitere Einstellungen vorgenommen werden. Ich selbst habe diese Einstellungen bei den Vorgaben belassen.

Im letzten Reiter Monitor kann man, sobald die VM läuft mittels Kommandozeile die VM überwachen. Ich selbst habe mich damit noch gar nicht beschäftigt.

9. PCI Devices zuordnen
Jetzt da alle Basiseinstellungen abgeschlossen sind, ist es an der Zeit der VM einige weitere PCI Devices zuzuordnen. In meinem Fall, sind das die beiden TV Karten und die Soundkarte. Für diese Einstellungen gibt es keinen Bereich in der Weboberfläche, so dass hierfür die Console benötigt wird. Wie bereits öfter erwähnt, benutze ich dafür Putty. Die zu bearbeitende Datei ist die 101.conf (101 ist die o.g VMID), welche sich im Verzeichnis /etc/qemu-server/ befindet. Der Befehl

nano /etc/qemu-server/101.conf

öffnet die Einstellungsdatei im nano Editor.

Bei genauerer Betrachtung wird man feststellen, dass sich alle Einstellung, die zuvor im Webinterface gemacht wurden, hier wieder finden lassen. Für die zusätzlichen PCI Devices wird jetzt am Ende der Datei eine weitere Zeile eingefügt:

args: -device pci-assign,host=09:00.0 -device pci-assign,host=0b:00.0 -device pci-assign,host=00:1b.0

In meinem Fall bedeuten die einzelnen Teile folgendes:

  • -device pci-assign,host=09:00.0 – TV Karte 1
  • -device pci-assign,host=0b:00.0 – TV Karte 2
  • -device pci-assign,host=00:1b.0 – Soundkarte

Wichtig ist, args: nicht zu vergessen und mit Strg O & Strg X die Datei zu speichern und zu schließen.

10. Jetzt kommt der Moment, wo der Frosch ins Wasser rennt! ;-)
Zurück in der Weboberfläche, ist die VM zu öffnen, falls sie nicht eh schon offen ist und dann kann durch Betätigung der Start Schaltfläche die VM gestartet werden.

11. PCI Passthrough überprüfen
Im Log, welches sich unter dem Menüpunkt Logs im Reiter Syslog versteckt, sollten jetzt ähniche Einträge wie diese zu finden sein:

  • pci 0000:09:00.0: PCI INT A -> GSI 24 (level, low) -> IRQ 24
  • pci 0000:0b:00.0: PCI INT A -> GSI 28 (level, low) -> IRQ 28
  • pci 0000:00:1b.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22

12. Open VNC console
Mit diesem Link, kann eine VNC Console geöffnet werden, mit der man dann Zugriff auf das Gastsystem hat. In meinem Fall ist das LinuxMCE, aber dazu später mehr.

13. Kaffeezeit!
Viel Spass mit Koffein & Proxmox!

An dieser Stelle noch ein Dankeschön an Philipp für seine E-Mail. Es ist schön zu wissen, dass es Leute gibt, die das hier interssiert und die auch ein wenig von meinen Ausführungen profitieren. Ich hoffe, dieser Artikel ist genau das, was Du gesucht hast.

So far…

15 Comments to “Die erste VM unter Proxmox”

  1. philipp 10 November 2011 at 10:03 #

    echt toll gelungen Artikel – obwohl ich mich in den letzten Wochen sehr intensiv mit dem Thema auseinandergesetzt habe, sind hier immer wieder Dinge zu finden, die ich bis dato in keiner Doku gefunden habe. – Vielen Dank dafür!

    Leider kann ich die VM im Moment nicht starten – bei “qm start 102″ tritt folgender Fehler auf:
    No IOMMU found. Unable to assign device “(null)”
    kvm: -device pci-assign,host=04:01.0: Device ‘pci-assign’ could not be initialized
    start failed: command ‘/usr/bin/kvm -monitor unix:/var/run/qemu-server/102.mon,server,nowait -vnc unix:/var/run/qemu-server/102.vnc,password -pidfile /var/run/qemu-server/102.pid -daemonize -usbdevice tablet -name NAS -smp sockets=1,cores=1 -nodefaults -boot menu=on -vga cirrus -tdf -k de -drive file=/media/iso/WINDOWS7_DE_DVD.iso,if=ide,index=2,media=cdrom -drive file=/var/lib/vz/images/102/vm-102-disk-1.raw,if=virtio,index=0,cache=none,boot=on -m 2000 -netdev type=tap,id=vlan0d0,ifname=tap102i0d0,script=/var/lib/qemu-server/bridge-vlan -device rtl8139,romfile=,mac=16:8E:06:73:55:58,netdev=vlan0d0 -device pci-assign,host=04:01.0′ failed with exit code 1

    Ich habe aber alle Schritte 1:1 durchgeführt und auch mit dmesg wird mir “Intel-IOMMU = enabled” angezeigt.

    Vielleicht hat jemand noch einen Tipp dazu?

    lg
    Philipp

  2. jan 10 November 2011 at 14:18 #

    Hallo Philipp,

    hast Du vt-d im Bios aktiviert?
    ist Deine CPU ein Intel oder ein AMD Chip?

    Gruss Jan

  3. philipp 10 November 2011 at 15:26 #

    es ist ein Intel-Chip.
    Ich habe sowohl Intel Virtualisation Technology als auch Intel VT-d im BIOS aktiviert!
    Mein Chipset (Q67) sollte das auch unterstützen.

    • philipp 10 November 2011 at 15:30 #

      mein Prozessor ist ein i5-2400, lt. Intel-HP unterstützt der das auch.

      THX,
      Philipp

      • jan 10 November 2011 at 20:50 #

        Tritt der Fehler auch bei anderen PCI Devices auf oder nur bei diesem?

      • jan 10 November 2011 at 21:07 #

        Poste doch mal den Output von

        dmesg | egrep (DMAR|IOMMU)

        • philipp 10 November 2011 at 23:01 #

          leider hab ich im Moment nur ein PCI Device zur Verfügung. – was mir seltsam erscheint – bei der Fehlermeldung:
          No IOMMU found. Unable to assign device “(null)”
          Warum zeigt er hier “null” an?

          proxmox:~# dmesg | egrep “(DMAR|IOMMU)”
          Intel-IOMMU: enabled

        • philipp 10 November 2011 at 23:11 #

          Was ich allerdings am seltsamsten finde:
          Ich drehe Intel VT-d und Intel Virt. Tech. am Motherboard (danach 20sec. stromlos) und ich bekomme trotzdem die Meldung:
          Intel-IOMMU: enabled

          ?????
          Details, was ich schon alles gemacht habe sind hier zu finden:
          http://forum.proxmox.com/threads/7417-PCI-passthrough-for-TV-card?highlight=pci

  4. jan 12 November 2011 at 18:04 #

    Hi Philipp, also ich bin mir nicht sicher, aber es sieht irgendwie danach aus, dass Deine Hardware das Ganze nicht wirklich unterstützt. Kann es sein, dass Du vt-x oder etwas in der Art und nicht vt-d aktiviert hast? Es muss zwingend vt-d aktiviert sein.

    Was auch sein kann, dass Deine Hardware nur in der grauen Theorie PCI Passthrough unterstützt. Es soll wohl einige Boards geben die diverse Bugs haben und das ganze nicht wirklich unterstützen. Aber das habe ich auch nur mal irgendwo gelesen. Ob das wirklich so ist, weiß ich nicht.

    Gruss Jan

  5. philipp 16 November 2011 at 00:00 #

    ja, ich bin mir sicher, das VT-d im BIOS einzustellen ist. – hab das Mainboard (P8Q67-M DO) danach ausgesucht (Q67-Chipset).

    aber ich gehe mittlerweile auch davon aus, dass mein Mainboard/CPU das nicht unterstützen, warum aber dann alles darauf hindeutet (dmesg, vmx bei /proc/cpuinfo) frage ich mich schon.

    Gibt es da nichts wo ich echt die Hardware nach dieser Funktionalität abfragen kann?

    • jan 16 November 2011 at 09:16 #

      Hallo Philipp,

      es scheint so, als würde das Board vt-d nicht unterstützen, bzw. es gibt andere User, die ein ähnliches Problem haben wie Du.

      https://vip.asus.com/forum/view.aspx?id=20110815233238327&board_id=1&model=P8Q67-M+DO%2fTPM&page=1&SLanguage=en-us

      Evt. gibt es ein neueres Bios, das Du aufspielen kannst. Außerdem ist es wohl so, das ASUS keine Linux Installationen unterstützt. Warum auch immer.

      Am besten Du wendest Dich mal an den ASUS Support und fragst gezielt nach, ob und wenn ja wie das Board vt-d unterstützt. Vom Chip her sollte es funktionieren, aber wer weiß, ob ASUS das auch bei diesem Board unterstützt.

      Gruss Jan

      • philipp 18 November 2011 at 17:59 #

        ja, das ist wohl das beste – hab jetzt einen Call bei ASUS aufgemacht.

        • jan 22 November 2011 at 09:19 #

          Hi Philipp, hat der Call bei ASUS schon was ergeben?


Leave a Reply

Pings: “Die erste VM unter Proxmox”

  1. [...] meinem meiner letzten Artikel habe ich ja bereits beschrieben, wie man unter Proxmox eine VM erstellt und welche Einstellungen [...]

  2. [...] und den Import eines Iso Images in Proxmox habe ich bereits im Artikel beschrieben. Jetzt wird analog zur Version 0810 eine VM erstellt und dann kann mit der Installation von Kubuntu 1004 begonnen [...]