본문으로 바로가기
반응형

kvm에서 VM을 사용하다보면, 실제 VM들이 사용하지 않는 사이즈만큼 qcow2 파일이 생성되서 디스크 용량을 많이 차지 하게 됩니다.

qcow2 백업 및 복구를 위해서 qcow2 디스크 파일 사이즈를 줄이는 방법에 대해 정리하였습니다.

 

 

1. 기존 qcow2 파일 사이즈 확인

최초 VM을 생성하면 아래와 같이 최초 할당한 디스크 사이즈 크기만큼의 qcow2가 생성됩니다.
[root@hk-tb-kvmhost images]#ls -alh
total 749G
drwx--x--x 2 root root  220 Jan  4 18:25 .
drwxr-xr-x 9 root root  106 Oct  7 14:05 ..
-rw------- 1 qemu qemu 104G Jan  4 18:35 hk-bastion.qcow2
-rw------- 1 qemu qemu  51G Jan  4 18:35 hk-ctrl.qcow2
-rw------- 1 qemu qemu  91G Jan  4 18:35 hk-master1.qcow2
-rw------- 1 qemu qemu  91G Jan  4 18:35 hk-master2.qcow2
-rw------- 1 qemu qemu  91G Jan  4 18:35 hk-master3.qcow2
-rw------- 1 qemu qemu  71G Jan  4 18:35 hk-prometheus.qcow2
-rw------- 1 qemu qemu  58G Jan  4 18:15 hk-tower.qcow2
-rw------- 1 qemu qemu  71G Jan  4 18:35 hk-worker1.qcow2
-rw------- 1 qemu qemu  71G Jan  4 18:35 hk-worker2.qcow2

 

 

2. qemu-img convert 기능을 통해 실제 사용하지 않는 공간을 제거

[root@hk-tb-kvmhost images]#qemu-img convert -O qcow2 -p ./hk-tower.qcow2 ./kvm.qcow2
    (100.00/100%)
    
    
-p 옵션은 진행 상황을 보여주는 옵션

 

 

3. qcow2 사이즈 및 qcow2 정보 확인

hk-tower VM에서 실제 사용하는 디스크 용량만큼으로 qcow2가 줄었고, info를 통해 virtual size 50G임을 확인할 수 있습니다.

[root@hk-tb-kvmhost images]#qemu-img info kvm.qcow2
image: kvm.qcow2
file format: qcow2
virtual size: 50 GiB (53687091200 bytes)
disk size: 8.63 GiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
    corrupt: false
    
    
[root@hk-tb-kvmhost images]#ls -alh
total 757G
drwx--x--x 2 root root  237 Jan  4 18:36 .
drwxr-xr-x 9 root root  106 Oct  7 14:05 ..
-rw-r--r-- 1 root root 8.6G Jan  4 18:37 kvm.qcow2

 

 

4. convert한 qcow2로 VM 생성

 

 

5. convert 하여 만든 qcow2로 VM 생성 후 디스크 용량 확인

 

 

6. VM 내에서 파일 복사하여 디스크 사용량 및 qcow2 사이즈 확인

VM 내에 디스크 사이즈 변경시 변경된 만큼 qcow2 사이즈도 늘어납니다.

 

 

단, 삭제한다고 12G에서 줄어들지는 않습니다.

 

위 방법으로 백업본을 가지고 있을 경우나, 기존 Size등이 snapshot등이 쌓여서 증가되었을 경우 convert를 통해서 사이즈를 다시 줄여서 사용할 수 있을 것 같습니다.

 

 

728x90

'Cloud > KVM' 카테고리의 다른 글

[RHEL8] KVM virsh install 샘플  (0) 2021.10.29
cloud image로 KVM VM으로 사용하기  (0) 2021.07.15
RHEL7 KVM에서 RHEL8 KVM Image 작업방법  (0) 2021.07.15
virtual mac 가상화에서 사용되는 MAC  (0) 2021.07.01
KVM User Guide  (0) 2021.07.01