VMware vSphere 가상 computer에 USB 장치를 사용하는 방법

하이퍼바이저의 주요 기능은 가상 머신이 사용하는 장치를 소프트웨어 lever에서 仿真하는 것입니다. 가상 컨트롤러, 디스크, DVD-ROM, 비디오 카드, 네트워크 카드, 인pu device 등의 장치는 가상 머신에서 생성됩니다. 그러나 프린터, 스캐너, USB 플ASH 드라이브, USB 하드 드라이브, USB 스마트 카드 读取器, 보안 도ingle, USB 라이센스 키 등을 연결하고자 하면 어떻게 해야 합니까?

USB 인터페이스를 가진 외부 물리적 장치는 VMware Workstation에서 실행되는 가상 머신에 USB Passthrough 기능을 사용하여 它们을 연결할 수 있습니다. 이 blog post는 ESXi 호스트에서 VMware vSphere에서 이 기능을 사용하는 것을 涵蓋하며, USB 장치를 연결하기 위한 요구 사항과 단계를 包括합니다.

USB Passthrough이란 무엇인가?

VMware USB 장치 Passthrough은 가상 머신에 직접 연결된 것처럼 가상 머신에 USB 장치를 연결하게 하는 기능입니다. VMware Passthrough는 ESXi 4.1에서 시작하여 사용할 수 있는 기능입니다.

ESXi 호스트에서 가상 머신의 ゲスト 오ペ레이팅 시스템(OS)으로 USB 장치를 通透하는 이유는 다양하다. 예를 들어, 더 이상 지원되지 않는 기능을 가지고 있지 않은 老旧한 스캔기 또는 프린터가 있을 때, 最新버전의 윈도우 오ペ레이팅 시스템에 드라이버가 없을 수 있다. 이러한 경우, USB 장치를 지원하는 老旧한 버전의 윈도우를 설치하고 이 장치를 가상 머신에 연결할 수 있다. 이 기능을 이용하는 다른 实务적인 경우는, USB 하드 드라이브를 가상 머신과 직접 geschwindigkeit에 따라 파일을 복사하는 것입니다. 사용자는 가상 머신에서 하드웨어 USB 라이ense 키를 사용하는 소프트웨어를 사용해야 할 때가 있을 수 있다.

USB Passthrough의 동작 방법

USB Passthrough을 동작시키기 위해 필요한 주요 요소는 중재자, USB 컨트롤러, 물리 USB 장치가 있다.

중재자는 ESXi 서버上的 정가의 서비스로, 물리 서버와 연결된 물리 USB 장치를 스캔하고, 물리 호스트와 가상 머신 사이의 USB 장치 통신을 路由하는 责任을 가지고 있다. 한 번에 가상 머신이 USB 장치에 独占적으로 ACCESS할 수 있으며, 다른 가상 머신은 이 USB 장치에 대한 独占적 ACCESS를 차단한다. USB 중재자는 vSphere 7.0에서 15개 이하의 USB 컨트롤러를 지원한다. Arbitrator 서비스는 ESXi에서 기본적으로 활성화되어 있다.

USB 컨트롤러은 사물 ESXi 서버에서 사용되는 컨트롤러로, 사물 USB 포트를 연결하는 컨트롤러입니다. 사물 USB 컨트롤러는 서버에 삽입된 사물 USB 장치와 함께 작동합니다. USB 컨트롤러는 내장型(onboard)이나 外设型(external)이 있으며, 내장型은 모뎀보드에 integrate 되어 있는 칩에 구현되며, 外设型은 서버 모뎀보드의 相应 슬롯에 삽입되는 PCI 또는 PCIe 카드로 구현됩니다. 내장型 USB 컨트롤러는 USB 总线와 PCIe(또는 PCI) 总线 사이의 桥接역할을 합니다. 내장型 USB 컨트롤러는 모뎀보드 칩셋과 相应 수의 PCIe 로ane로 физически 연결됩니다.

