USB passthrough forwarding USB flash drive / devices to virtual machine on VMWare ESXi

Na hostiteľovi VMWare ESXi môžete preposlať miestne zariadenie USB / jednotku flash / disk pripojené k hostiteľovi do virtuálneho počítača. Táto technológia sa nazýva USB Passthrough a je k dispozícii počnúc ESXi 4.1..

Predpokladajme, že našou úlohou je poslať externú jednotku USB 3.0 lokálne pripojenú k hostiteľovi ESXi 6.7 na virtuálny počítač. Prístup na disk je potrebný na rýchle kopírovanie údajov priamo z virtuálneho počítača na samostatnú jednotku USB.

obsah:

  • Funkcie režimu USB Passsthrough v systéme VMWare
  • USB Passsthrough: Preposlanie USB zariadenia do VM na ESXi
  • VMware PCI Passthrough (VMDirectPath): probros USB radič vo VM

Funkcie režimu USB Passsthrough v systéme VMWare

Ako ste už pochopili, režim Passthrough vám umožňuje poslať fyzické zariadenie pripojené k hostiteľovi ESXi priamo do hosťujúceho OS virtuálneho počítača. V priechodnom režime (prechod zariadenia) môžete virtuálnemu stroju poskytnúť priamy prístup k jednotke USB flash, jednotke, modemu alebo celému radiču PCI / USB..

ESXi potrebuje niekoľko základných komponentov na posielanie USB zariadení ďalej:

  • rozhodcu - samostatná služba na serveri ESXi, ktorá kontroluje pripojené fyzické zariadenia USB, je zodpovedná za smerovanie prevádzky zariadení USB medzi hostiteľom a virtuálnym počítačom, riadi blokovanie prístupu k zariadeniu (pripojené zariadenie USB môže používať iba jeden počítač VM). Rozhodca USB môže súčasne sledovať až 15 radičov USB.
  • Ovládače USB - Radič USB musí byť nainštalovaný na fyzickom hostiteľovi aj na virtuálnom počítači.

Ak chcete nainštalovať radič USB pre VM na serveri VMWare ESXi, otvorte jeho nastavenia a pridajte nové zariadenie - radič USB (Radič USB). Pri pridávaní radiča USB musíte vybrať jeho typ:

  • USB 2.0 (EHCI + UHCI) - radič s podporou zariadení USB 2.0 a USB 1.1;
  • USB 3.0 (xHCI) - podporuje rýchle zariadenia USB 3.0, vyžaduje virtuálny hardvér verzie 8 a vyššej.
Režim USB 3.0 je k dispozícii počnúc opravou vSphere 5.5. Na podporu tohto režimu musí radič xHCI pracovať v hosťujúcom OS. Podporované hosťujúce operačné systémy začínajúc operačnými systémami Windows 8.1 / Windows Server 2012 R2 a Linux s jadrom 2.6.35.

USB Passsthrough: Preposlanie USB zariadenia do VM na ESXi

V natívnom režime USB Passsthrough môžete fyzické zariadenie USB pripojiť z hostiteľa k virtuálnemu stroju VMWare.

Hlavné požiadavky a obmedzenia tejto metódy zasielania:

  • Virtuálny hardvér 7.0 alebo vyšší;
  • Priamy prístup k zariadeniu USB môžete poskytnúť iba s jedným virtuálnym počítačom;
  • Maximálny počet zariadení USB odovzdaných ďalej pre jeden virtuálny počítač je 20;
  • Sťahovanie VM z USB nie je podporované.

Po pridaní virtuálneho radiča USB pre VM môžete jednotku USB pripojenú k hostiteľovi poslať ďalej.

  1. Pridajte zariadenie do nastavení VM Hostujte zariadenie USB a kliknite na tlačidlo OK pridať;
  2. V rozbaľovacom zozname vyberte pripojené zariadenie USB, ktoré chcete pridať;
  3. Ak chcete podporovať vMotion pre VM s pripojenou fyzickou jednotkou USB, povoľte „Počas pripojenia zariadenia podporujte vMotion";
  4. Potom by sa jednotka USB mala objaviť vo hosťovskom OS virtuálneho počítača.
