1.3. 가상 머신 구성 요소 및 상호 작용
RHEL 8의 가상화는 다음과 같은 주요 소프트웨어 구성 요소로 구성됩니다.
하이퍼바이저
RHEL 8에서 VM(가상 시스템)을 생성하는 것은 하드웨어를 제어하고 호스트 시스템에서 여러 운영 체제를 실행할 수 있는 소프트웨어 계층인 하이퍼바이저 입니다.
하이퍼바이저에는 KVM(커널 기반 가상 시스템) 모듈 및 가상화 커널 드라이버가 포함되어 있습니다. 이러한 구성 요소를 사용하면 호스트 시스템의 Linux 커널이 사용자 공간 소프트웨어에 가상화를 위한 리소스를 제공할 수 있습니다.
사용자 공간 수준에서 QEMU 에뮬레이터는 게스트 운영 체제를 실행할 수 있는 완전한 가상화된 하드웨어 플랫폼을 시뮬레이션하고 호스트에 리소스를 할당하고 게스트에 제공되는 리소스를 관리합니다.
또한 libvirt
소프트웨어 제품군은 관리 및 통신 계층 역할을 하며 QEMU를 보다 쉽게 상호 작용하고 보안 규칙을 적용하며 VM 구성 및 실행을 위한 여러 추가 툴을 제공합니다.
XML 구성
호스트 기반 XML 구성 파일(도메인 XML 파일이라고도 함)은 특정 VM의 모든 설정과 장치를 결정합니다. 구성에는 다음이 포함됩니다.
- VM 이름, 시간대 및 VM에 대한 기타 정보와 같은 메타데이터입니다.
- 가상 CPU(vCPUS), 스토리지 장치, 입출력 장치, 네트워크 인터페이스 카드 및 기타 하드웨어, 실제 및 가상 하드웨어를 포함하여 VM의 장치에 대한 설명입니다.
- VM 설정(예: 사용할 수 있는 최대 메모리 양, 다시 시작 설정 및 VM 동작에 대한 기타 설정).
XML 구성 콘텐츠에 대한 자세한 내용은 샘플 가상 머신 XML 구성 을 참조하십시오.
구성 요소 상호 작용
VM이 시작되면 하이퍼바이저는 XML 구성을 사용하여 호스트에서 사용자 공간 프로세스로 VM의 인스턴스를 생성합니다. 또한 하이퍼바이저를 사용하면 virsh
,virt-install
, guestfish
유틸리티 또는 웹 콘솔 GUI와 같은 호스트 기반 인터페이스에서 VM 프로세스에 액세스할 수 있습니다.
이러한 가상화 도구를 사용하는 경우 libvirt는 입력을 QEMU의 지침으로 변환합니다. QEMU는 지침을 KVM에 전달하여 커널이 지침을 수행하는 데 필요한 리소스를 적절하게 할당할 수 있도록 합니다. 결과적으로 QEMU는 VM 생성 또는 수정이나 VM의 게스트 운영 체제에서 작업을 수행하는 등 해당 사용자 공간 변경 사항을 실행할 수 있습니다.
QEMU는 아키텍처의 필수 구성 요소이지만 보안 문제로 인해 RHEL 8 시스템에서 직접 사용하지는 않습니다. 따라서 qemu-*
명령은 Red Hat에서 지원되지 않으므로 libvirt를 사용하여 QEMU와 상호 작용하는 것이 좋습니다.
호스트 기반 인터페이스에 대한 자세한 내용은 가상화 관리를 위한 툴 및 인터페이스를 참조하십시오.
그림 1.1. RHEL 8 가상화 아키텍처