Computer >> 컴퓨터 >  >> 소프트웨어 >> 가상 기기

VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성

VMWare ESXi 호스트에서 가상 머신 내부에 연결된 로컬 USB 장치/플래시 드라이브/디스크를 리디렉션할 수 있습니다. 이 기술을 USB 패스스루라고 합니다. ESXi 4.1부터 사용 가능합니다.

우리 작업이 ESXi 6.7 호스트에 로컬로 연결된 외부 USB 3.0 드라이브를 가상 머신으로 리디렉션하는 것이라고 가정합니다. VM에서 별도의 USB 드라이브로 데이터를 직접 빠르게 복사하려면 드라이브에 액세스해야 합니다.

VMWare USB 패스스루

패스스루 모드를 사용하면 ESXi 호스트에 연결된 물리적 디바이스를 가상 머신의 게스트 OS로 직접 리디렉션할 수 있습니다. 패스스루 모드에서는 가상 머신에 USB 드라이브, 모뎀 또는 PCI/USB 컨트롤러에 대한 직접 액세스 권한을 부여할 수 있습니다.

ESXi에서 USB 장치를 리디렉션하려면 몇 가지 주요 구성 요소가 필요합니다.

  • 중재인 연결된 물리적 USB 디바이스를 스캔하고, 호스트와 VM 간에 USB 디바이스 트래픽을 라우팅하고, 디바이스에 대한 액세스를 제어하는 ​​ESXi 호스트의 별도 서비스입니다(하나의 VM만 연결된 USB 디바이스를 사용할 수 있음). USB 중재자는 최대 15개의 USB 컨트롤러를 동시에 추적할 수 있습니다.
  • USB 컨트롤러 — USB 컨트롤러는 물리적 호스트와 가상 머신 모두에 설치해야 합니다.

VMWare ESXi에서 VM용 USB 컨트롤러를 설치하려면 VM 설정을 열고 새 장치(USB 컨트롤러)를 추가합니다. . USB 컨트롤러를 추가할 때 유형을 선택하십시오.

  • USB 2.0(EHCI+UHCI) – USB 2.0 및 USB 1.1 장치를 지원하는 컨트롤러
  • USB 3.0(xHCI) – 빠른 USB 3.0 장치를 지원하며 가상 하드웨어 버전 8 이상이 필요합니다.
USB 3.0 모드는 vSphere 5.5 패치 3부터 사용할 수 있습니다. 이를 지원하려면 xHCI 컨트롤러가 게스트 OS에서 실행 중이어야 합니다. Windows 8.1/Windows Server 2012 R2 및 Linux 커널 버전 2.6.35 이상이 게스트 OS로 지원됩니다.

VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성

USB 장치를 ESXi VM으로 통과

기본 USB 패스스루 모드에서는 호스트에서 VMWare 가상 머신으로 물리적 USB 장치를 연결할 수 있습니다.

이 리디렉션 방법의 주요 요구 사항 및 제한 사항:

  • 가상 하드웨어 7.0 이상
  • 하나의 VM에 대해서만 USB 장치에 대한 직접 액세스를 제공할 수 있습니다.
  • VM의 리디렉션된 USB 장치의 최대 수는 20개입니다.
  • 연결된 USB 장치에서 VM 부팅은 지원되지 않습니다.

VM용 가상 USB 컨트롤러를 추가한 후 호스트에 연결된 USB 드라이브를 리디렉션할 수 있습니다.

  1. 새 호스트 USB 기기 추가 VM 설정에서  추가;를 클릭합니다.
  2. 추가할 드롭다운 목록에서 연결된 USB 장치를 선택합니다.
  3. 실제 USB 드라이브가 연결된 VM에 대해 vMotion 지원을 활성화하려면 기기가 연결된 동안 vMotion 지원을 선택합니다. 옵션; VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성
  4. 그러면 USB 드라이브가 가상 머신의 게스트 OS에 나타납니다.
리디렉션된 USB 드라이브가 있는 VM에는 몇 가지 vMotion 제한 사항이 있습니다.

  • VM을 중지하거나 일시 중지할 수 없습니다. 컴퓨터를 켜면 USB 장치가 연결된 호스트로 컴퓨터를 수동으로 마이그레이션해야 합니다.
  • DPM 모드는 지원되지 않습니다. vCenter는 전원을 절약하기 위해 연결된 USB 장치가 있는 호스트를 종료할 수 있기 때문입니다.
  • VM과 물리적 USB 장치가 있는 ESXi 호스트는 TCP 포트 902를 통해 vmk0을 통해 액세스할 수 있어야 합니다.

새 USB 장치를 추가할 때 vSphere 클라이언트에 USB 장치를 찾을 수 없다는 메시지가 표시되는 경우(사용 가능한 USB 장치 없음 ), 이는 VMWare가 USB 패스스루 모드에서 리디렉션하기 위해 USB 드라이브를 지원하지 않음을 의미합니다. 공식 VMWare 웹사이트에서 호환되는 USB 장치 목록을 찾을 수 있습니다(목록은 길지 않음). "ESXi 6.7의 ESXi 호스트에서 가상 머신으로의 패스스루 테스트를 거친 USB 장치 확인 ” 문서의 섹션 https://kb.vmware.com/s/article/1021345.

VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성

이 경우 전체 USB 컨트롤러를 ESXi 호스트에서 VM으로 리디렉션할 수 있습니다.

VMware PCI 패스스루(VMDirectPath):USB 컨트롤러를 VM으로 리디렉션