Existuje niekoľko obmedzení vMotion pre virtuálne počítače s pripojeným USB kľúčom:

  1. VM nemôžete vypnúť ani pozastaviť. Keď zapnete takéto zariadenie, musíte ho manuálne migrovať na hostiteľa, ku ktorému je pripojené zariadenie USB;
  2. Režim DPM nie je podporovaný, pretože vCenter môže vypnúť hostiteľa pomocou zariadenia USB kvôli šetreniu energie;
  3. Hostitelia ESXi s VM a fyzickým USB zariadením musia byť prístupní cez vmk0 cez TCP port 902.

Ak pri pridávaní nového zariadenia USB klient vSphere zaznamená, že neboli zistené žiadne zariadenia USB (Nie sú k dispozícii žiadne zariadenia USB), to znamená, že vaša jednotka USB nie je v tomto režime podporovaná spoločnosťou VMWare. Zoznam kompatibilných zariadení USB je na webovej stránke VMWare (nie je príliš veľký). Pozrite si „Zariadenia USB testované na prechod z hostiteľa ESXi na virtuálny počítač v ESXi 6.7“V článku https://kb.vmware.com/s/article/1021345.

V takom prípade môžete celý radič USB poslať ďalej na váš počítač VM od vášho hostiteľa ESXi.

VMware PCI Passthrough (VMDirectPath): probros USB radič vo VM

Ďalším, menej pohodlným spôsobom poskytovania prístupu z virtuálneho zariadenia k fyzickému zariadeniu USB je odovzdanie celého radiča USB z hostiteľa ESXi. Tento režim sa nazýva VMDirectPath. Ak ju chcete použiť, musí ju podporovať serverová čipová sada Intel Directed I / O alebo Virtualizačná technológia AMD I / O (AMD IOMMU), a tento režim je povolený v nastaveniach BIOS / UEFI.

Ak je na serveri nainštalovaný iba jeden radič USB, pri preposielaní do virtuálneho počítača nebudete môcť používať lokálne pripojené USB hostiteľské zariadenia (klávesnicu, myš). V takom prípade je lepšie na server pridať ďalší radič PCI USB.

Ak má hostiteľ niekoľko radičov USB, môžete pomocou rozhrania ESXi identifikovať pripojené zariadenie USB a číslo radiča. Zoznam zariadení USB:

lsusb -v | grep -e Bus -e iSerial

Vo výstupe príkazu musíte nájsť riadok jednotky USB, napríklad:

Bus 002 Device 003: ID 0280: a00c Toshiba America Info. Systems, Inc..

Potom pomocou čísla radiča (v tomto prípade Bus02) určte koreňový rozbočovač a jeho iSerial:

Bus 002 Zariadenie 001: ID 1d6b: 0002 Koreňový hub iSerial 1 0000: 00: 1D.0 systému Linux Foundation 3.0
Ak svoju jednotku USB nevidíte, skúste ju fyzicky pripojiť a odpojiť a v protokole vmkernel.log si prezrite, že služba USB Arbitrator zistila vašu jednotku:

tail -f /var/log/vmkernel.log | grep -i USB

