13.3. libvirt 데몬 최적화
libvirt
가상화 제품군은 RHEL 하이퍼바이저의 관리 계층으로 작동하며 libvirt
구성이 가상화 호스트에 큰 영향을 미칩니다. 특히 RHEL 9에는 두 가지 유형의 libvirt
데몬, 모놀리식 또는 모듈식이 포함되어 있으며 사용하는 데몬 유형이 개별 가상화 드라이버를 구성하는 방법에 미치는 영향에 영향을 미칩니다.
13.3.1. libvirt 데몬 유형
RHEL 9는 다음과 같은 libvirt
데몬 유형을 지원합니다.
- 모놀리식 libvirt
기존
libvirt
데몬인libvirtd
는 단일 구성 파일인/etc/libvirt/libvirtd.conf
를 사용하여 다양한 가상화 드라이버를 제어합니다.따라서
libvirtd
는 중앙 집중식 하이퍼바이저 구성을 허용하지만 시스템 리소스를 효율적으로 사용할 수 있습니다. 따라서libvirtd
는 향후 RHEL의 주요 릴리스에서 지원되지 않습니다.그러나 RHEL 8에서 RHEL 9로 업데이트한 경우에도 호스트는 기본적으로
libvirtd
를 사용합니다.- 모듈식 libvirt
RHEL 9에 새로 도입된 모듈식
libvirt
는 각 가상화 드라이버에 대해 특정 데몬을 제공합니다. 여기에는 다음이 포함됩니다.- virtqemud - 하이퍼바이저 관리를 위한 기본 데몬
- virtinterfaced - 호스트 NIC 관리를 위한 보조 데몬
- virtnetworkd - 가상 네트워크 관리를 위한 보조 데몬
- virtnodedevd - 호스트 물리적 장치 관리를 위한 보조 데몬
- virtnwfilterd - 호스트 방화벽 관리를 위한 보조 데몬
- virtsecretd - 호스트 보안 관리를 위한 보조 데몬
- virtstoraged - 스토리지 관리를 위한 보조 데몬
각 데몬에는 별도의 구성 파일(예:
/etc/libvirt/virtqemud.conf
)이 있습니다. 따라서 모듈식libvirt
데몬은libvirt
리소스 관리를 세부적으로 조정할 수 있는 더 나은 옵션을 제공합니다.RHEL 9 새로 설치를 수행한 경우 모듈식
libvirt
가 기본적으로 구성됩니다.
다음 단계
-
RHEL 9에서
libvirtd
를 사용하는 경우 Red Hat은 모듈식 데몬으로 전환하는 것이 좋습니다. 자세한 내용은 모듈식 libvirt 데몬 활성화를 참조하십시오.
13.3.2. 모듈식 libvirt 데몬 활성화
RHEL 9에서 libvirt
라이브러리는 호스트의 개별 가상화 드라이버 세트를 처리하는 모듈식 데몬을 사용합니다. 예를 들어 virtqemud
데몬은 QEMU 드라이버를 처리합니다.
RHEL 9 호스트 새로 설치를 수행한 경우 하이퍼바이저는 기본적으로 모듈식 libvirt
데몬을 사용합니다. 그러나 호스트를 RHEL 8에서 RHEL 9로 업그레이드하는 경우 하이퍼바이저는 RHEL 8의 기본값인 모놀리식 libvirtd
데몬을 사용합니다.
이러한 경우 libvirt 리소스 관리를 세밀하게 조정할 수 있는 더 나은 옵션을 제공하기 때문에 대신 모듈식
데몬을 활성화하는 것이 좋습니다. 또한 libvirt
libvirtd
는 향후 RHEL의 주요 릴리스에서 지원되지 않습니다.
사전 요구 사항
하이퍼바이저는 모놀리식
libvirtd
서비스를 사용합니다.# systemctl is-active libvirtd.service active
이 명령이
활성
으로 표시되면libvirtd
를 사용합니다.- 가상 머신이 종료되었습니다.
절차
libvirtd
및 해당 소켓을 중지합니다.$ systemctl stop libvirtd.service $ systemctl stop libvirtd{,-ro,-admin,-tcp,-tls}.socket
libvirtd
를 비활성화하여 부팅 시 시작되지 않도록 합니다.$ systemctl disable libvirtd.service $ systemctl disable libvirtd{,-ro,-admin,-tcp,-tls}.socket
모듈식
libvirt
데몬을 활성화합니다.# for drv in qemu interface network nodedev nwfilter secret storage; do systemctl unmask virt${drv}d.service; systemctl unmask virt${drv}d{,-ro,-admin}.socket; systemctl enable virt${drv}d.service; systemctl enable virt${drv}d{,-ro,-admin}.socket; done
모듈식 데몬의 소켓을 시작합니다.
# for drv in qemu network nodedev nwfilter secret storage; do systemctl start virt${drv}d{,-ro,-admin}.socket; done
선택 사항: 원격 호스트에서 호스트에 연결해야 하는 경우 가상화 프록시 데몬을 활성화하고 시작합니다.
시스템에서
libvirtd-tls.socket
서비스가 활성화되어 있는지 확인합니다.# grep listen_tls /etc/libvirt/libvirtd.conf listen_tls = 0
libvirtd-tls.socket
이 활성화되지 않은 경우(listen_tls = 0
)virtproxyd
를 다음과 같이 활성화합니다.# systemctl unmask virtproxyd.service # systemctl unmask virtproxyd{,-ro,-admin}.socket # systemctl enable virtproxyd.service # systemctl enable virtproxyd{,-ro,-admin}.socket # systemctl start virtproxyd{,-ro,-admin}.socket
libvirtd-tls.socket
이 활성화되면(listen_tls = 1
)virtproxyd
를 다음과 같이 활성화합니다.# systemctl unmask virtproxyd.service # systemctl unmask virtproxyd{,-ro,-admin,-tls}.socket # systemctl enable virtproxyd.service # systemctl enable virtproxyd{,-ro,-admin,-tls}.socket # systemctl start virtproxyd{,-ro,-admin,-tls}.socket
virtproxyd
의 TLS 소켓을 활성화하려면 호스트에libvirt
와 작동하도록 TLS 인증서가 구성되어 있어야 합니다. 자세한 내용은 Upstream libvirt 설명서 를 참조하십시오.
검증
활성화된 가상화 데몬을 활성화합니다.
# virsh uri qemu:///system
호스트가
virtqemud
모듈식 데몬을 사용하고 있는지 확인합니다.# systemctl is-active virtqemud.service active
상태가
활성
상태인 경우 모듈식libvirt
데몬이 성공적으로 활성화되었습니다.