부록 G. PCI 통과(passthrough)를 위한 호스트 설정
PCI 통과(passthrough)를 활성화하면 가상 머신이 마치 호스트 장치에 직접 연결된 것처럼 호스트 장치를 사용할 수 있습니다. PCI 통과 기능을 활성화하려면 가상화 확장 및 IOMMU 기능이 활성화되어야 합니다. 다음의 절차를 사용하는 경우 호스트를 재부팅해야 합니다. 호스트가 이미 Manager에 연결되어 있는 경우 다음의 절차를 실행하기 전에 호스트를 유지 관리 모드로 전환합니다.
전제 조건:
- 호스트 하드웨어가 PCI 장치 통과 및 할당 요구 사항을 충족하는지 확인합니다. 자세한 정보는 2.2.4절. “PCI 장치 요구 사항”을 참조하십시오.
절차 G.1. PCI 통과(passthrough)를 위한 호스트 설정
- BIOS에서 가상화 확장 및 IOMMU 확장 기능을 활성화합니다. 자세한 내용은 Red Hat Enterprise Linux 가상화 및 관리 가이드에 있는 BIOS에서 Intel VT-x 및 AMD-V 가상화 하드웨어 확장 활성화를 참조하십시오.
- 호스트를 Manager에 추가할 때 호스트 장치 통과 & SR-IOV 확인란을 선택하거나
grub
설정 파일을 수동으로 편집하여 커널에서 IOMMU 플래그를 활성화합니다.- 관리 포털에서 IOMMU 플래그를 활성화하려면 관리 가이드에 있는 Red Hat Virtualization Manager에 호스트 추가 및 커널 설정을 참조하십시오.
grub
설정 파일을 수동으로 편집하려면 절차 G.2. “IOMMU 수동 활성화”를 참조하십시오.
- GPU 통과(Passthrough)를 위해서는 호스트 및 게스트 시스템 모두에 추가적인 설정 단계를 실행해야 합니다. 자세한 내용은 관리 가이드에 있는 GPU 통과에 필요한 호스트 및 게스트 시스템 준비를 참조하십시오.
절차 G.2. IOMMU 수동 활성화
- 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=on
이 작동한다면intel_iommu=pt
또는amd_iommu=pt
로 바꿔 봅니다.pt
옵션을 사용해서 통과(passthrough)에 사용되는 장치만 IOMMU가 활성화하고 더 나은 호스트 성능을 제공합니다. 하지만 모든 하드웨어에서 이 옵션이 지원되지는 않을 수 있습니다. 사용자 호스트에pt
옵션이 작동하지 않으면 이전 옵션으로 돌아갑니다.하드웨어가 인터럽트 리매핑(interrupt remapping)을 지원하지 않아서 통과가 실패하는 경우 가상 머신이 신뢰할 수 있다면allow_unsafe_interrupts
옵션을 활성화할 수도 있습니다.allow_unsafe_interrupts
옵션을 활성화하면 잠재적으로 호스트가 가상 머신으로부터 MSI 공격에 노출될 수 있어서 기본값으로 활성화되어 있지 않습니다. 해당 옵션을 활성화하는 방법은 다음과 같습니다:# vi /etc/modprobe.d options vfio_iommu_type1 allow_unsafe_interrupts=1
- 변경 사항을 적용하려면
grub.cfg
파일을 새로고침하고 호스트를 재부팅합니다:# grub2-mkconfig -o /boot/grub2/grub.cfg
# reboot
SR-IOV를 활성화하고 가상 머신에 전용 가상 NIC를 할당하는 방법은 https://access.redhat.com/articles/2335291을 참조하시기 바랍니다.