2019-12-03T12: 06: 12,546Z cpu0: 33271) usb 4-2: nové SuperSpeed ​​USB zariadenie číslo 5 pomocou xhci_hcd 2019-12-03T12: 06: 12,570Z cpu0: 33271) usb 4-2: Nové USB zariadenie nájdené , idVendor = 0480, idProduct = b207 2019-12-03T12: 06: 12,570Z cpu0: 33271) usb 4-2: Nové reťazce zariadení USB: Mfr = 1, produkt = 2, sériové číslo = 3 2019-12-03T12: 06 : 12.570Z cpu0: 33271) usb 4-2: Produkt: Externé USB 3.0 2019-12-03T12: 06: 12.570Z cpu0: 33271) usb 4-2: Výrobca: TOSHIBA 2019-12-03T12: 06: 12.570Z cpu0 : 33271) usb 4-2: sériové číslo: 20180528012427F 2019-12-03T12: 06: 12,571Z cpu0: 33271) usb 4-2: Dodávateľ: 0x0480, produkt: 0xb207, revízia: 0x0315 2019-12-03T12: 06: 12.571 Z cpu0: 33271) usb 4-2: Rozhranie podtriedy: 0x06, Protokol: 0x50 2019-12-03T12: 06: 12,571 Z cpu0: 33271) UPOZORNENIE: LinScsiLLD: scsi_add_host: 573: vmkAdapter (usb-storage) sgMaxEntries zaokrúhlené na 255 Hlásená veľkosť bola 65535 2019-12-03T12: 06: 12,571Z cpu0: 33271) usb-storage 4-2: 1.0: rozhranie je nárokované usb-storage 2019-12-03T12: 06: 12.571Z cpu0: 33271) usb 4-2: zariadenie nie je k dispozícii ble pre passsthrough 2019-12-03T12: 06: 12.571Z cpu0: 33271) usb 4-2: usbfs: zaregistrované usb0405 2019-12-03T12: 06: 15.454Z cpu0: 33207) usb-storage 4-2: 1.0: suspended

Ak hostiteľ ESXi nerozpozná jednotku USB, skontrolujte, či je služba spustená:

#chkconfig usbarbitrator - list.

V súlade s tým sme dostali číslo radiča USB, ktorý je potrebné poslať do virtuálneho počítača.

  1. Ak chcete poslať fyzický radič USB ďalej, vyberte ESXi hostiteľa, na ktorom je spustený váš počítač VM, a prejdite do časti spravovať -> nastavenie -> Zariadenia PCI -> editovať;
  2. V zozname zariadení PCI vyhľadajte a vyberte požadovaný radič USB podľa jeho ID (v mojom príklade 00: 1D.0 sa radič nazýva Čipová sada C610 / X99 séria Enhanced Host Controller # 1 Intel Corporation);
  3. Stav radiča USB by sa mal zmeniť z nedostupné (Toto zariadenie nie je v súčasnosti dostupné pre VM) na k dispozícii (Toto zariadenie je k dispozícii pre použitie VM). Kliknite na tlačidlo OK.
  4. Ak chcete uložiť zmeny, musíte reštartovať hostiteľa ESXi.
  5. Po načítaní hostiteľa vypnite VM a pridajte nové zariadenie PCI (Nové zariadenie -> Zariadenie PCI -> pridať). V rozbaľovacom zozname vyberte radič USB (napríklad čipová sada USB od spoločnosti Intel Corporation (napr. 0000: 00: 1D | Intel Corporation USB ...)). Ak sa pri pridávaní zariadenia PCI v nastaveniach VM zobrazí upozornenie: “Varovanie: VM sa nezapne, kým sa jeho rezervácia pamäte nevyrovná jeho veľkosti pamäte“, Musíte vyhradiť pamäť pre VM.
  6. Zapnite VM a uistite sa, že sa v hosťujúcom OS objaví jednotka USB. V mojom prípade sa v hosťujúcom systéme Windows Server 2012 R2 objavila pripojená jednotka USB „Externé zariadenie USB 3.0 od spoločnosti Toshiba“.

V režime VMDirectPath môžete poslať až dve zariadenia PCI na virtuálny počítač.

Existuje niekoľko obmedzení pre virtuálne počítače so zariadením PCI s hádzaním PCI: nemôžete pozastaviť virtuálne počítače (pozastaviť), vykonávať vMotion na inom hostiteľovi (je to logické, pretože ste viazaní na fyzický radič, vytvárajte snímky).

Hyper-V tiež podporuje odovzdávanie fyzických zariadení USB do virtuálnych počítačov.