virtualization/VMware

[VMware] FreeBSD P2V 하기

yueisu 2012. 9. 14. 10:54

고객에게 이런 문의가 있었습니다. "사내에서 이용중인 FreeBSD 서버를 ESXi로 마이그레이션하고 싶다"

사실 유닉스/리눅스 계열에 자세하진 않습니다. FreeBSD를 P2V한 경험은 없는건 말할나위 없죠. 쩝...

하여간 인터넷을 뒤져보니 정식적으로 FreeBSD의 P2V를 지원하는  마이그레이션툴은 없었습니다. 방법은 두 가지 정도였습니다.

하나는 dd로 물리서버의 이미지를 작성후 이미지를 ESXi로  마이그레이션(이른바 P2I->I2V)하는 방법이었고, 다른 방법은 VMware Conveter의 ColdClone을 이용해서 콜드  마이그레이션을 하는 방법이었습니다.


복잡하게 P2I->I2V하기보다는 간단하게 ColdClone을 이용해서  마이그레이션을 검증해 봤습니다.

① 우선 이 ColdClone을 입수했습니다. VMware Conveter의 4.x 이상의 버전에는 없기 때문에 3.x 버전을 입수해야됩니다.

② 입수후 부트CD를 작성,  마이그레이션할 FreeBSD 서버는 정지해둡니다.

③ 작성한 부트 CD로 FreeBSD를 기동합니다. 기동하면 VMware Conveter가 기동하므로  마이그레이션할 ESXi의 정보를 입력,  마이그레이션을 실시합니다.

④ 검증서버의 HDD는 약 130GB로  마이그레이션 시간은 약 2시간이었습니다.

⑤  마이그레이션이 완료되면, 가상머신을 기동합니다. 가상머신 기동후 다음과 같은 에러 메시지와 함께 정상 기동이 되지않습니다. 이유는 마이그레이션시 디바이스명이 바뀌었기 때문입니다.

Trying to mount root from ufs:/dev/ad4s1a

ROOT MOUNT ERROR:

If you have invalid mount options, reboot, and first try the following from the loader prompt:

     set vfs.root.mountfrom.options=rw

and then remove invalid mount options from /etc/fstab.

Loader variables:

vfs.root.mountfrom=ufs:/dev/ad4s1a

vfs.root.mountfrom.options=rw


mount>


⑥ 새로운 디바이스명을 지정해서 기동을 이어나가면, 다음과 같이 유저쉘의 패스를 지정하라는 메시지가 표시됩니다. 그대로 "엔터"키를 누릅니다.


⑦ 정상적으로 마운트가 되어지지않고 있는 디바이스의 정보를 확인합니다.


⑧ 새로운 디바이스명으로 마운트 설정을 합니다.


⑨ 새로운 디바이스명을 영구적으로 설정을 위해 /etc/fstab가 수정되도록 옵션을 지정, 루트 디렉토리를 다시금 마운트합니다.


⑩ fstab 화일을 수정, 저장후 일단 가상머신을 정지합니다.


⑪ 가상머신의 "편집"에서 기존의 가상 NIC을 삭제, 어댑터 타입을 [E1000e]로 설정한 새로운 가상 NIC을 추가합니다.

⑫ 가상머신을 기동, 네트워크나 각종 서비스를 확인합니다.