가상 USB 컨트롤러는 하이퍼 Ви저에 실행 중인 가상 머신에 대한 사용자 정의 장치로 생성되었습니다. 가상 USB 컨트롤러는 사물 ESXi 호스트에서 사물 USB 장치를 가상 머신의 게스트 OS로 전달할 때 사물 USB 컨트롤러와 상호 작용합니다. VM 구성에 가상 USB 컨트롤러의 存在이 필요하여 VM에 USB Passthrough 기능을 사용할 수 있습니다. ESXi 호스트上에 가상 머신에 최대 여덟 가상 USB 컨트롤러를 연결할 수 있습니다. 가상 USB 컨트롤러를 VM 구성에서 제거하고자 하면, 그 컨트롤러에 연결된 모든 USB 장치를 먼저 제거해야 합니다. VMware USB 드라이버는 가상 USB 컨트롤러를 VM 구성에 추가한 후 게스트 운영 체제에 설치합니다.

사물 USB 장치는 USB 인터페이스와 USB 포트를 갖춘 모든 USB 장치를 의미하며, 컴퓨터와 연결하기 위한 것입니다. 单个 VM 또는 ESXi 호스트에 최대 20개의 USB 장치를 연결할 수 있습니다.

USB 표준과 컨트롤러 모드는 다음과 같습니다:

  • USB 2.0 및 USB 1.1(EHCI+UHCI)
  • USB 3.0(xHCI) VM 하드웨어 버전 8 이상

VMware USB 통과 기능을 사용하여 가상 머신에 물리적 USB 장치를 연결한 후, 게스트 운영 체제에서 연결된 USB 장치의 드라이버를 설치해야 할 수 있습니다.

USB 3.0 요구 사항

USB 3.0은 VMware vSphere 5.5 패치 3부터 ESXi 서버에서 사용할 수 있습니다. 이에는 VM 구성에서 USB xHCI 드라이버가 필요합니다. USB 3.0 통과를 사용하는 데 필요한 운영 체제 요구 사항은 다음과 같습니다: Windows 8.1 이상, Windows Server 2012 R2 이상, 또는 Linux 커널 2.6.35 이상의 Linux입니다. USB 3.1 장치는 VMware vSphere 7.0부터 전속으로 지원됩니다.

USB 통과 한계

USB 통과 기능을 사용하기 전에 인지해야할 몇 가지 제한 사항이 있습니다:

  • USB 드라이브를 가상 머신의 부트 드라이브로 사용할 수 없습니다.
  • USB 드라이브를 ESXi 부팅에 사용하면, 이 USB 드라이브를 가상 머신에 연결할 수 없습니다.
  • 가상 머신에는 하드웨어 버전 7 이상이 필요합니다.

일부 USB 장치는 VMware에서 지원되지 않을 수 있습니다:

  • USB 허브
  • 비동기 데이터 전송을 사용하는 오디오 장치와 비디오 카메라
  • 일부 USB 키보드와 마우스(자세한 내용은 VMware 기사 1021345를 참조하세요)
  • CCID를 사용하는 一些 지능형 카드는 가상 머신에 연결하기 위해 추가적인 구성이 필요할 수 있습니다.

vMotion는 USB passthrough 장치가 연결된 VM에 대해 가능합니다. VM을 올바르게 구성하고 vMotion을 활성화하면, VM이 ESXi 호스트를 다른 것으로 이전하면 USB 장치가 VM에 still 연결되어 있습니다.

