kvm(RHEV, RHV)의 vm guest 파일(qcow2)을 VMWare ESXi vmdk 형태로 변환하는 방법.
두번의 변환 과정이 필요하며 아래와 같은 방법으로 변환하면 된다.

 

1. qcow2 -> vmdk 변환

아래 명령을 통해 vmdk로 변환한다.

# qemu-img convert -f qcow2 myImage.qcow2 -O vmdk myNewImage.vmdk
- 이렇게 변환을 하면 기존에 Assign 했던 용량이 100G 라면 실제 사용했던 크기 만큼의 크기로 파일이 변환된다. 만약 실제 사용했던 용량이 20G 였다면 20G의 파일로 생성된다.
- 변환된 myNewImage.vmdk 파일을 esxi 데이터 스토어에 업로드
- 만약 이 상태의 파일로 ESXi위에 VM을 부팅하면 부트로더만 읽혀지며 부팅이 잠시 되다가 용량이 부족하다는 메시지와 함께 부팅이 실패된다. 더 이상 Write를 할 수 있는 공간이 없어서 그렇다.
  (하지만 VMWare Workstation으로 부팅을 하면 정상적으로 부팅이 가능하다.)

 

2. vmdk -> vmdk(Assign 용량만큼의 크기로 사용 가능한 thin 프로비저닝 형태) 변환

ESXi 호스트의 ssh로 터미널 접속 후, myNewImage.vmdk 가 저장된 데이터 스토어 내의 파일을 다시 esxi vmdk 형태로 변환한다.

# vmkfstools -i myImage.vmdk outputName.vmdk -d thin
- qemu-img 툴을 통해 변환된 vmdk 파일을 다시 최초 Assign 했던 용량만큼으로 사용할 수 있도록 변환하는 것이다.

 

3. vm 가동

새로운 VM을 생성할 때 outputName.vmdk 를 지정하여 VM을 가동하면 된다.

 

* 참고)

qemu-img 툴은 리눅스 qemu-img-rhev 패키지에 포함된 파일이다.

만약 윈도우에서 qcow2 -> vmdk로 변환 하고자 한다면 아래 사이트에서 받아서 해당 프로그램을 설치 후 변환할 것.

https://www.qemu.org/download/#windows

- GUI가 아니므로 설치된 디렉토리에서 CLI 기반으로 변환. 리눅스와 컨버팅하는 명령어와 옵션은 기본적으로 같다.

- 프로그램 설치 후 C:\Program Files\qemu 디렉토리에서 아래와 같은 방식으로 실행
c:\Program Files\qemu>  qemu-img.exe convert -f qcow2 d:\myImage.qcow2 -O vmdk d:\myNewImage.vmdk

qcow2 to vmdk
태그:                                         

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다