Eine Grafikkarte an eine virtuelle Maschine geben: das eigentliche Hindernis ist nicht der Treiber, sondern die Gruppe

Hardware direkt an eine Maschine zu geben ist möglich, doch Geräte werden nicht einzeln, sondern in Gruppen übergeben. Und die übergebene Hardware nimmt der Maschine auch die Freiheit, umzuziehen.

AtlasPVE ·

Dieser Eintrag beantwortet

  • proxmox gpu passthrough
  • proxmox iommu gruppe
  • proxmox pci passthrough funktioniert nicht
  • proxmox grafikkarte an vm
  • proxmox hardware durchreichen

Eine physische Grafikkarte, einen Plattencontroller oder eine Aufnahmekarte direkt an eine virtuelle Maschine zu geben, ist möglich. Das Versprechen ist echt: die Maschine nutzt diese Hardware, als wäre sie ihre eigene.

Doch woran die Leute hängen bleiben, ist nicht der Treiber. Es ist die Gruppe.

Geräte werden nicht einzeln übergeben

Deine Hauptplatine entscheidet, welche Geräte voneinander getrennt werden können, und sortiert sie in Gruppen. Ein einzelnes Gerät aus einer Gruppe kannst du nicht übergeben; du übergibst die ganze Gruppe.

Die Folge: liegt deine Grafikkarte in derselben Gruppe wie der Plattencontroller, heißt die Grafikkarte zu geben, auch den Plattencontroller zu geben. Das geht meist nicht, denn dort hängt die eigene Platte des Servers.

Die Frage beim Hardwarekauf lautet daher nicht "läuft diese Grafikkarte", sondern "liegt sie auf dieser Hauptplatine in einer eigenen Gruppe". Die Gruppierung ist eine Eigenschaft der Hauptplatine, nicht der Karte. Dieselbe Karte lässt sich auf einer Platine sauber durchreichen und auf einer anderen gar nicht.

Das Gerät verschwindet vom Server

Die zweite Überraschung: hast du ein Gerät einmal an eine virtuelle Maschine gegeben, kann der Server es nicht mehr nutzen. Es ist keine Leihgabe, es ist eine Übergabe.

Die häufigste Fassung: auf einer Maschine mit nur einer Grafikkarte gibst du die Karte an eine virtuelle Maschine, und der eigene Bildschirm des Servers geht mit. Wenn du dich fernverbinden kannst, ist das in Ordnung, doch bei einer Panne hast du nicht mehr die Möglichkeit, Tastatur und Monitor anzustecken und nachzusehen.

Durchgereichte Hardware nimmt auch die Umzugsfreiheit

Für alle mit einem Cluster ist das der wichtigste Punkt: eine Maschine mit Hardwaredurchreichung kann meist nicht auf einen anderen Knoten umziehen.

Der Grund ist einfach: die übergebene Karte steckt in dieser physischen Maschine. Selbst wenn der andere Knoten dasselbe Modell hat, ist es nicht dasselbe Gerät.

Das Sicherheitsnetz, das dir das Cluster gibt, deckt diese Maschine also nicht ab. Sie kann in Wartungsnächten nicht verschoben werden und bei einem Ausfall nicht auf einem anderen Knoten hochkommen. Richtest du Durchreichung ein, wählst du in Wahrheit dies: Beweglichkeit gegen Leistung und direkten Hardwarezugriff.

Auch der Speicher ist nicht mehr beweglich

Die vierte und am wenigsten bekannte Einschränkung: durchgereichte Hardware schreibt unmittelbar in den Speicher der virtuellen Maschine. Damit das funktioniert, muss dieser Speicher an seinem Platz bleiben.

Der Mechanismus jedoch, der Speicher dehnt und zurückholt, verschiebt Speicher genau hin und her. Sind beide auf derselben Maschine eingeschaltet, gibt es auf der Treiberseite Ärger.

In der Praxis lautet die Regel: auf einer Maschine mit Hardwaredurchreichung den Speicher nicht dehnen, sondern fest zuweisen. Das bedeutet, dass diese Maschine am Spiel des "mehr versprechen, als man hat" aus dem vorigen Artikel nicht teilnehmen kann. Der ihr versprochene Speicher ist wirklich reserviert.

Der Entscheidungssatz

Durchreichung ist kein Gewinn, sondern ein Tausch. Was du gewinnst: echte Hardwaregeschwindigkeit und Zugang zu allen Fähigkeiten dieser Hardware. Was du verlierst: Übertragbarkeit, die Nutzung des Geräts durch den Server und Speicherbeweglichkeit.

Machst du diesen Tausch bewusst, ist es das richtige Werkzeug. Hast du ihn unbemerkt gemacht, erfährst du es in der ersten Wartungsnacht oder beim ersten Ausfall.

Was Atlas tut

Wenn Atlas die PCI-Geräte des Servers liest, liest es auch, in welcher Trennungsgruppe jedes einzelne liegt. Vor der Entscheidung siehst du also die Gruppierung: steht das Gerät, das du übergeben willst, allein, oder liegt daneben etwas, das du nicht weggeben willst.

Es gibt zudem eine Regel, die genau auf den letzten Teil dieses Artikels zielt. Ist bei einer virtuellen Maschine Hardwaredurchreichung eingetragen und Speicherdehnung eingeschaltet, markiert Atlas das als Warnung: zusammen machen sie auf der Treiberseite Ärger. Die Warnung sagt nicht nur "es gibt ein Problem", sie sagt, was zu tun ist, und führt direkt zur Speichereinstellung.

Das ist ein kleines Beispiel für die allgemeine Haltung des Produkts: die Konfiguration selbst ist gültig, nichts meldet einen Fehler, doch zwei gültige Einstellungen ergeben zusammen keinen Sinn. So etwas gehört beim Einrichten gesagt, nicht während eines Ausfalls.

Quellen

Die eigene Dokumentation von Proxmox. Auf Englisch, und sie hat in dieser Sache das letzte Wort.

Verwandte Einträge

Wie sieht das in Atlas aus?

Zur Produktseite