13.4. 가상 머신 메모리 구성
VM(가상 머신)의 성능을 개선하기 위해 VM에 추가 호스트 RAM을 할당할 수 있습니다. 마찬가지로 VM에 할당된 메모리 양을 감소시켜 호스트 메모리를 다른 VM 또는 작업에 할당할 수 있습니다.
이러한 작업을 수행하려면 웹 콘솔 또는 명령줄 인터페이스를 사용할 수 있습니다.
13.4.1. 웹 콘솔을 사용하여 가상 머신 메모리 추가 및 제거
VM(가상 머신)의 성능을 개선하거나 사용 중인 호스트 리소스를 확보하기 위해 웹 콘솔을 사용하여 VM에 할당된 메모리 양을 조정할 수 있습니다.
사전 요구 사항
RHEL 9 웹 콘솔을 설치했습니다.
자세한 내용은 웹 콘솔 설치 및 활성화를 참조하십시오.
게스트 OS는 메모리 balloon 드라이버를 실행하고 있습니다. 이 경우를 확인하려면 다음을 수행하십시오.
VM 구성에
memballoon
장치가 포함되어 있는지 확인합니다.# virsh dumpxml testguest | grep memballoon <memballoon model='virtio'> </memballoon>
이 명령이 모든 출력을 표시하고 모델이
none
으로 설정되지 않은 경우memballoon
장치가 있습니다.게스트 OS에서 balloon 드라이버가 실행 중인지 확인합니다.
-
Windows 게스트에서 드라이버는
virtio-win
드라이버 패키지의 일부로 설치됩니다. 자세한 내용은 Windows 가상 머신용 반가상화 KVM 드라이버 설치를 참조하십시오. -
Linux 게스트에서는 일반적으로 드라이버가 기본적으로 포함되어 있으며
memballoon
장치가 있을 때 활성화됩니다.
-
Windows 게스트에서 드라이버는
- 웹 콘솔 VM 플러그인이 시스템에 설치되어 있습니다.
절차
선택 사항: VM에 대해 최대 메모리 및 현재 사용된 메모리에 대한 정보를 가져옵니다. 이는 변경 사항에 대한 기준선 역할을 하고 확인을 위한 역할을 합니다.
# virsh dominfo testguest Max memory: 2097152 KiB Used memory: 2097152 KiB
RHEL 9 웹 콘솔에 로그인합니다.
자세한 내용은 웹 콘솔에 로그인 을 참조하십시오.
선택한 VM 및 콘솔 섹션에 대한 기본 정보가 포함된 개요 섹션이 있는 새 페이지가 열리고 VM의 그래픽 인터페이스에 액세스합니다.
개요 창에서
Memory
행 옆에 있는 을 클릭합니다.메모리 조정
대화 상자가 표시됩니다.선택한 VM의 가상 메모리를 구성합니다.
최대 할당 - VM에서 프로세스에 사용할 수 있는 최대 호스트 메모리 양을 설정합니다. VM을 생성할 때 최대 메모리를 지정하거나 나중에 늘릴 수 있습니다. 메모리를 다수의 MiB 또는 GiB로 지정할 수 있습니다.
최대 메모리 할당 조정은 종료된 VM에서만 가능합니다.
현재 할당 - VM에 할당된 실제 메모리 양을 설정합니다. 이 값은 최대 할당보다 작을 수 있지만 초과할 수는 없습니다. 해당 프로세스에 대해 VM에서 사용할 수 있는 메모리를 규제하도록 값을 조정할 수 있습니다. 메모리를 다수의 MiB 또는 GiB로 지정할 수 있습니다.
이 값을 지정하지 않으면 기본 할당은 최대 할당 값입니다.
VM의 메모리 할당이 조정됩니다.
13.4.2. 명령줄 인터페이스를 사용하여 가상 머신 메모리 추가 및 제거
VM(가상 머신)의 성능을 개선하거나 사용 중인 호스트 리소스를 확보하기 위해 CLI를 사용하여 VM에 할당된 메모리 양을 조정할 수 있습니다.
사전 요구 사항
게스트 OS는 메모리 balloon 드라이버를 실행하고 있습니다. 이 경우를 확인하려면 다음을 수행하십시오.
VM 구성에
memballoon
장치가 포함되어 있는지 확인합니다.# virsh dumpxml testguest | grep memballoon <memballoon model='virtio'> </memballoon>
이 명령이 모든 출력을 표시하고 모델이
none
으로 설정되지 않은 경우memballoon
장치가 있습니다.게스트 OS에서 ballon 드라이버가 실행 중인지 확인합니다.
-
Windows 게스트에서 드라이버는
virtio-win
드라이버 패키지의 일부로 설치됩니다. 자세한 내용은 Windows 가상 머신용 반가상화 KVM 드라이버 설치를 참조하십시오. -
Linux 게스트에서는 일반적으로 드라이버가 기본적으로 포함되어 있으며
memballoon
장치가 있을 때 활성화됩니다.
-
Windows 게스트에서 드라이버는
절차
선택 사항: VM에 대해 최대 메모리 및 현재 사용된 메모리에 대한 정보를 가져옵니다. 이는 변경 사항에 대한 기준선 역할을 하고 확인을 위한 역할을 합니다.
# virsh dominfo testguest Max memory: 2097152 KiB Used memory: 2097152 KiB
VM에 할당된 최대 메모리를 조정합니다. 이 값을 늘리면 VM의 성능 가능성이 향상되고, VM이 호스트에 있는 성능 풋프린트를 줄일 수 있습니다. 이 변경 사항은 종료된 VM에서만 수행할 수 있으므로 실행 중인 VM을 조정하는 작업을 적용하려면 재부팅이 필요합니다.
예를 들어 testguest VM에서 사용할 수 있는 최대 메모리를 4096MiB로 변경하려면 다음을 수행합니다.
# virt-xml testguest --edit --memory memory=4096,currentMemory=4096 Domain 'testguest' defined successfully. Changes will take effect after the domain is fully powered off.
실행 중인 VM의 최대 메모리를 늘리려면 메모리 장치를 VM에 연결할 수 있습니다. 이를 메모리 핫 플러그 라고도 합니다. 자세한 내용은 가상 머신에 장치 연결을 참조하십시오.
주의실행 중인 VM(메모리 핫 언플러그라고도 함)에서 메모리 장치를 제거하는 것은 지원되지 않으며 Red Hat은 크게 권장되지 않습니다.
선택 사항: VM에서 현재 사용하는 메모리를 최대 할당까지 조정할 수도 있습니다. 이렇게 하면 최대 VM 할당을 변경하지 않고 다음 재부팅까지 VM에 있는 메모리 로드가 조정됩니다.
# virsh setmem testguest --current 2048
검증
VM에서 사용하는 메모리가 업데이트되었는지 확인합니다.
# virsh dominfo testguest Max memory: 4194304 KiB Used memory: 2097152 KiB
선택 사항: 현재 VM 메모리를 조정하면 VM의 메모리 balloon 통계를 가져와 메모리 사용을 얼마나 효과적으로 규제하는지 평가할 수 있습니다.
# virsh domstats --balloon testguest Domain: 'testguest' balloon.current=365624 balloon.maximum=4194304 balloon.swap_in=0 balloon.swap_out=0 balloon.major_fault=306 balloon.minor_fault=156117 balloon.unused=3834448 balloon.available=4035008 balloon.usable=3746340 balloon.last-update=1587971682 balloon.disk_caches=75444 balloon.hugetlb_pgalloc=0 balloon.hugetlb_pgfail=0 balloon.rss=1005456
13.4.3. virtio-mem을 사용하여 가상 머신 메모리 추가 및 제거
RHEL 9에서는 virtio-mem
반가상화 메모리 장치를 제공합니다. 이 장치를 사용하면 VM(가상 머신)에서 호스트 메모리를 동적으로 추가하거나 제거할 수 있습니다. 예를 들어 virtio-mem
을 사용하여 실행 중인 VM 간에 메모리 리소스를 이동하거나 현재 요구 사항에 따라 클라우드 설정에서 VM 메모리 크기를 조정할 수 있습니다.
13.4.3.1. virtio-mem 개요
virtio-mem
은 VM(가상 머신)에서 호스트 메모리를 동적으로 추가하거나 제거하는 데 사용할 수 있는 반가상화 메모리 장치입니다. 예를 들어 이 장치를 사용하여 실행 중인 VM 간에 메모리 리소스를 이동하거나 현재 요구 사항에 따라 클라우드 설정에서 VM 메모리 크기를 조정할 수 있습니다.
virtio-mem
을 사용하면 VM의 메모리를 초기 크기 이상으로 늘리고 크기를 4~백 메비바이트(MiB)로 만들 수 있는 단위로 원래 크기로 축소할 수 있습니다. 그러나 virtio-mem
은 특히 메모리를 안정적으로 연결 해제하기 위해 특정 게스트 운영 체제 구성에도 의존합니다.
virtio-mem 기능 제한 사항
virtio-mem
은 현재 다음 기능과 호환되지 않습니다.
- 호스트에서 실시간 애플리케이션에 메모리 잠금 사용
- 호스트에서 암호화된 가상화 사용
-
virtio-mem
과memballoon
인플레이션 및 호스트의 조각 결합 -
VM에서
virtio_mem
드라이버를 언로드하거나 다시 로드 -
virtiofs
를 제외하고 vhost-user 장치 사용
13.4.3.2. 가상 머신에서 메모리 설정
virtio-mem
을 사용하여 실행 중인 가상 머신(메모리 핫플러그라고도 함)에 메모리를 연결하기 전에 가상 머신(VM) 운영 체제를 구성하여 핫플러그 메모리를 온라인 상태로 자동으로 설정해야 합니다. 그렇지 않으면 게스트 운영 체제가 추가 메모리를 사용할 수 없습니다. 메모리 설정에 대해 다음 구성 중 하나를 선택할 수 있습니다.
-
online_movable
-
online_kernel
-
auto-movable
이러한 구성 의 차이점에 대한 자세한 내용은 메모리 위치 지정 구성 비교를 참조하십시오.
메모리 강화는 RHEL에서 기본적으로 udev 규칙으로 구성됩니다. 그러나 virtio-mem
을 사용하는 경우 커널에서 직접 메모리 부여를 구성하는 것이 좋습니다.
사전 요구 사항
- 호스트에는 Intel 64 또는 AMD64 CPU 아키텍처가 있습니다.
- 호스트는 RHEL 9.4 이상을 운영 체제로 사용합니다.
호스트에서 실행되는 VM은 다음 운영 체제 버전 중 하나를 사용합니다.
RHEL 8.10
중요RHEL 8.10 VM에서는 실행 중인 VM에서 메모리 연결을 해제하는 것이 기본적으로 비활성화되어 있습니다.
- RHEL 9
절차
VM에서
online_movable
구성을 사용하도록 메모리 설정:memhp_default_state
커널 명령행 매개변수를online_movable
:로 설정합니다.# grubby --update-kernel=ALL --remove-args=memhp_default_state --args=memhp_default_state=online_movable
- VM을 재부팅합니다.
VM에서
online_kernel
구성을 사용하도록 메모리 설정:memhp_default_state
커널 명령줄 매개 변수를online_kernel
:로 설정합니다.# grubby --update-kernel=ALL --remove-args=memhp_default_state --args=memhp_default_state=online_kernel
- VM을 재부팅합니다.
VM에서
자동 이동식
메모리 설정 정책을 사용하려면 다음을 수행합니다.memhp_default_state
커널 명령행 매개변수를online
로 설정합니다.# grubby --update-kernel=ALL --remove-args=memhp_default_state --args=memhp_default_state=online
memory_hotplug.online_policy
커널 명령줄 매개 변수를auto-movable
:로 설정합니다.# grubby --update-kernel=ALL --remove-args="memory_hotplug.online_policy" --args=memory_hotplug.online_policy=auto-movable
선택 사항:
auto-movable
설정 정책을 추가로 조정하려면memory_hotplug.auto_movable_ratio
및memory_hotplug.auto_movable_numa_aware
매개변수를 변경합니다.# grubby --update-kernel=ALL --remove-args="memory_hotplug.auto_movable_ratio" --args=memory_hotplug.auto_movable_ratio=<percentage> # grubby --update-kernel=ALL --remove-args="memory_hotplug.memory_auto_movable_numa_aware" --args=memory_hotplug.auto_movable_numa_aware=<y/n>
-
memory_hotplug.auto_movable_ratio 매개변수는
모든 할당에 사용 가능한 메모리와 비교하여 이동 가능한 할당에만 사용할 수 있는 최대 메모리 비율을 설정합니다. 비율은 백분율로 표시되고 기본값은 301 (%)이며 이는 3 : 1 비율입니다. memory_hotplug.auto_movable_numa_aware
매개변수는memory_hotplug.auto_movable_ratio
매개변수가 모든 사용 가능한 NUMA 노드의 메모리에 적용되거나 단일 NUMA 노드 내의 메모리에만 적용되는지 여부를 제어합니다. 기본값은 y (yes)입니다.예를 들어, 최대 비율이 301%로 설정되고
memory_hotplug.auto_movable_numa_aware
가 y (yes)로 설정된 경우, 연결된virtio-mem
장치가 있는 NUMA 노드 내에서도 적용됩니다. 매개변수가 n (아니오)로 설정된 경우 최대 3:1 비율은 전체 NUMA 노드에만 적용됩니다.또한 비율이 초과되지 않은 경우 새로 핫플러그된 메모리는 이동 가능한 할당에만 사용할 수 있습니다. 그렇지 않으면 이동 가능 및 실행 불가능한 할당 모두에 새로 핫플러그된 메모리를 사용할 수 있습니다.
-
- VM을 재부팅합니다.
검증
online_movable
구성이 올바르게 설정되었는지 확인하려면memhp_default_state
커널 매개변수의 현재 값을 확인합니다.# cat /sys/devices/system/memory/auto_online_blocks online_movable
online_kernel
구성이 올바르게 설정되었는지 확인하려면memhp_default_state
커널 매개변수의 현재 값을 확인합니다.# cat /sys/devices/system/memory/auto_online_blocks online_kernel
자동 이동식
구성이 올바르게 설정되었는지 확인하려면 다음 커널 매개변수를 확인합니다.memhp_default_state
:# cat /sys/devices/system/memory/auto_online_blocks online
memory_hotplug.online_policy
:# cat /sys/module/memory_hotplug/parameters/online_policy auto-movable
memory_hotplug.auto_movable_ratio
:# cat /sys/module/memory_hotplug/parameters/auto_movable_ratio 301
memory_hotplug.auto_movable_numa_aware
:# cat /sys/module/memory_hotplug/parameters/auto_movable_numa_aware y
13.4.3.3. 가상 머신에 virtio-mem 장치 연결
실행 중인 가상 시스템(메모리 핫플러그라고도 함)에 추가 메모리를 연결하고 핫플러그 메모리의 크기를 조정하려면 virtio-mem
장치를 사용할 수 있습니다. 특히 libvirt XML 구성 파일과 virsh
명령을 사용하여 virtio-mem
장치를 정의하고 VM(가상 머신)에 연결할 수 있습니다.
사전 요구 사항
- 호스트에는 Intel 64 또는 AMD64 CPU 아키텍처가 있습니다.
- 호스트는 RHEL 9.4 이상을 운영 체제로 사용합니다.
호스트에서 실행되는 VM은 다음 운영 체제 버전 중 하나를 사용합니다.
RHEL 8.10
중요RHEL 8.10 VM에서는 실행 중인 VM에서 메모리 연결을 해제하는 것이 기본적으로 비활성화되어 있습니다.
- RHEL 9
- VM에 메모리 강화가 구성되어 있습니다. 자세한 내용은 가상 머신의 메모리 설정 구성을참조하십시오.
절차
대상 VM의 XML 구성에
maxMemory
매개변수가 포함되어 있는지 확인합니다.# virsh edit testguest1 <domain type='kvm'> <name>testguest1</name> ... <maxMemory unit='GiB'>128</maxMemory> ... </domain>
이 예제에서
testguest1
VM의 XML 구성은 128GB(GiB) 크기의maxMemory
매개변수를 정의합니다.maxMemory
크기는 VM에서 사용할 수 있는 최대 메모리를 지정합니다. 여기에는 초기 및 핫플러그된 메모리가 모두 포함됩니다.XML 파일을 생성하고 열어 호스트에
virtio-mem
장치를 정의합니다. 예를 들면 다음과 같습니다.# vim virtio-mem-device.xml
virtio-mem
장치의 XML 정의를 파일에 추가하고 저장합니다.<memory model='virtio-mem'> <target> <size unit='GiB'>48</size> <node>0</node> <block unit='MiB'>2</block> <requested unit='GiB'>16</requested> <current unit='GiB'>16</current> </target> <alias name='ua-virtiomem0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </memory> <memory model='virtio-mem'> <target> <size unit='GiB'>48</size> <node>1</node> <block unit='MiB'>2</block> <requested unit='GiB'>0</requested> <current unit='GiB'>0</current> </target> <alias name='ua-virtiomem1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </memory>
이 예에서는 두 개의
virtio-mem
장치는 다음 매개변수를 사용하여 정의됩니다.-
size
: 장치의 최대 크기입니다. 이 예제에서는 48GiB입니다.크기는
블록
크기의 배수여야 합니다. -
node
:virtio-mem
장치에 할당된 vNUMA 노드입니다. -
block
: 장치의 블록 크기입니다. Intel 64 또는 AMD64 CPU 아키텍처에서는 최소 THP(Transparent Huge Page) 크기여야 합니다. Intel 64 또는 AMD64 아키텍처의 2MiB 블록 크기는 일반적으로 좋은 선택입니다. VFIO(가상 기능 I/O) 또는 중재 장치(mdev) 와 함께virtio-mem
을 사용하는 경우 모든virtio-mem
장치의 총 블록 수가 32768보다 크지 않아야 합니다. 그렇지 않으면 RAM 연결이 실패할 수 있습니다. -
requested
:virtio-mem
장치를 사용하여 VM에 연결하는 메모리 양입니다. 그러나 VM에 대한 요청일 뿐이며 VM이 올바르게 구성되지 않은 경우와 같이 성공적으로 해결되지 않을 수 있습니다.요청된
크기는블록
크기의 배수여야 하며 정의된 최대 크기를 초과할 수 없습니다. -
Current
:virtio-mem
장치가 VM에 제공하는 현재 크기를 나타냅니다.현재
크기는 요청을 완료할 수 없거나 VM을 재부팅할 때와 같이요청된
크기와 다를 수 있습니다. alias
: 이 별칭은 원하는virtio-mem
장치를 지정하는 데 사용할 수 있는 선택적 사용자 정의 별칭입니다(예: libvirt 명령으로 장치를 편집할 때). libvirt의 모든 사용자 정의 별칭은 "ua-" 접두사로 시작해야 합니다.libvirt
는 이러한 특정 매개 변수 외에도 다른 PCI 장치와 마찬가지로virtio-mem
장치를 처리합니다.
-
XML 파일을 사용하여 정의된
virtio-mem
장치를 VM에 연결합니다. 예를 들어virtio-mem-device.xml
에 정의된 두 장치를 실행 중인testguest1
VM에 영구적으로 연결하려면 다음을 수행합니다.# virsh attach-device testguest1 virtio-mem-device.xml --live --config
--live
옵션은 부팅 간 지속성 없이 실행 중인 VM에만 장치를 연결합니다.--config
옵션을 사용하면 구성을 영구적으로 변경합니다.--live
옵션 없이 시스템을 종료 VM에 연결할 수도 있습니다.선택 사항: 실행 중인 VM에 연결된
virtio-mem
장치의requested
크기를 동적으로 변경하려면virsh update-memory-device
명령을 사용합니다.# virsh update-memory-device testguest1 --alias ua-virtiomem0 --requested-size 4GiB
이 예제에서는 다음을 수행합니다.
-
testguest1
은 업데이트할 VM입니다. -
--alias ua-virtiomem0
은 이전에 정의된 별칭으로 지정된virtio-mem
장치입니다. --requested-size 4GiB
는virtio-mem
장치의요청된
크기를 4GiB로 변경합니다.주의요청된 크기를 줄임으로써 실행 중인 VM에서 메모리를 분리하면
신뢰할 수 없습니다. 이 프로세스가 성공했는지 여부는 사용되는 메모리 전달 정책과 같은 다양한 요인에 따라 달라집니다.핫플러그 메모리 양을 변경할 수 없기 때문에 게스트 운영 체제가 요청을 성공적으로 완료할 수 없는 경우도 있습니다.
또한 RHEL 8.10 VM에서는 실행 중인 VM에서 메모리 연결을 해제하는 것이 기본적으로 비활성화되어 있습니다.
-
선택 사항: 종료 VM에서
virtio-mem
장치를 분리하려면virsh detach-device
명령을 사용합니다.# virsh detach-device testguest1 virtio-mem-device.xml
선택 사항: 실행 중인 VM에서
virtio-mem
장치를 분리하려면 다음을 수행합니다.virtio-mem
장치의요청된
크기를 0으로 변경합니다. 그러지 않으면 실행 중인 VM에서virtio-mem
장치를 분리하려는 시도가 실패합니다.# virsh update-memory-device testguest1 --alias ua-virtiomem0 --requested-size 0
실행 중인 VM에서
virtio-mem
장치를 분리합니다.# virsh detach-device testguest1 virtio-mem-device.xml
검증
VM에서 사용 가능한 RAM을 확인하고 총 크기에 핫플러그 메모리가 포함되어 있는지 확인합니다.
# free -h total used free shared buff/cache available Mem: 31Gi 5.5Gi 14Gi 1.3Gi 11Gi 23Gi Swap: 8.0Gi 0B 8.0Gi
# numactl -H available: 1 nodes (0) node 0 cpus: 0 1 2 3 4 5 6 7 node 0 size: 29564 MB node 0 free: 13351 MB node distances: node 0 0: 10
현재 플러그인 RAM 양은 실행 중인 VM의 XML 구성을 표시하여 호스트에서도 볼 수 있습니다.
# virsh dumpxml testguest1 <domain type='kvm'> <name>testguest1</name> ... <currentMemory unit='GiB'>31</currentMemory> ... <memory model='virtio-mem'> <target> <size unit='GiB'>48</size> <node>0</node> <block unit='MiB'>2</block> <requested unit='GiB'>16</requested> <current unit='GiB'>16</current> </target> <alias name='ua-virtiomem0'/> <address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/> ... </domain>
이 예제에서는 다음을 수행합니다.
-
<
currentMemory unit='GiB'>31</currentMemory
>은 모든 소스의 VM에서 사용 가능한 총 RAM을 나타냅니다. -
<current unit='GiB'>16</current
>는virtio-mem
장치에서 제공하는 플러그인 RAM의 현재 크기를 나타냅니다.
-
<
추가 리소스
13.4.3.4. 메모리 설정 비교
실행 중인 RHEL 가상 머신(메모리 핫플러그라고도 함)에 메모리를 연결할 때 핫플러그 메모리를 VM(가상 머신) 운영 체제의 온라인 상태로 설정해야 합니다. 그렇지 않으면 시스템이 메모리를 사용할 수 없습니다.
다음 표에는 사용 가능한 메모리 설정 중에서 선택할 때 고려해야 할 사항이 요약되어 있습니다.
구성 이름 | VM에서 메모리 연결 해제 | 메모리 영역의 불균형을 생성할 수 있는 위험 | 잠재적 사용 사례 | 의도된 워크로드의 메모리 요구 사항 |
---|---|---|---|---|
| 핫플러그 메모리는 안정적으로 연결 해제될 수 있습니다. | 있음 | 비교적 적은 양의 메모리를 핫플러그 | 대부분의 사용자 공간 메모리 |
| 핫플러그 메모리의 이동 가능한 부분은 안정적으로 연결되지 않을 수 있습니다. | 최소 | 대량의 메모리 핫플러그 | 대부분의 사용자 공간 메모리 |
| 핫플러그된 메모리는 안정적으로 연결 해제될 수 없습니다. | 없음 | 신뢰할 수 없는 메모리 연결 해제가 허용됩니다. | 사용자 공간 또는 커널 공간 메모리 |
영역의 불균형은 Linux 메모리 영역 중 하나에서 사용 가능한 메모리 페이지가 없다는 것입니다. 영역의 불균형은 시스템 성능에 부정적인 영향을 미칠 수 있습니다. 예를 들어, 불가능한 할당에 대해 사용 가능한 메모리가 부족하면 커널이 충돌할 수 있습니다. 일반적으로 이동 가능한 할당에는 대부분 사용자 공간 메모리 페이지가 포함되어 있으며 불가능한 할당에는 대부분 커널 공간 메모리 페이지가 포함됩니다.
13.4.4. 추가 리소스
- 장치를 가상 머신에 연결하는 가상 머신에 장치 연결.