부록 D. PCI 패스스루용 호스트 구성

참고

이는 Red Hat Virtualization에서 SR-IOV를 설정하고 구성하는 방법을 보여주는 일련의 주제 중 하나입니다. 자세한 내용은 SR-IOV 설정 및 구성을 참조하십시오.

PCI 패스스루를 활성화하면 가상 머신에서 장치가 가상 머신에 직접 연결된 것처럼 호스트 장치를 사용할 수 있습니다. PCI 통과 기능을 활성화하려면 가상화 확장 기능 및 IOMMU 기능을 활성화해야 합니다. 다음 절차에 따라 호스트를 재부팅해야 합니다. 호스트가 이미 Manager에 연결되어 있는 경우 호스트를 유지 관리 모드로 먼저 배치해야 합니다.

사전 요구 사항

  • 호스트 하드웨어가 PCI 장치 통과 및 할당 요구 사항을 충족하는지 확인합니다. 자세한 내용은 PCI 장치 요구 사항을 참조하십시오.

PCI 패스스루용 호스트 구성

  1. BIOS에서 가상화 확장 기능 및 IOMMU 확장을 활성화합니다. 자세한 내용은 Red Hat Enterprise Linux Virtualization 배포 및 관리 가이드의 BIOS에서 Intel VT-x 및 AMD-V 가상화 하드웨어 확장 활성화 를 참조하십시오.
  2. Manager에 호스트를 추가하거나 grub 구성 파일을 수동으로 편집하여 Hostdev Passthrough & SR-IOV 확인란을 선택하여 커널에서 IOMMU 플래그를 활성화합니다.

  3. GPU 패스스루의 경우 호스트와 게스트 시스템 모두에서 추가 구성 단계를 실행해야 합니다. GPU 장치 통과를 참조하십시오. 자세한 내용을 위해 Red Hat Virtualization에서 가상 머신에 대한 NVIDIA GPU 설정 에서 호스트 GPU를 단일 가상 머신에 할당.

수동으로 IOMMU 활성화

  1. grub 구성 파일을 편집하여 IOMMU를 활성화합니다.

    참고

    IBM POWER8 하드웨어를 사용하는 경우 IOMMU가 기본적으로 활성화되어 있으므로 이 단계를 건너뜁니다.

    • Intel의 경우 시스템을 부팅하고 grub 설정 파일에 GRUB _CMDLINE_LINUX 행의 끝에 intel_ iommu=on 을 추가합니다.

      # vi /etc/default/grub
      ...
      GRUB_CMDLINE_LINUX="nofb splash=quiet console=tty0 ... intel_iommu=on
      ...
    • AMD의 경우 시스템을 부팅하고 grub 설정 파일의 GRUB _CMDLINE_LINUX 행의 끝에 amd_ iommu=on 을 추가합니다.

      # vi /etc/default/grub
      …​
      GRUB_CMDLINE_LINUX="nofb splash=quiet console=tty0 …​ amd_iommu=on
      …​
      참고

      intel_iommu=on 또는 AMD IOMMU가 감지되면 add iommu=pt 를 사용해 볼 수 있습니다. pt 옵션은 passthrough에 사용되는 장치에만 IOMMU를 활성화하고 호스트 성능을 향상시킵니다. 그러나 옵션이 모든 하드웨어에서 지원되지 않을 수도 있습니다. pt 옵션이 호스트에 대해 작동하지 않는 경우 이전 옵션으로 되돌립니다.

      하드웨어가 인터럽트 다시 매핑을 지원하지 않기 때문에 통과에 실패하는 경우 가상 머신이 신뢰할 수 있는 경우 allow_unsafe_interrupts 옵션을 활성화하는 것이 좋습니다. 가상 시스템의 MSI 공격에 잠재적으로 노출되므로 allow_unsafe_interrupts 는 기본적으로 활성화되지 않습니다. 옵션을 활성화하려면 다음을 수행합니다.

      # vi /etc/modprobe.d
      options vfio_iommu_type1 allow_unsafe_interrupts=1
  2. grub.cfg 파일을 새로 고치고 이러한 변경 사항을 적용하려면 호스트를 재부팅합니다.

    # grub2-mkconfig -o /boot/grub2/grub.cfg
    # reboot