11.2. 가상 장치 유형
RHEL 8의 가상화는 가상 머신(VM)에 연결할 수 있는 여러 유형의 가상 장치를 제공할 수 있습니다.
- 에뮬레이트된 장치
에뮬레이트된 장치는 널리 사용되는 물리적 장치의 소프트웨어 구현입니다. 물리적 장치를 위해 설계된 드라이버도 에뮬레이트된 장치와 호환됩니다. 따라서 에뮬레이트된 장치를 매우 유연하게 사용할 수 있습니다.
그러나 특정 유형의 하드웨어를 강력하게 에뮬레이션해야 하므로 에뮬레이션된 장치는 해당 물리적 장치 또는 보다 최적화된 가상 장치에 비해 성능이 저하될 수 있습니다.
에뮬레이트된 장치는 다음과 같습니다.
- 다양한 CPU 모델을 선택할 수 있는 가상 CPU(vCPU). 에뮬레이션의 성능 영향은 호스트 CPU와 에뮬레이트된 vCPU의 차이에 따라 크게 달라집니다.
- PCI 버스 컨트롤러와 같은 에뮬레이션된 시스템 구성 요소입니다.
- SATA, SCSI 또는 IDE와 같은 에뮬레이션된 스토리지 컨트롤러.
- ICH9, ICH6 또는 AC97과 같은 에뮬레이션된 음향 장치.
- VGA 또는 QXL 카드와 같은 에뮬레이션된 그래픽 카드.
- rtl8139와 같은 에뮬레이션된 네트워크 장치.
- 반가상화 장치
반가상화는 가상 장치를 VM에 노출하는 빠르고 효율적인 방법을 제공합니다. 반가상화 장치는 VM에서 사용하도록 특별히 설계된 인터페이스를 노출하므로 장치 성능이 크게 향상됩니다. RHEL 8은 virtio API를 하이퍼바이저와 VM 간의 계층으로 사용하여 VM에 반가상화 장치를 제공합니다. 이 접근 방식의 단점은 게스트 운영 체제에 특정 장치 드라이버가 필요하다는 것입니다.
가능한 한 VM용 에뮬레이트된 장치 대신 반가상화 장치를 사용하는 것이 좋습니다. 특히 I/O 집약적 애플리케이션을 실행하는 경우에도 마찬가지입니다. 반가상화 장치는 I/O 대기 시간을 줄이고 I/O 처리량을 높이며 경우에 따라 베어 메탈 성능에 매우 근접하게 합니다. 다른 반가상화 장치는 다른 방식으로 사용할 수 없는 VM에 기능을 추가합니다.
다음과 같은 유형의 반가상화 장치가 지원됩니다.
-
반가상화 네트워크 장치(virtio
-net). 반가상화 스토리지 컨트롤러:
-
Virtio-blk- 블록 장치 에뮬레이션을 제공합니다. -
Virtio-scsi- 보다 완전한 SCSI 에뮬레이션을 제공합니다.
-
- 반가상화 시계.
-
반가상화 직렬 장치(virtio
-serial). -
balloon 장치(
virtio-balloon)는 VM과 호스트 간에 메모리를 동적으로 배포하는 데 사용됩니다. -
반가상화 난수 생성기(virtio
-rng). -
반가상화 그래픽 카드(Q
XL).
-
반가상화 네트워크 장치(virtio
- 물리적 공유 장치
특정 하드웨어 플랫폼을 통해 VM은 다양한 하드웨어 장치 및 구성 요소에 직접 액세스할 수 있습니다. 이 프로세스를 장치 할당 또는 패스스루 라고 합니다.
이러한 방식으로 연결된 경우 실제 시스템의 일부 측면을 VM에서 직접 사용할 수 있습니다. 이는 VM에서 사용할 때 장치에 뛰어난 성능을 제공합니다. 그러나 VM에 물리적으로 연결된 장치는 호스트에서 사용할 수 없게 되며 마이그레이션할 수도 없습니다.
하지만 일부 장치는 여러 VM에서 공유할 수 있습니다. 예를 들어 단일 물리적 장치는 특정 상황에서 여러 중재된 장치를 제공하여 개별 VM에 할당할 수 있습니다.
다음과 같은 유형의 패스스루 장치가 지원됩니다.
- USB, PCI 및 SCSI 패스스루 - 게스트 소프트웨어에서 특정 기능을 사용할 수 있도록 일반적인 업계 표준 버스를 VM에 직접 노출합니다.
- SR-IOV(Single-root I/O Virtualization) - PCI Express 리소스의 하드웨어 강제 격리를 가능하게 하는 사양입니다. 따라서 단일 물리적 PCI 리소스를 가상 PCI 기능으로 분할하는 것이 안전하고 효율적입니다. 일반적으로 NIC(네트워크 인터페이스 카드)에 사용됩니다.
- NPIV(N_Port ID Virtualization) - 단일 HBA(호스트 버스 어댑터)를 여러 가상 포트와 공유하는 파이버 채널 기술입니다.
- GPU 및 vGPU - 특정 종류의 그래픽 또는 컴퓨팅 워크로드를 위한 액셀러레이터. 일부 GPU는 VM에 직접 연결할 수 있지만 특정 유형은 기본 물리적 하드웨어를 공유하는 vGPU(가상 GPU)를 생성하는 기능도 제공합니다.
이러한 유형의 일부 장치는 RHEL과 호환되지 않거나 지원되지 않을 수 있습니다. 가상 장치 설정에 도움이 필요한 경우 Red Hat 지원을 참조하십시오.