USB passthrough 디스크를 사용하는 가상 머신에 대해 vMotion의 한계가 있습니다 :

  • Distributed Power Management (DPM)은 지원되지 않습니다. 이는 ESXi 호스트가 VM에 USB 장치를 연결해제하지 않고 전원을 끕니다. (DPM을 사용하여 호스트가 전원을 끕니다.) 이 호스트에 DPM을 끕니다.
  • 冗余성이 지원되지 않습니다.
  • VM은 挂起되거나 전원을 끕니다 (그렇지 않으면 VM에 USB 장치가 연결되어 있지 않습니다. USB 장치를 다시 연결하려면 VM이 이전 ESXi 호스트로 이전하는 것뿐입니다.). 이 VM을 수동으로 이전 ESXi 호스트로 이동하여 USB 장치가 연결되어 있는 것처럼 하면 이VM의 전원을 켜 줄 수 있습니다. Linux 게스트는 이전 후에 USB 장치를 다른 마운트 포인트에 마운트할 수 있습니다.
  • USB passthrough 장치가 있는 가상 머신을 가진 ESXi 호스트는 vmk0 가상 머신 内核 인터페이스 (관리 네트워킹)과 TCP 902 포트로 ccessible 해야 합니다.

가상 머신에서 USB 장치를 사용하기 전에 hot-add 기능을 사용하고 ЦП, 메모리 또는 PCI 장치를 추가하기 전에 USB 장치를 끊어 丢弃하세요. 그렇지 않으면 hot-add 기능을 사용할 때 USB 장치가 자동으로 丢弃되고 一些 데이터가 잃어 가질 수 있습니다. 가상 머신을 정지하고 다시 시작할 때 USB 장치가 丢弃되고 가상 머신에 다시 연결되는지 확인할 수 있습니다.

VMware 가상 USB 드라이브 또는 가상 플lash 드라이브를 가상 머신에 연결하는 것처럼 ESXi 또는 VMware Workstation가 실행 중인 가상 머신에 연결하는 것은 현재 지원되지 않습니다.

USB 장치를 가상 머신에 연결하는 방법

이제 이론을 familiarize 했으므로 실제 내용을 하나하나 실행해보고 VMware vSphere의 구성을 보실 수 있습니다.

  1. ESXi 서버의 USB 포트에 USB 장치를 삽입하십시오. 저의 경우는 USB 플lash 드라이브를 삽입하겠습니다.
  2. USB 장치가 ESXi에 연결되었는지 확인하려면 ESXi 명령어 시스템에서 USB 장치를 조회할 수 있습니다 :

    lsusb

  3. 다음 스크린샷에서 正如 보입니다. 저의 플lash 드라이브가 ESXi 서버에 연결되었습니다.

  4. USB 的阿比特服务 가 실행 중일 것입니다. 서비스의 상태를 명령어를 사용하여 조회할 수 있습니다 :

    chkconfig usbarbitrator --list

  5. USB arbitrator이 정지되면, 다음 명령어로 시작할 수 있습니다.

    /etc/init.d/usbarbitrator start

    Note: ESXiCLI에 대해 자세히 알고 싶다면 blog post을 읽어 주세요.

    VM은 예를 들어서 제가 사용하는 vCenter Server로 관리되는 ESXi 호스트에 있습니다. 가상 머신에 Windows이 게스트 OS로 설치되어 있습니다. VMware vSphere Client을 실행하고 Hosts and Clusters를 navigator pane에서 virtual machine로 이동합니다. virtual machine가 powers off 상태여야 합니다. 가상 머신에 USB 기기를 passthrough 기능을 사용하여 연결하려면 guest OS에 VMware Tools를 install 해야합니다.

  6. 가상 컴퓨터를 선택하면 Actions > Edit settings를 클릭하십시오.

  7. Edit Settings 창에서, 가상 컴퓨터 설정에 USB 컨트롤러가 있는지 확인하십시오. USB 컨트롤러가 없다면 Add New Device > USB Controller를 클릭하고 USB 컨트롤러 유형(USB 2.0 또는 USB 3.0)을 선택하십시오.
  8. USB 컨트롤러가 있다면, ESXi 호스트에 연결된 USB 장치를 가상 컴퓨터로 추가해야 합니다. Add New Device > Host USB Device를 클릭하십시오.
  9. VM 구성에 新区別 문자열이 추가되었습니다. New USB Host 기기 문자열에서 VM에 연결하고자 하는 USB 기기를 선택하십시오. 현재, tangibleness 하드 디스크 VM에 two USB 플래시 드라이브가 연결되어 있으며, Verbatim 플래시 드라이브를 VM에 연결하고 있습니다 (Verbatim 제품 0x0302). vMotion 지원을 사용하기 위해서는 New USB Host 기기를 확장하고 “Device connected supports vMotion” 复选框을 선택하십시오. vMotion 요구 사항과 제한을 주의 깊게 살펴봐야 합니다. 설정을 저장하고 이 창을 닫으려면 OK를 클릭하십시오.
  10. VM을 시작합니다. 가상 OPERATING SYSTEM을 로드하고 초기화하고 USB 플래시 드라이브를 설치하기 전에 기다렸습니다. 다음으로, Windows 장치 관리자를 오픈합니다. My Computer를 우클릭하여 컨텍스트 메뉴에서 Manage를 클릭합니다. Computer Management 창에서 Device Manager를 클릭하고 Disk drives 섹션을 확장합니다 (USB 플래시 드라이브를 연결하면 이 장치 ategory에 이 장치가 나타납니다). Verbatim USB 기기를 볼 수 있습니다. 이 기기는 VMware USB Passthrough 기능을 사용하여 VM에 연결된 내 USB 스틱의 이름입니다.
  11. 오픈 디스크 관리 창을 컴퓨터 관리 창에서 USB 플래시 드라이브에 디스크 드라이브가 할당되었는지 확인하십시오. 저의 경우, 모든 것이 correct하며, 이제 USB 플래시 드라이브를 Windows ゲスト의 가상 디스크에서 데이터를 복사하거나 반대의 경우를 할 수 있습니다.

