System Administrator IT Automation Virtualization Current: vCenter 없이 vSphere 로 ESXi 에 연결해서 가상머신 복사하기 vCenter 없이 vSphere 로 ESXi 에 연결해서 가상머신 복사하기 VMWare 로 가상화할때 VM을 template 로 만들어 놓고 cloning 하는 기능이 있다.이 기능을 이용하면 순식간에 서비스에 필요한 VM 을 deploy 할수 있으나 비싼 vCenter server 를 사야하는 문제가 있다. vCenter 없고 vSphere 로 ESXi 에 바로 연결해서 VM 이미지 파일 자체를 복사(Copy, Not Cloning) 해서 VM 을 빠르게 deploy 하는 방법을 정리해 본다. VSphere 에서 수행vSphere clinet 로 ESXi 서버에 연결구성(Configuration) -> 스토리지(Storage) 클릭하면 우측에 Datastore 목록이 표시됨VM 이 설치된 datastore 를 선택하고 마우스 우클릭해서 데이터스토어 찾아보기(Browse) 선택VM을 복사할 폴더를 만든다. (ex: New VM) .vmdk, .vmx, .vmxf 를 선택한후에 마우스 우클릭후 복사를 선택한다 새로운 VM 폴더를 클릭한후에 붙여넣기를 선택한다.VM을 Inventory에 추가한다. Console 에서 수행 사전에 remote 에서 ssh 연결이 가능하게 설정되어야 한다. (VMware ESXi 에 외부에서 ssh 연결할수 있게 설정하기 참고) ssh 로 ESXi 서버에 연결cd /vmfs/volumes/DATASTORE_NAME (DATASTORE_NAME 은 VSphere 에서 보이는 데이타스토어 이름이다. Ex: LocalStorage)새로 만들 VM의 이름으로 폴더를 생성한다.mkdir NewVMvmkfstools 로 vmdk 를 복제한다. (기존 VM 이름: "CentOS 6", 신규 VM이름: NewVM) /vmfs/volumes/522e8af9-f59a0983-39fd-d89d672a29ac # vmkfstools -i CentOS\ 6/CentOS\ 6.vmdk NewVM/NewVM.vmdkDestination disk format: VMFS zeroedthickCloning disk 'CentOS 6/CentOS 6.vmdk'...Clone: 100% done. vm configuration file(*.vmx, *.vmxf) 를 새로운 VM 에 복사한다. cp CentOS\ 6/CentOS\ 6.vmx NewVM/NewVM.vmx cp CentOS\ 6/CentOS\ 6.vmxf NewVM/NewVM.vmxf CODE vi 로 *.vmx 파일을 열어서 VM이름을 변경한다. ("CentOS 6" -> "NewVM") vi NewVM/NewVM.vmx NewVM/NewVM.vmxf CODE 또는 위의 기능을 shell script 로 만든 vm-copy.sh를 사용vm-copy.sh VMDIR CopyVMDIR vm-copy.sh #!/bin/sh -x if [ $# -ne 2 ];then echo "USAGE: $0 SRC_DIR DEST_DIR"; exit; fi; ## remove / SRC=`basename "$1" /` DEST=`basename "$2" /` if [ ! -d "$SRC" ];then echo "Source Dir \"$SRC\" is not exist. Exit...."; exit; fi if [ -d "$DEST" ];then echo "Dest Dir \"$DEST\" is already exist. Exit...."; exit; fi mkdir "$DEST" vmkfstools -i "${SRC}/${SRC}".vmdk "${DEST}/${DEST}".vmdk sed "s/${SRC}/${DEST}/g" < "${SRC}/${SRC}".vmx > "${DEST}/${DEST}".vmx sed "s/${SRC}/${DEST}/g" < "${SRC}/${SRC}".vmxf > "${DEST}/${DEST}".vmxf echo "$Done!"; BASH Inventory에 추가복사된 VM 을 인벤토리에 추가해야 VSphere 에서 사용할 수 있다.데이터스토어 브라우저를 띄워서 VM 을 복사한 데이터스토어로 들어간다.새로 추가된 VM(NewVM) 을 클릭하고 NewVM.vmx 를 선택한후 마우스 우클릭해서 "인벤토리에 추가(A)" 를 선택한다 인벤토리 이름을 입력하고 다음을 누른다 VM을 실행할 ResourcePool 을 선택한다.완료를 누르고 VM 을 부팅해서 정상동작 여부를 확인한다.부팅시 다음과 같은 메시지가 나오면 "i copied it" 을 선택한다. ( 참고 링크 - VMware vSphere “I moved it” or “I copied it” – What’s the difference?)Refhttp://nchrissos.wordpress.com/2013/04/22/cloning-a-vm-without-vcenter-in-esxi-5-1-free-edition/ ×