본문 바로가기

Virtualization

cp or vmkfstools on VMware ESX Server Service Console

결론부터 말씀드리고,, 나머지 설명을 하겠습니다.
vmfs 파일시스템 위에 있는 가상머신 디스크 파일(vmdk)을 복사하기 위해서는
cp를 사용하시면 안되고, vmkfstools 를 사용해야 합니다.

vmfs 는 VMware 가 만든 공유 파일 시스템이기 때문에,,
SCSI Reservation 이란 방법(일종의 lock)으로 정합성을 유지합니다.
lock 이 걸리는 경우는 파일 신규 생성, 파일 크기 변경, 삭제, 등등
메타데이터가 변경될 때마다 발생합니다.
cp를 사용할 경우 파일이 2kb 단위로 증가되면서 복사하므로
SCSI Reservation 이 많이 발생하게 되고,, 그만큼 시간이 오래걸립니다.
반면 vmkfstools 를 사용할 경우 미리 대상 파일을 생성한 후
내용만 변경하기 때문에 SCSI Reservation 발생 빈도가 낮습니다.

VI3.5에서 테스트한 결과입니다.
(VI3 에서는  vmdk 파일이 name.vmdk 과 name-flat.vmdk 두개가 존재합니다.)

# time vmkfstools -i /vmfs/volumes/source/test.vmdk /vmfs/volumes/target/test.vmdk
Destination disk format: VMFS thick
Cloning disk '/vmfs/volumes/source/test.vmdk'...
Clone: 100% done.

real    0m30.874s
user    0m0.000s
sys     0m1.630s

# time cp test.vmdk test-flat.vmdk /vmfs/volumes/target/

real    2m8.821s
user    0m0.000s
sys     0m0.790s

vmkfstools 명령어 형태는 두가지가 있습니다.

vmkfstools  -e /vmfs/vmfsname/target.vmdk  -d vmfs /vmfs/vmfsname/source.vmdk
-or-
vmkfstools -i /vmfs/vmfsname/source.vmdk /vmfs/vmfsname/target.vmdk


참조자료
http://www.vmts.net/vmkfstools.htm
http://www.experts-exchange.com/Software/VMWare/Q_23530578.html
http://www.rtfm-ed.co.uk/?p=34