VMware PCI Passthrough

VMware USB Passthrough 기능을 사용하여 VM에 연결하고자 하는 USB 장치가 VMware에서 지원되지 않는 경우, PCI Passthrough 기능을 사용하여 전체 물리 USB 컨트롤러를 PCI 인터페이스를 갖추고 VM에 연결할 수 있습니다.

ESXi 서버에 USB 컨트롤러가 PCI 슬롯에 삽입되어 있다면, 이 USB 컨트롤러를 가상 머신에 전달할 수 있습니다. VMware PCI Passthrough는 VMDirectPass라고도 불립니다. 이 방법은 USB Passthrough을 사용하는 것보다 간편하지 않지만, 일부러 해결할 수 있는 과제입니다.

요구사항

server hardware에서 지원되고 UEFI/BIOS에서 활성화 되어 있어야 합니다. 서버에 하나의 USB 컨트롤러만 있으면, 가상 ESXi 호스트가 사용하는 USB 장치와 연결을 끊기지 않기 위해 추가의 USB 컨트롤러를 연결하십시오.

제한 사항과 한계:

  • 가상 머신을 일시 정지할 수 없습니다.
  • VM은 vMotion을 사용하여 다른 ESXi 호스트로 이동할 수 없습니다.
  • 가상 머신 스냅샷은 지원되지 않습니다.

USB 장치를 VM에 connect하기 위해 PCI passthrough를 사용하고 USB 컨트롤러를 which USB 장치가 연결되어 있는 entire USB controller를 VM에 연결하는 workflow을 보겠습니다.

  1. USB 장치와 USB 컨트롤러를 식별하고 (VM에 multiple USB 컨트롤러가 설치 되어 있다면) 이를 사용하여 이름을 지정합니다:

    lsusb -v | grep -e Bus -e iSerial

  2. USB 컨트롤러에 연결된 USB 장치의 이름과 같은 문자열을 찾고 컨트롤러 id를 식별합니다 (예: bus002).
  3. USB 장치를 ESXi 서버에 연결할 때 VMkernel 로그를 확인할 수 있습니다:

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

  4. VMware vSphere Client를 여시고 Hosts and Clusters를 가기 합니다.
  5. VM를 위한 ESXi 호스트를 선택합니다 (USB 장치를 연결해야 하는 곳).
  6. Configure 탭을 선택하고 PCI DevicesHardware 섹션에서 선택합니다.
  7. 이전에 감지한 ID를 사용하여 PCI 장치 목록에서 필요한 USB 컨트롤러를 찾고 선택합니다.
  8. 이제 선택한 드라이버의 상태가 Available로 변경되어야 합니다.
  9. OK를 눌러 설정을 저장합니다.
  10. ESXi 호스트를 다시 引导하십시오. USB 장치를 VM에 연결하기 위한 변경이 적용되도록 합니다.
  11. 가상 머신이 机关되지 않도록 확인하십시오. VM 설정으로 이동하고 Add New Device > PCI device > Add를 클릭하십시오. correct ID를 사용하여 USB 컨트롤러를 드롭다운 목록에서 선택하십시오.
  12. 가상 머신을 机关하십시오. 게스트 OS에서 장치를 확인합니다. 가상 머신에 Windows가 설치되어 있다면, Device Manager을 오픈하고 ドラ이버와 스토어지 장치를 확인합니다.

