Videokártya átadása virtuális gépnek: az igazi akadály nem az illesztőprogram, hanem a csoport
A hardver közvetlen átadása egy gépnek lehetséges, de az eszközök csoportonként kerülnek át, nem egyesével. Az átadott hardver ráadásul elveszi a gép mozgásszabadságát is.
AtlasPVE ·
A bejegyzés ezekre válaszol
- proxmox gpu passthrough
- proxmox iommu csoport
- proxmox pci passthrough nem működik
- proxmox videokártya átadása virtuális gépnek
- proxmox hardver passthrough
Fizikai videokártya, lemezvezérlő vagy videorögzítő kártya közvetlen átadása egy virtuális gépnek lehetséges. Az ígéret valós: a gép úgy használja azt a hardvert, mintha a sajátja lenne.
Az elakadás oka azonban nem az illesztőprogram, hanem a csoport.
Az eszközök nem egyesével kerülnek át
Az alaplap dönti el, mely eszközök különíthetők el egymástól, és csoportokba sorolja őket. Egy csoportból nem lehet egyetlen eszközt átadni: a teljes csoport kerül át.
A következmény: ha a videokártya ugyanabban a csoportban van, mint a lemezvezérlő, akkor a videokártya átadása a lemezvezérlő átadását is jelenti. Ez rendszerint nem járható út, mert a szerver saját lemeze is ott van.
Ezért hardvervásárláskor nem az a kérdés, hogy "működni fog-e ez a videokártya", hanem az, hogy "saját csoportban van-e ezen az alaplapon". A csoportosítás az alaplap tulajdonsága, nem a kártyáé. Ugyanaz a kártya az egyik alaplapon tisztán átadható, a másikon egyáltalán nem.
Az eszköz eltűnik a szerverről
A második meglepetés: ha egy eszköz átkerül egy virtuális géphez, a szerver többé nem tudja használni. Ez nem kölcsönadás, hanem átadás.
A leggyakoribb eset: egyetlen videokártyás gépen a kártya átkerül egy virtuális géphez, és vele megy a szerver saját képernyője is. Távoli kapcsolattal ez még rendben van, de ha valami elromlik, már nincs meg a lehetőség, hogy billentyűzet és monitor csatlakoztatásával lehessen ránézni.
Az átadott hardver a mozgásszabadságot is elveszi
Aki fürtöt épített, annak ez a legfontosabb pont: a hardver passthrough-val működő gép rendszerint nem költöztethető át másik csomópontra.
Az ok egyszerű: az átadott kártya ebben a fizikai gépben van. Ha a másik csomópontban pontosan ugyanaz a modell ül is, az nem ugyanaz az eszköz.
A fürt által nyújtott biztonsági háló tehát arra a gépre nem terjed ki. Karbantartási éjszakákon nem költöztethető, hiba esetén pedig nem indul el másik csomóponton. A passthrough beállításakor valójában erről születik döntés: a mozgathatóság feladása a teljesítményért és a közvetlen hardverelérésért cserébe.
A memória sem rugalmas többé
A negyedik és legkevésbé ismert korlát: az átadott hardver közvetlenül a virtuális gép memóriájába ír. Ehhez a memóriának a helyén kell maradnia.
A memóriát nyújtó és visszavevő mechanizmus viszont éppen az, amelyik mozgatja a memóriát. Ha mindkettő be van kapcsolva ugyanazon a gépen, az illesztőprogram oldalán jelentkezik a baj.
A gyakorlati szabály: hardver passthrough-val működő gépen a memóriát nem nyújtani kell, hanem fix mennyiséget adni neki. Ez azt jelenti, hogy az a gép nem szállhat be az előző cikkben leírt "többet ígérni, mint amennyi van" játékba. A neki ígért memória valóban félre van téve.
A döntés mondata
A passthrough nem nyereség, hanem csere. A nyereség: valódi hardversebesség és hozzáférés az adott hardver minden képességéhez. A veszteség: a hordozhatóság, az eszköz szerver általi használata és a memória rugalmassága.
Tudatos csere esetén ez a megfelelő eszköz. Ha a csere észrevétlenül történt, az első karbantartási éjszakán vagy az első hibánál derül ki.
Mit tesz az Atlas
Amikor az Atlas beolvassa a szerver PCI eszközeit, azt is beolvassa, melyik elkülönítési csoportban van mindegyik. Így a döntés előtt látszik a csoportosítás: az átadásra szánt eszköz egyedül van, vagy van mellette valami, ami nem adható át.
Van egy szabály is, amely pontosan a cikk utolsó részére illeszkedik. Ha egy virtuális gépen hardver passthrough van beállítva és a memórianyújtás is be van kapcsolva, az Atlas figyelmeztetéssel jelöli meg: együtt bajt okoznak az illesztőprogram oldalán. A figyelmeztetés nem csupán annyit mond, hogy "van egy probléma", hanem azt is megmondja, mit kell tenni, és egyenesen a memóriabeállításhoz vezet.
Ez kis példa a termék általános hozzáállására: a beállítás önmagában érvényes, semmi nem hibázik, két érvényes beállításnak együtt mégsincs értelme. Az ilyesmit a beállítás közben kell kimondani, nem a hiba idején.
Források
A Proxmox saját dokumentációja. Angol nyelvű, és ebben a kérdésben az övé az utolsó szó.