13.4. 가상 머신에 스토리지 연결
VM(가상 머신)에 스토리지를 추가하려면 가상 디스크로 VM에 스토리지 리소스를 연결할 수 있습니다. 물리적 스토리지 장치와 유사하게 가상 디스크는 연결된 VM과 독립적이며 다른 VM으로 이동할 수 있습니다.
여러 유형의 스토리지 리소스를 사용하여 가상 디스크를 VM에 추가할 수 있습니다.
13.4.1. 명령줄을 사용하여 가상 머신에 파일 기반 가상 디스크 연결 링크 복사링크가 클립보드에 복사되었습니다!
가상 머신에 로컬 스토리지를 제공하기 위해 가장 쉬운 옵션은 일반적으로 .qcow2 또는 .raw 형식으로 파일 기반 가상 디스크를 연결하는 것입니다.
명령줄에서 이를 수행하려면 다음 방법 중 하나를 사용할 수 있습니다.
libvirt에서 관리하는 디렉터리 기반 스토리지 풀에 파일 기반 스토리지 볼륨을 생성합니다. 이를 위해서는 여러 단계가 필요하지만 하이퍼바이저와 보다 효과적으로 통합됩니다.RHEL 10 호스트에서 첫 번째 VM을 생성할 때 기본 디렉터리 기반 스토리지 볼륨이 자동으로 생성됩니다. 이 스토리지 풀의 이름은 디스크 이미지를 저장하는 디렉터리의 이름을 기반으로 합니다. 예를 들어
libvirt의시스템세션에서 디스크 이미지는/var/lib/libvirt/images/디렉터리에 저장되고 스토리지 풀의 이름은images입니다.qemu-img명령을 사용하여 호스트 파일 시스템에 가상 디스크를 파일로 생성합니다. 이 방법은 더 빠른 방법이지만libvirt와의 통합을 제공하지 않습니다.결과적으로
qemu-img를 사용하여 생성된 가상 디스크는 생성 후 관리하기가 더 어렵습니다.
명령줄에서 새 VM을 생성할 때 파일 기반 가상 디스크를 생성하고 연결할 수도 있습니다. 이렇게 하려면 virt-install 유틸리티와 함께 --disk 옵션을 사용합니다. 자세한 내용은 가상 머신 생성 을 참조하십시오.
프로세스
선택 사항: 가상 디스크를 스토리지 볼륨으로 생성하지만 호스트에서 기본
이미지스토리지 풀 또는 다른 기존 스토리지 풀을 사용하지 않으려면 새 디렉터리 기반 스토리지 풀을 생성하고 설정합니다.디렉터리 유형 스토리지 풀을 구성합니다. 예를 들어
/guest_images디렉터리를 사용하는guest_images_dir이라는 스토리지 풀을 생성하려면 다음을 수행합니다.# virsh pool-define-as guest_images_dir dir --target "/guest_images" Pool guest_images_dir defined이전에 정의한 구성을 기반으로 스토리지 풀의 대상 경로를 생성합니다.
# virsh pool-build guest_images_dir Pool guest_images_dir built스토리지 풀을 시작합니다.
# virsh pool-start guest_images_dir Pool guest_images_dir started선택 사항: 호스트 부팅 시 시작되도록 스토리지 풀을 설정합니다.
# virsh pool-autostart guest_images_dir Pool guest_images_dir marked as autostarted선택 사항: 스토리지 풀이
실행 중인지확인합니다. 보고된 크기가 예상대로 있는지 그리고 autostart가 올바르게 구성되어 있는지 확인합니다.# virsh pool-info guest_images_dir Name: guest_images_dir UUID: c7466869-e82a-a66c-2187-dc9d6f0877d0 State: running Persistent: yes Autostart: yes Capacity: 458.39 GB Allocation: 197.91 MB Available: 458.20 GB
파일 기반 가상 디스크를 생성합니다. 이렇게 하려면 다음 방법 중 하나를 사용합니다.
libvirt에서 관리하지 않는 파일 기반 VM 디스크를 신속하게 생성하려면qemu-img유틸리티를 사용합니다.예를 들어 다음 명령은 크기가 30GB인 test-image 라는
qcow2디스크 이미지를 생성합니다.# qemu-img create -f qcow2 test-image 30G Formatting 'test-image', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=32212254720 lazy_refcounts=off refcount_bits=16libvirt에서 관리하는 파일 기반 VM 디스크를 만들려면 기존 디렉터리 기반 스토리지 풀을 기반으로 디스크를 스토리지 볼륨으로 정의합니다.예를 들어 다음 명령은
guest_images_dir스토리지 풀을 기반으로vm-disk1이라는 20GBqcow2볼륨을 생성합니다.# virsh vol-create-as --pool guest_images_dir --name vm-disk1 --capacity 20GB --format qcow2 Vol vm-disk1 created
생성한 가상 디스크를 찾습니다.
-
qemu-img를 사용하여 생성된 VM 디스크의 경우 일반적으로 현재 디렉터리입니다. 스토리지 볼륨의 경우 볼륨이 속하는 스토리지 풀을 검사합니다.
# virsh vol-list --pool guest_images_dir --details Name Path Type Capacity Allocation -------------------------------------------------------------------------- vm-disk1 /guest-images/vm-disk1 file 20.00 GiB 196.00 KiB
-
디스크를 연결할 VM에서 이미 사용되는 대상 장치를 찾습니다.
# virsh domblklist --details <vm-name> Type Device Target Source ---------------------------------------------------------------- file disk *vda /home/VirtualMachines/vm-name.qcow2 file cdrom vdb -- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
virsh attach-disk명령을 사용하여 VM에 디스크를 연결합니다. VM에서 사용하지 않는 대상 장치를 제공합니다.예를 들어 다음 명령은 이전에 생성된
test-disk1을 Cryostat장치로testguest1VM에 연결합니다.# virsh attach-disk testguest1 /guest-images/vm-disk1 vdc --persistent
검증
디스크를 연결한 VM의 XML 구성을 검사하여 구성이 올바른지 확인합니다.
# virsh dumpxml testguest1 ... <disk type='file' device='disk'> <driver name='qemu' type='qcow2' discard='unmap'/> <source file='/guest-images/vm-disk1' index='1'/> <backingStore/> <target dev='vdc' bus='virtio'/> <alias name='virtio-disk2'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> ...- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.2. 웹 콘솔을 사용하여 가상 머신에 파일 기반 가상 디스크 연결 링크 복사링크가 클립보드에 복사되었습니다!
가상 머신에 로컬 스토리지를 제공하기 위해 가장 쉬운 옵션은 일반적으로 .qcow2 또는 .raw 형식으로 파일 기반 가상 디스크를 연결하는 것입니다.
이렇게 하려면 libvirt 에서 관리하는 디렉터리 기반 스토리지 풀에 파일 기반 스토리지 볼륨을 만듭니다. RHEL 10 호스트에서 첫 번째 VM을 생성할 때 기본 디렉터리 기반 스토리지 볼륨이 자동으로 생성됩니다. 이 스토리지 풀의 이름은 디스크 이미지를 저장하는 디렉터리의 이름을 기반으로 합니다. 예를 들어 libvirt 의 시스템 세션에서 디스크 이미지는 /var/lib/libvirt/images/ 디렉터리에 저장되고 스토리지 풀의 이름은 images 입니다.
웹 콘솔에서 새 VM을 생성할 때 파일 기반 가상 디스크를 생성하고 연결할 수도 있습니다. 이렇게 하려면 가상 머신 생성 대화 상자에서 Storage 옵션을 사용합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.
사전 요구 사항
RHEL 10 웹 콘솔을 설치했습니다.
자세한 내용은 웹 콘솔 설치 및 활성화를 참조하십시오.
- 웹 콘솔 VM 플러그인이 시스템에 설치되어 있습니다.
프로세스
- RHEL 10 웹 콘솔에 로그인합니다.
선택 사항: 기본
이미지스토리지 풀을 사용하여 새 가상 디스크를 생성하지 않으려면 새 스토리지 풀을 생성합니다.-
가상 머신 인터페이스 상단에 있는
스토리지 풀을 클릭합니다.스토리지 풀 생성. - 스토리지 풀 생성 대화 상자에서 스토리지 풀의 이름을 입력합니다.
- 유형 드롭다운 메뉴에서 Filesystem 디렉토리를 선택합니다.
다음 정보를 입력합니다.
- 대상 경로 - 스토리지 풀의 위치입니다.
- startup - 호스트가 부팅될 때 스토리지 풀이 시작되는지의 여부입니다.
을 클릭합니다.
스토리지 풀이 생성되고 스토리지 풀 생성 대화 상자가 닫히면 새 스토리지 풀이 스토리지 풀 목록에 표시됩니다.
-
가상 머신 인터페이스 상단에 있는
기존 스토리지 풀을 기반으로 새 스토리지 볼륨을 생성합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
스토리지 볼륨 →.볼륨생성 스토리지 볼륨 생성 대화 상자에 다음 정보를 입력합니다.
- name - 스토리지 볼륨의 이름입니다.
- size - 스토리지 볼륨의 크기 (MiB 또는 GiB)입니다.
-
Format - 스토리지 볼륨의 형식입니다. 지원되는 유형은
qcow2및raw입니다.
- 을 클릭합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
생성된 스토리지 볼륨을 VM에 디스크로 추가합니다.
인터페이스에서 새 디스크를 생성하고 연결할 VM을 클릭합니다.
VM의 그래픽 인터페이스에 액세스하기 위한 선택한 VM 및 콘솔 섹션에 대한 기본 정보가 포함된 개요 섹션이 포함된 새 페이지가 열립니다.
- 디스크로 스크롤 .
- 디스크 섹션에서 추가 를 클릭합니다.
- 디스크 추가 대화 상자에서 선택합니다.
- 디스크에 사용할 스토리지 풀 및 스토리지 볼륨을 선택합니다.
디스크가 영구적인지 여부를 선택합니다.
참고임시 디스크는 실행 중인 VM에만 추가할 수 있습니다.
- 선택 사항: 클릭하고 스토리지 볼륨의 캐시 유형, 버스 유형 및 디스크 식별자를 조정합니다.
- 를 클릭합니다.
검증
- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.3. 명령줄을 사용하여 가상 머신에 디스크 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)의 로컬 스토리지를 제공하기 위해 디스크 기반 디스크 이미지를 사용할 수 있습니다. 이 유형의 디스크 이미지는 호스트의 디스크 파티션을 기반으로 하며 .qcow2 또는 .raw 형식을 사용합니다.
명령줄을 사용하여 디스크 기반 스토리지를 VM에 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
--disk옵션을 사용하여virt-install명령의 일부로 새 디스크를 생성하고 연결합니다. 자세한 내용은 가상 머신 생성 을 참조하십시오. - 기존 VM의 경우 디스크 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
사전 요구 사항
하이퍼바이저가 디스크 기반 스토리지 풀을 지원하는지 확인합니다.
# virsh pool-capabilities | grep "'disk' supported='yes'"명령이 출력을 표시하는 경우 디스크 기반 풀이 지원됩니다.
스토리지 풀을 기반으로 할 장치를 준비합니다. 이를 위해 파티션(예:
/dev/sdb1) 또는 LVM 볼륨을 선호합니다. VM에 전체 디스크 또는 블록 장치(예:/dev/sdb)에 대한 쓰기 액세스 권한이 있는 경우 VM은 이를 파티션하거나 자체 LVM 그룹을 만들 가능성이 있습니다. 이로 인해 호스트에 시스템 오류가 발생할 수 있습니다.그러나 스토리지 풀에 전체 블록 장치를 사용해야 하는 경우 Red Hat은 장치의 중요한 파티션을 GRUB의
os-prober기능으로부터 보호하는 것이 좋습니다. 이렇게 하려면/etc/default/grub파일을 편집하고 다음 구성 중 하나를 적용합니다.os-prober를 비활성화합니다.GRUB_DISABLE_OS_PROBER=trueos-prober가 사용하려는 파티션을 검색하지 못하도록 합니다. 예를 들면 다음과 같습니다.GRUB_OS_PROBER_SKIP_LIST="5ef6313a-257c-4d43@/dev/sdb1"
-
스토리지 풀을 생성하기 전에 선택한 스토리지 장치의 데이터를 백업합니다. 사용 중인
libvirt버전에 따라 디스크를 스토리지 풀로 전달하면 현재 디스크 장치에 저장된 모든 데이터를 다시 포맷하고 지울 수 있습니다.
프로세스
디스크 기반 스토리지 풀이 아직 없는 경우 새 디스크 기반 스토리지 풀을 생성하고 설정합니다.
디스크 유형 스토리지 풀을 정의하고 생성합니다. 다음 예제에서는 /dev/sdb 장치를 사용하고 /dev 디렉터리에 마운트되는
guest_images_disk라는 스토리지 풀을 생성합니다.# virsh pool-define-as guest_images_disk disk --source-format=gpt --source-dev=/dev/sdb --target /dev Pool guest_images_disk defined사전 포맷된 파일 시스템 스토리지 풀에 대한 스토리지 풀 대상 경로를 생성하고, 스토리지 소스 장치를 초기화하고, 데이터 형식을 정의합니다.
# virsh pool-build guest_images_disk Pool guest_images_disk built선택 사항: 풀이 생성되었는지 확인합니다.
# virsh pool-list --all Name State Autostart ----------------------------------------- default active yes guest_images_disk inactive no스토리지 풀을 시작합니다.
# virsh pool-start guest_images_disk Pool guest_images_disk started참고virsh pool-start명령은 영구 스토리지 풀에만 필요합니다. 임시 스토리지 풀은 생성될 때 자동으로 시작됩니다.선택 사항: 자동 시작을 활성화합니다.
기본적으로
virsh로 정의된 스토리지 풀은 가상화 서비스가 시작될 때마다 자동으로 시작되도록 설정되지 않습니다.virsh pool-autostart명령을 사용하여 스토리지 풀을 자동으로 시작하도록 구성합니다.# virsh pool-autostart guest_images_disk Pool guest_images_disk marked as autostarted
디스크 기반 스토리지 볼륨을 생성합니다. 예를 들어 다음 명령은
guest_images_disk스토리지 풀을 기반으로vm-disk1이라는 20GBqcow2볼륨을 생성합니다.# virsh vol-create-as --pool guest_images_disk --name sdb1 --capacity 20GB --format extended Vol vm-disk1 created스토리지 볼륨을 가상 디스크로 VM에 연결합니다.
생성한 스토리지 볼륨을 찾습니다. 이렇게 하려면 볼륨이 속하는 스토리지 풀을 검사합니다.
# virsh vol-list --pool guest_images_disk --details Name Path Type Capacity Allocation --------------------------------------------------------------------- sdb1 /dev/sdb1 block 20.00 GiB 20.00 GiB디스크를 연결할 VM에서 이미 사용되는 대상 장치를 찾습니다.
# virsh domblklist --details <vm-name> Type Device Target Source ---------------------------------------------------------------- file disk *vda /home/VirtualMachines/vm-name.qcow2 file cdrom vdb -- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
virsh attach-disk명령을 사용하여 VM에 디스크를 연결합니다. VM에서 사용하지 않는 대상 장치를 제공합니다.예를 들어 다음 명령은 이전에 생성된
vm-disk1을 Cryostat장치로testguest1VM에 연결합니다.# virsh attach-disk testguest1 /dev/sdb1 vdc --persistent
검증
디스크를 연결한 VM의 XML 구성을 검사하여 구성이 올바른지 확인합니다.
# virsh dumpxml testguest1 ... <disk type="block" device="disk"> <driver name="qemu" type="raw"/> <source dev="/dev/sdb1" index="2"/> <backingStore/> <target dev="vdc" bus="virtio"/> <alias name="virtio-disk2"/> <address type="pci" domain="0x0000" bus="0x07" slot="0x00" function="0x0"/> </disk> ...- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.4. 웹 콘솔을 사용하여 가상 머신에 디스크 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
가상 머신에 로컬 스토리지를 제공하기 위해 가장 쉬운 옵션은 일반적으로 .qcow2 또는 .raw 형식으로 파일 기반 가상 디스크를 연결하는 것입니다.
웹 콘솔을 사용하여 디스크 기반 스토리지를 VM에 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
가상 머신 생성 대화 상자에서연결합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.Storage옵션을 사용하여 새 디스크를 생성하고 - 기존 VM의 경우 디스크 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
사전 요구 사항
RHEL 10 웹 콘솔을 설치했습니다.
자세한 내용은 웹 콘솔 설치 및 활성화를 참조하십시오.
- 웹 콘솔 VM 플러그인이 시스템에 설치되어 있습니다.
프로세스
- RHEL 10 웹 콘솔에 로그인합니다.
디스크 기반 스토리지 풀이 아직 없는 경우 새 디스크 기반 스토리지 풀을 생성하고 설정합니다.
-
가상 머신 인터페이스 상단에 있는
스토리지 풀을 클릭합니다.스토리지 풀 생성. - 스토리지 풀 생성 대화 상자에서 스토리지 풀의 이름을 입력합니다.
유형 드롭다운 메뉴에서 물리적 디스크 장치를 선택합니다.
참고드롭다운 메뉴에 물리적 디스크 장치 옵션이 표시되지 않으면 하이퍼바이저에서 디스크 기반 스토리지 풀을 지원하지 않습니다.
다음 정보를 입력합니다.
- 대상 경로 - 대상 장치를 지정하는 경로입니다. 이는 스토리지 풀에 사용되는 경로가 됩니다.
-
소스 경로 - 스토리지 장치를 지정하는 경로입니다. 예를 들면
/dev/sdb입니다. - format - 파티션 테이블의 유형입니다.
- startup - 호스트가 부팅될 때 스토리지 풀이 시작되는지의 여부입니다.
을 클릭합니다.
스토리지 풀이 생성되고 스토리지 풀 생성 대화 상자가 닫히면 새 스토리지 풀이 스토리지 풀 목록에 표시됩니다.
-
가상 머신 인터페이스 상단에 있는
기존 스토리지 풀을 기반으로 새 스토리지 볼륨을 생성합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
스토리지 볼륨 →.볼륨생성 스토리지 볼륨 생성 대화 상자에 다음 정보를 입력합니다.
- name - 스토리지 볼륨의 이름입니다.
- size - 스토리지 볼륨의 크기 (MiB 또는 GiB)입니다.
- Format - 스토리지 볼륨의 형식입니다.
- 을 클릭합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
생성된 스토리지 볼륨을 VM에 디스크로 추가합니다.
인터페이스에서 새 디스크를 생성하고 연결할 VM을 클릭합니다.
VM의 그래픽 인터페이스에 액세스하기 위한 선택한 VM 및 콘솔 섹션에 대한 기본 정보가 포함된 개요 섹션이 포함된 새 페이지가 열립니다.
- 디스크로 스크롤 .
- 디스크 섹션에서 추가 를 클릭합니다.
- 디스크 추가 대화 상자에서 선택합니다.
- 디스크에 사용할 스토리지 풀 및 스토리지 볼륨을 선택합니다.
디스크가 영구적인지 여부를 선택합니다.
참고임시 디스크는 실행 중인 VM에만 추가할 수 있습니다.
- 선택 사항: 클릭하고 스토리지 볼륨의 캐시 유형, 버스 유형 및 디스크 식별자를 조정합니다.
- 를 클릭합니다.
검증
- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.5. 명령줄을 사용하여 가상 머신에 LVM 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)의 로컬 스토리지를 제공하기 위해 LVM 기반 스토리지 볼륨을 사용할 수 있습니다. 이 유형의 디스크 이미지는 LVM 볼륨 그룹을 기반으로 하며 .qcow2 또는 .raw 형식을 사용합니다.
명령줄을 사용하여 VM에 LVM 기반 스토리지를 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
가상 머신 생성 대화 상자에서연결합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.Storage옵션을 사용하여 새 디스크를 생성하고 - 기존 VM의 경우 LVM 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
LVM 기반 스토리지 볼륨에는 다음과 같은 제한 사항이 있습니다.
- LVM 기반 스토리지 풀은 LVM의 모든 유연성을 제공하지 않습니다.
-
LVM 기반 스토리지 풀은 볼륨 그룹입니다.
virsh유틸리티를 사용하여 볼륨 그룹을 생성할 수 있지만 이렇게 하면 생성된 볼륨 그룹에 하나의 장치만 있을 수 있습니다. 여러 장치가 있는 볼륨 그룹을 생성하려면 LVM 유틸리티를 사용하여 LVM을 사용하여 Linux에서 볼륨 그룹을 만드는 방법을 참조하십시오. -
LVM 기반 스토리지 풀에는 전체 디스크 파티션이 필요합니다.
virsh명령을 사용하여 새 파티션 또는 장치를 활성화하면 파티션이 포맷되고 모든 데이터가 삭제됩니다. 호스트의 기존 볼륨 그룹을 사용하는 경우 다음 절차와 같이 지워지지 않습니다.
사전 요구 사항
하이퍼바이저가 LVM 기반 스토리지 풀을 지원하는지 확인합니다.
# virsh pool-capabilities | grep "'logical' supported='yes'"명령이 출력을 표시하는 경우 LVM 기반 풀이 지원됩니다.
- 호스트에 LVM 볼륨 그룹이 있는지 확인합니다. 하나를 만드는 방법에 대한 지침 은 LVM 볼륨 그룹 생성 을 참조하십시오.
- 스토리지 풀을 생성하기 전에 선택한 스토리지 장치의 데이터를 백업합니다. 디스크 파티션을 스토리지 풀에 분리하면 현재 디스크 장치에 저장된 모든 데이터를 다시 포맷하고 지웁니다.
프로세스
아직 없는 경우 새 LVM 기반 스토리지 풀을 생성하고 설정합니다.
LVM 유형 스토리지 풀을 정의합니다. 예를 들어 다음 명령은
lvm_vg볼륨 그룹을 사용하고/dev/lvm_vg디렉터리에 마운트된guest_images_lvm이라는 스토리지 풀을 정의합니다.# virsh pool-define-as guest_images_lvm logical --source-dev /dev/sdb --target /dev/lvm_vg Pool guest_images_lvm defined이전에 정의한 구성을 기반으로 스토리지 풀을 생성합니다.
# virsh pool-build guest_images_lvm Pool guest_images_lvm built선택 사항: 풀이 생성되었는지 확인합니다.
# virsh pool-list --all Name State Autostart ------------------------------------------- default active yes guest_images_lvm inactive no스토리지 풀을 시작합니다.
# virsh pool-start guest_images_lvm Pool guest_images_lvm started참고virsh pool-start명령은 영구 스토리지 풀에만 필요합니다. 임시 스토리지 풀은 생성될 때 자동으로 시작됩니다.선택 사항: 자동 시작을 활성화합니다.
기본적으로
virsh로 정의된 스토리지 풀은 가상화 서비스가 시작될 때마다 자동으로 시작되도록 설정되지 않습니다.virsh pool-autostart명령을 사용하여 스토리지 풀을 자동으로 시작하도록 구성합니다.# virsh pool-autostart guest_images_lvm Pool guest_images_lvm marked as autostarted
LVM 기반 스토리지 볼륨을 생성합니다. 예를 들어 다음 명령은
guest_images_lvm스토리지 풀을 기반으로vm-disk1이라는 20GBqcow2볼륨을 생성합니다.# virsh vol-create-as --pool guest_images_lvm --name vm-disk1 --capacity 20GB --format qcow2 Vol vm-disk1 created스토리지 볼륨을 가상 디스크로 VM에 연결합니다.
생성한 스토리지 볼륨을 찾습니다. 이렇게 하려면 볼륨이 속하는 스토리지 풀을 검사합니다.
# virsh vol-list --pool guest_images_lvm --details Name Path Type Capacity Allocation ----------------------------------------------------------------------------- vm-disk1 /dev/guest_images_lvm/vm-disk1 block 20.00 GiB 196.00 KiB디스크를 연결할 VM에서 이미 사용되는 대상 장치를 찾습니다.
# virsh domblklist --details <vm-name> Type Device Target Source ---------------------------------------------------------------- file disk *vda /home/VirtualMachines/vm-name.qcow2 file cdrom vdb -- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
virsh attach-disk명령을 사용하여 VM에 디스크를 연결합니다. VM에서 사용하지 않는 대상 장치를 제공합니다.예를 들어 다음 명령은 이전에 생성된
vm-disk1을 Cryostat장치로testguest1VM에 연결합니다.# virsh attach-disk testguest1 /dev/guest_images_lvm/vm-disk1 vdc --persistent
검증
디스크를 연결한 VM의 XML 구성을 검사하여 구성이 올바른지 확인합니다.
# virsh dumpxml testguest1 ... <disk type="block" device="disk"> <driver name="qemu" type="raw"/> <source dev="/dev/guest_images_lvm/vm-disk1" index="3"/> <backingStore/> <target dev="vdc" bus="virtio"/> <alias name="virtio-disk2"/> <address type="pci" domain="0x0000" bus="0x07" slot="0x00" function="0x0"/> </disk> ...- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.6. 웹 콘솔을 사용하여 가상 머신에 LVM 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)의 로컬 스토리지를 제공하기 위해 LVM 기반 스토리지 볼륨을 사용할 수 있습니다. 이 유형의 디스크 이미지는 LVM 볼륨 그룹을 기반으로 하며 .qcow2 또는 .raw 형식을 사용합니다.
웹 콘솔을 사용하여 디스크 기반 스토리지를 VM에 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
가상 머신 생성 대화 상자에서연결합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.Storage옵션을 사용하여 새 디스크를 생성하고 - 기존 VM의 경우 LVM 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
LVM 기반 스토리지 볼륨에는 다음과 같은 제한 사항이 있습니다.
- LVM 기반 스토리지 풀은 LVM의 모든 유연성을 제공하지 않습니다.
-
LVM 기반 스토리지 풀은 볼륨 그룹입니다.
virsh유틸리티를 사용하여 볼륨 그룹을 생성할 수 있지만 이렇게 하면 생성된 볼륨 그룹에 하나의 장치만 있을 수 있습니다. 여러 장치가 있는 볼륨 그룹을 생성하려면 LVM 유틸리티를 사용하여 LVM을 사용하여 Linux에서 볼륨 그룹을 만드는 방법을 참조하십시오. -
LVM 기반 스토리지 풀에는 전체 디스크 파티션이 필요합니다.
virsh명령을 사용하여 새 파티션 또는 장치를 활성화하면 파티션이 포맷되고 모든 데이터가 삭제됩니다. 호스트의 기존 볼륨 그룹을 사용하는 경우 다음 절차와 같이 지워지지 않습니다.
사전 요구 사항
RHEL 10 웹 콘솔을 설치했습니다.
자세한 내용은 웹 콘솔 설치 및 활성화를 참조하십시오.
- 웹 콘솔 VM 플러그인이 시스템에 설치되어 있습니다.
- 호스트에 LVM 볼륨 그룹이 있습니다. 하나를 만드는 방법에 대한 지침 은 LVM 볼륨 그룹 생성 을 참조하십시오.
프로세스
- RHEL 10 웹 콘솔에 로그인합니다.
새 디렉터리 기반 스토리지 풀이 없는 경우 새 디렉터리 기반 스토리지 풀을 생성하고 설정합니다.
-
가상 머신 인터페이스 상단에 있는
스토리지 풀을 클릭합니다.스토리지 풀 생성. - 스토리지 풀 생성 대화 상자에서 스토리지 풀의 이름을 입력합니다.
유형 드롭다운 메뉴에서 LVM 볼륨 그룹을 선택합니다.
참고드롭다운 메뉴에 LVM 볼륨 그룹 옵션이 표시되지 않으면 하이퍼바이저에서 디스크 기반 스토리지 풀을 지원하지 않습니다.
다음 정보를 입력합니다.
- 소스 볼륨 그룹 - 사용하려는 LVM 볼륨 그룹의 이름입니다.
- startup - 호스트가 부팅될 때 스토리지 풀이 시작되는지의 여부입니다.
을 클릭합니다.
스토리지 풀이 생성되고 스토리지 풀 생성 대화 상자가 닫히면 새 스토리지 풀이 스토리지 풀 목록에 표시됩니다.
-
가상 머신 인터페이스 상단에 있는
기존 스토리지 풀을 기반으로 새 스토리지 볼륨을 생성합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
스토리지 볼륨 →.볼륨생성 스토리지 볼륨 생성 대화 상자에 다음 정보를 입력합니다.
- name - 스토리지 볼륨의 이름입니다.
- size - 스토리지 볼륨의 크기 (MiB 또는 GiB)입니다.
-
Format - 스토리지 볼륨의 형식입니다. 지원되는 유형은
qcow2및raw입니다.
- 을 클릭합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
생성된 스토리지 볼륨을 VM에 디스크로 추가합니다.
인터페이스에서 새 디스크를 생성하고 연결할 VM을 클릭합니다.
VM의 그래픽 인터페이스에 액세스하기 위한 선택한 VM 및 콘솔 섹션에 대한 기본 정보가 포함된 개요 섹션이 포함된 새 페이지가 열립니다.
- 디스크로 스크롤 .
- 디스크 섹션에서 추가 를 클릭합니다.
- 디스크 추가 대화 상자에서 선택합니다.
- 디스크에 사용할 스토리지 풀 및 스토리지 볼륨을 선택합니다.
디스크가 영구적인지 여부를 선택합니다.
참고임시 디스크는 실행 중인 VM에만 추가할 수 있습니다.
- 선택 사항: 클릭하고 스토리지 볼륨의 캐시 유형, 버스 유형 및 디스크 식별자를 조정합니다.
- 를 클릭합니다.
검증
- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.7. 명령줄을 사용하여 가상 머신에 NFS 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)의 네트워크 스토리지를 제공하기 위해 NFS(Network File Sytem) 서버를 기반으로 스토리지 볼륨을 사용할 수 있습니다.
명령줄을 사용하여 NFS 기반 스토리지를 VM에 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
가상 머신 생성 대화 상자에서연결합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.Storage옵션을 사용하여 새 디스크를 생성하고 - 기존 VM의 경우 NFS 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
사전 요구 사항
하이퍼바이저가 NFS 기반 스토리지 풀을 지원하는지 확인합니다.
# virsh pool-capabilities | grep "<value>nfs</value>"명령이 출력을 표시하는 경우 NFS 기반 풀이 지원됩니다.
- 사용할 수 있는 사용 가능한 NFS가 있어야 합니다. 자세한 내용은 NFS 공유 마운트를참조하십시오.
프로세스
아직 없는 경우 새 NFS 기반 스토리지 풀을 생성하고 설정합니다.
NFS 유형 스토리지 풀을 정의하고 생성합니다. 예를 들어 대상 디렉토리
/var/lib/libvirt/images/nfspool을 사용하여 서버 디렉토리/home/net_mount에 마운트된 IP111.222.111.222가 있는 NFS 서버를 사용하는guest_images_netfs라는 스토리지 풀을 생성하려면 다음을 실행합니다.# virsh pool-define-as --name guest_images_netfs \ --type netfs --source-host='111.222.111.222' \ --source-path='/home/net_mount' --source-format='nfs' \ --target='/var/lib/libvirt/images/nfspool' Pool guest_images_netfs defined이전에 정의한 구성을 기반으로 스토리지 풀을 생성합니다.
# virsh pool-build guest_images_netfs Pool guest_images_netfs built선택 사항: 풀이 생성되었는지 확인합니다.
# virsh pool-list --all Name State Autostart ------------------------------------------- default active yes guest_images_netfs inactive no스토리지 풀을 시작합니다.
# virsh pool-start guest_images_netfs Pool guest_images_netfs started선택 사항: 자동 시작을 활성화합니다.
기본적으로
virsh로 정의된 스토리지 풀은 가상화 서비스가 시작될 때마다 자동으로 시작되도록 설정되지 않습니다.virsh pool-autostart명령을 사용하여 스토리지 풀을 자동으로 시작하도록 구성합니다.# virsh pool-autostart guest_images_netfs Pool guest_images_netfs marked as autostarted
NFS 기반 스토리지 볼륨을 생성합니다. 예를 들어 다음 명령은
guest_images_netfs스토리지 풀을 기반으로vm-disk1이라는 20GBqcow2볼륨을 생성합니다.# virsh vol-create-as --pool guest_images_netfs --name vm-disk1 --capacity 20GB --format qcow2 Vol vm-disk1 created스토리지 볼륨을 가상 디스크로 VM에 연결합니다.
생성한 스토리지 볼륨을 찾습니다. 이렇게 하려면 볼륨이 속하는 스토리지 풀을 검사합니다.
# virsh vol-list --pool guest_images_netfs --details Name Path Type Capacity Allocation ------------------------------------------------------------------------------------- vm-disk1 /var/lib/libvirt/images/nfspool/vm-disk1 file 20.00 GiB 196.00 KiB디스크를 연결할 VM에서 이미 사용되는 대상 장치를 찾습니다.
# virsh domblklist --details <vm-name> Type Device Target Source ---------------------------------------------------------------- file disk *vda /home/VirtualMachines/vm-name.qcow2 file cdrom vdb -- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
virsh attach-disk명령을 사용하여 VM에 디스크를 연결합니다. VM에서 사용하지 않는 대상 장치를 제공합니다.예를 들어 다음 명령은 이전에 생성된
vm-disk1을 Cryostat장치로testguest1VM에 연결합니다.# virsh attach-disk testguest1 /var/lib/libvirt/images/nfspool/vm-disk1 vdc --persistent
검증
디스크를 연결한 VM의 XML 구성을 검사하여 구성이 올바른지 확인합니다.
# virsh dumpxml testguest1 ... <disk type='file' device='disk'> <driver name='qemu' type='qcow2' discard='unmap'/> <source file='/var/lib/libvirt/images/nfspool/vm-disk1' index='1'/> <backingStore/> <target dev='vdc' bus='virtio'/> <alias name='virtio-disk2'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> ...- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.
13.4.8. 웹 콘솔을 사용하여 가상 머신에 NFS 기반 스토리지 연결 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)의 네트워크 스토리지를 제공하기 위해 NFS(Network File Sytem) 서버를 기반으로 스토리지 볼륨을 사용할 수 있습니다.
웹 콘솔을 사용하여 NFS 기반 스토리지를 VM에 연결하려면 다음 방법 중 하나를 사용합니다.
-
새 VM을 생성할 때
가상 머신 생성 대화 상자에서연결합니다. 자세한 내용은 웹 콘솔을 사용하여 가상 머신 생성을 참조하십시오.Storage옵션을 사용하여 새 디스크를 생성하고 - 기존 VM의 경우 NFS 기반 스토리지 볼륨을 생성하여 VM에 연결합니다. 자세한 내용은 다음 절차를 참조하십시오.
사전 요구 사항
RHEL 10 웹 콘솔을 설치했습니다.
자세한 내용은 웹 콘솔 설치 및 활성화를 참조하십시오.
- 웹 콘솔 VM 플러그인이 시스템에 설치되어 있습니다.
프로세스
- RHEL 10 웹 콘솔에 로그인합니다.
아직 없는 경우 새 NFS 기반 스토리지 풀을 생성하고 설정합니다.
-
가상 머신 인터페이스 상단에 있는
스토리지 풀을 클릭합니다.스토리지 풀 생성. - 스토리지 풀 생성 대화 상자에서 스토리지 풀의 이름을 입력합니다.
유형 드롭다운 메뉴에서 네트워크 파일 시스템을 선택합니다.
참고드롭다운 메뉴에 네트워크 파일 시스템 옵션이 표시되지 않으면 하이퍼바이저에서 NFS 기반 스토리지 풀을 지원하지 않습니다.
다음 정보를 입력합니다.
- 대상 경로 - 대상을 지정하는 경로입니다. 이는 스토리지 풀에 사용되는 경로가 됩니다.
- host - 마운트 지점이 있는 네트워크 서버의 호스트 이름입니다. 호스트 이름 또는 IP 주소일 수 있습니다.
- 소스 경로 - 네트워크 서버에서 사용되는 디렉터리입니다.
- startup - 호스트가 부팅될 때 스토리지 풀이 시작되는지의 여부입니다.
을 클릭합니다.
스토리지 풀이 생성되고 스토리지 풀 생성 대화 상자가 닫히면 새 스토리지 풀이 스토리지 풀 목록에 표시됩니다.
-
가상 머신 인터페이스 상단에 있는
기존 스토리지 풀을 기반으로 새 스토리지 볼륨을 생성합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
스토리지 볼륨 →.볼륨생성 스토리지 볼륨 생성 대화 상자에 다음 정보를 입력합니다.
- name - 스토리지 볼륨의 이름입니다.
- size - 스토리지 볼륨의 크기 (MiB 또는 GiB)입니다.
-
Format - 스토리지 볼륨의 형식입니다. 지원되는 유형은
qcow2및raw입니다.
- 을 클릭합니다.
-
스토리지 풀 창에서 스토리지 볼륨을 생성할 스토리지 풀을 클릭합니다.
- 선택 사항: 데이터 손상 또는 디스크 조각화에 대한 문제를 방지하려면 디스크의 일관성을 확인합니다. 자세한 내용은 가상 디스크의 일관성 확인을 참조하십시오.
생성된 스토리지 볼륨을 VM에 디스크로 추가합니다.
인터페이스에서 새 디스크를 생성하고 연결할 VM을 클릭합니다.
VM의 그래픽 인터페이스에 액세스하기 위한 선택한 VM 및 콘솔 섹션에 대한 기본 정보가 포함된 개요 섹션이 포함된 새 페이지가 열립니다.
- 디스크로 스크롤 .
- 디스크 섹션에서 추가 를 클릭합니다.
- 디스크 추가 대화 상자에서 선택합니다.
- 디스크에 사용할 스토리지 풀 및 스토리지 볼륨을 선택합니다.
디스크가 영구적인지 여부를 선택합니다.
참고임시 디스크는 실행 중인 VM에만 추가할 수 있습니다.
- 선택 사항: 클릭하고 스토리지 볼륨의 캐시 유형, 버스 유형 및 디스크 식별자를 조정합니다.
- 를 클릭합니다.
검증
- VM의 게스트 운영 체제에서 디스크 이미지를 포맷되지 않고 할당되지 않은 디스크로 사용할 수 있는지 확인합니다.