USB Smart Card Connection

appropriate CCID class를 갖춘 一些 USB 장치는 기본적으로 VM에 대한 지원이 되지 않을 수 있습니다. 에러 消息 “Cannot connect ‘path:0/1/6/1’ to this virtual machine. The device was not found”가 표시됩니다. 로그에서 다음과 같은 消息가 표시됩니다:

(vmx-vcpu-0) did not claim interface 0 before use

PCSCD는 ESXi 데몬이며, 스마rt 카드 读卡器를 控制在합니다. USB 스마rt 카드의 액세스가 가상 머신에서 에러를 avoid하기 위하여 机关되지 않았습니다. 이를 原因으로, USB passthrough는 기본 设置에서 USB 스마rt 카드에 대해 사용할 수 없습니다. USB 스마rt 카드에 대한 USB passthrough를 가상 머신 설정에 editing하여 机关시키는 것이 필요합니다.

  1. 가상 머신을 机关하십시오. 가상 머신 설정을 오픈하고 VM Options 탭을 선택하고 Edit Configuration를 클릭하십시오.

  2. 20:

    구성 매개 변수 창에서 구성 매개 변수 추가를 클릭합니다.

    다른 방법으로 SSH 클라이언트를 통해 ESXi 콘솔에 연결하여 명령 줄 인터페이스에서 가상 머신의 VMX 구성 파일을 편집할 수 있습니다.

  3. 파라미터가 없는 경우 가상 머신 구성에 다음 줄을 추가하거나 편집합니다:

    usb.generic.allowCCID = "TRUE"

  4. 가상 머신 설정을 저장합니다.
  5. ESXi 명령 줄에서 다음 명령을 사용하여 PCSCD 서비스를 중지합니다:

    sudo /etc/init.d/pcscd stop

  6. PCSCD 서비스가 실행 중이지 않은지 확인합니다:

    ps | grep pcscd

  7. 가상 머신의 전원을 켠 다음 장치를 확인하여 USB 스마트 카드 리더가 가상 머신에 연결되었는지 확인합니다.

결론

USB 포트에 연결된 다양한 장치를 물리적인 ESXi 호스트에 연결하여 가상 기계로 직접 연결하여 가상 기계의 게스트 운영 시스템에서 일반 물리적인 컴퓨터와 마찬가지로 이용할 수 있습니다. 이러한 USB 장치를 사용하여 가상 기계를 주요 ESXi 호스트에 연결된 외부 USB 장치를 사용하여 vMotion로 다른 호스트로 이동할 수 있습니다. VMware USB passthrough 기능은 某些한 제한 사항 withstanding, 다양한 상황에서 더 많은 기능과 유연성을 추가하는 것입니다.

VMware vSphere를 사용하는 사용자들에 대해 VMware VM 백업은 중요합니다. NAKIVO Backup & Replication을 다운로드하고 이 普段적인 데이터 보호 솔루션을 시험하여 VMware vSphere 가상 기계와 다른 데이터를 환경에서 보호하세요.

Source:
https://www.nakivo.com/blog/vmware-administration-essentials-configuring-esxi-vm-networks-2/