VM에서 물리적 USB 디바이스에 대한 액세스를 제공하는 덜 편리한 또 다른 방법은 ESXi 호스트에서 전체 USB 컨트롤러를 리디렉션하는 것입니다. 이 모드를 VMDirectPath라고 합니다. . 이를 사용하려면 서버 칩셋이 Intel Directed I/O를 지원해야 합니다. 또는 AMD I/O 가상화 기술(AMD IOMMU) , 이 모드는 BIOS/UEFI 설정에서 활성화됩니다.

서버에 USB 컨트롤러가 하나만 설치되어 있고 이를 VM으로 리디렉션하면 호스트에 로컬로 연결된 USB 장치(키보드, 마우스)를 사용할 수 없습니다. 이 경우 서버에 PCI USB 컨트롤러를 추가로 추가하는 것이 좋습니다.

호스트에 USB 컨트롤러가 여러 개 있는 경우 ESXi 셸을 ​​통해 연결된 USB 장치와 컨트롤러 번호를 식별할 수 있습니다. USB 장치 목록을 표시하려면:

# lsusb -v | grep -e Bus -e iSerial

출력에서 USB 드라이브와 관련된 라인을 찾습니다. 예:

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

그런 다음 컨트롤러 번호(Bus02)로 루트 허브와 해당 iSerial을 식별합니다. , 이 경우):

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 3.0 root hub
iSerial                 1 0000:00:1D.0
USB 드라이브가 표시되지 않으면 물리적으로 분리했다가 다시 연결해 보십시오. vmkernel.log 참조 USB Arbitrator가 드라이브를 감지했는지 알아보려면:

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

cpu0:33271)<6>usb 4-2: new SuperSpeed USB device number 5 using xhci_hcd
cpu0:33271)<6>usb 4-2: New USB device found, idVendor=0480, idProduct=b207
cpu0:33271)<6>usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
cpu0:33271)<6>usb 4-2: Product: External USB 3.0
cpu0:33271)<6>usb 4-2: Manufacturer: TOSHIBA
cpu0:33271)<6>usb 4-2: SerialNumber: 20180528012427F
cpu0:33271)<6>usb 4-2: Vendor: 0x0480, Product: 0xb207, Revision: 0x0315
cpu0:33271)<6>usb 4-2: Interface Subclass: 0x06, Protocol: 0x50
cpu0:33271)WARNING: LinScsiLLD: scsi_add_host:573: vmkAdapter (usb-storage) sgMaxEntries rounded to 255. Reported size was 65535
cpu0:33271)<6>usb-storage 4-2:1.0: interface is claimed by usb-storage
cpu0:33271)<6>usb 4-2: device is not available for passthrough
cpu0:33271)<6>usb 4-2: usbfs: registered usb0405
cpu0:33207)<6>usb-storage 4-2:1.0: suspended

VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성

ESXi 호스트에서 USB 드라이브를 감지하지 못하는 경우 usbarbitrator 서비스가 실행 중입니다:

#chkconfig usbarbitrator --list

ESXi 셸에서 직접 USB 스틱에 액세스하여 파일을 복사하려는 경우에만 usbarbitrator 서비스를 중지하십시오.

그래서 우리는 VM으로 리디렉션할 USB 컨트롤러의 번호를 얻었습니다.

  1. 물리적 USB 컨트롤러를 리디렉션하려면 VM이 실행 중인 ESXi 호스트를 선택하고  관리로 이동합니다. -> 설정 -> PCI 기기 -> 수정;
  2. PCI 장치 목록에서 ID별로 필요한 USB 컨트롤러를 선택합니다(내 예에서는 00:1D.0). , 컨트롤러는 C610/X99 series chipset USB Enhanced Host Controller #1 Intel Corporation이라고 합니다. );
  3. USB 컨트롤러의 상태는 사용할 수 없음에서 변경되어야 합니다. (이 기기는 현재 VM에서 사용할 수 없습니다. )에서 사용 가능으로 (이 기기는 VM에서 사용할 수 있습니다. ). 확인을 클릭하십시오. VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성
  4. 변경 사항을 저장하려면 ESXi 호스트를 다시 시작하십시오.
  5. 호스트를 부팅한 후 VM을 끄고 새 기기(새 기기 -> PCI 기기 -> 추가 ). 드롭다운 목록에서 USB 컨트롤러를 선택합니다(예:0000:00:1D| Intel Corporation USB Chipset… );PCI 장치를 추가할 때 VM 설정에 다음 메시지가 표시되는 경우:“Warning: The VM will not power on until its memory reservation equals its memory size ”, VM용으로 일부 RAM을 예약하십시오.
  6. VM 전원을 켜고 USB 드라이브가 게스트 OS에 나타나는지 확인합니다. 제 경우에는 연결된 USB 드라이브 "Toshiba External USB 3.0 USB Device "가 게스트 Windows Server 2012 R2에 나타났습니다. VMWare ESXi에서 가상 시스템으로 USB 장치 패스스루 구성

VMDirectPath 모드에서는 최대 2개의 물리적 PCI 장치를 VM으로 리디렉션할 수 있습니다.

리디렉션된 PCI 장치가 있는 VM에는 몇 가지 제한 사항이 있습니다. VM을 일시 중지(일시 중지)하거나, 다른 호스트에 vMotion을 수행하거나(물리적 컨트롤러에 바인딩되어 있으므로 논리적임) 스냅샷을 생성할 수 없습니다.

Hyper-V는 물리적 USB 장치를 VM으로 리디렉션하는 기능도 지원합니다.