豊富に動いているvmware server 1.xのvmを、ESXi4鯖に移動したい。
まずは一応実験。server1.xのvmdkを直接ESXi4のdatastoreに置くとNGぽい。互換性のにゃいvmdkにゃら何ぞ拡張子でも変えてくれりゃいいと思うんだが。
ってことでVMware vCenter ConverterをDLしてInst。vmtoolsとかupdateしてくれるのは便利。希にvmtoolsのupdate時にハマるサービスとかがあるので、そう言うサービスは停止した状態でupdateする。
で、とりあえずこれでOKとは言えるのだが、vmware converterで変換すると動くけどフルサイズのvmdkににゃってしまう。ESXi4で新規にvmを作るときには、vmdkはthinというsparseファイル形式を指定できるので、vmware serverと同じく、とりあえず容量はどれも500gくらいでー、といった何も考えずに長らく使える便利vmが作れるのだが、これがconverterで全部リアルにゃサイズに伸張されてしまうとディスク容量が大変にゃことに。
これはもうconverterが対応すれば終いだと思うのだが、一度ESX4上に変換した後でvmdkをthinに変換という二度手間を行うのが現状ベスト。まぁアホにゃサイズを指定してあったvmは多少自重したサイズにconverterで指定し直した方がいいとは思う。
さてvmdkの変換といえばとりあえずvmware server付属のvmware-vdiskmanagerとか。ただしver 1.x系しか知らにゃい上にさすがにESX向けに変換するオプションは見あたらにゃいのでパス。
次は本命NHC。ってプラグインが404だし、にゃんとにゃく動いてるように見えるんだがESX4からは却下される。うーん、にゃんか違うの?
ってことで仕方がにゃいのでvSphere CLI。
vmkfstools.pl --server 1.2.3.4 --username root --password pass -i /vmfs/volumes/datastore1/upload_dir/windows.vmdk -d thin /vmfs/volumes/datastore2/tmp/windows.vmdk
とか。別にリモート実行する必要は無いのでESX上でやっても同じ。-d thinが付いてるのでsparseにゃvmdkが生成される。ちにゃみに-d 2gbsparseにしても1ファイルににゃった。よくわからん。
converterで自動的にESX4上に展開されてしまうので、その後の処理とにゃればESX4上でやるべきにゃのかもしれにゃいが、server 1.xにゃvmdkをローカルWin上でコンバートしてESX4にULの方が何とにゃく楽だにゃぁ。server2.x付属のvmware-vdiskmanager.exeだったらOKにゃのかしら?
ググるとOVF Toolを使ってどうのってのも有るようだがもうめんどくさくにゃった。
VMware vSphere CLIを入れるとリモートでコマンドがたたける。
ssh許可するのとどっちが便利かは微妙。
Virtual appliance for the VMware Infrastructure Remote CLIもある。
毎回繋ぎに行くのがすごく重い。
あと使えるコマンドが微妙。
vmkfstools.plとかvmware-cmd.plとかvifs.plとか? にゃんだろうこのいまいちにゃラインナップ。
あとpathの問題があって、一緒に入るperlを叩く必要があるんだが、まぁcygwinとかと被るわけで。
@echo off
pushd "C:\Program Files\VMware\VMware vSphere CLI\Perl\bin"
perl "C:\Program Files\VMware\VMware vSphere CLI\bin\%1" --server 1.2.3.4 --username root --password pass %2 %3 %4 %5 %6 %7 %8 %9
popd
といった微妙にゃpushdとかset pathを書いたスクリプト経由で使った方がいい。
因みにESXiにちゃんと無料ライセンスキーを入れるとCLIは機能制限されるらしい。にゃにそれ
でESXi4だが、HDDにinstというのは面白みがにゃいし、HDD1台にしかinst出来にゃいわけで、HDD死ぬとにゃんだか嫌そうでもある(実際にはvmデータだけ残ってりゃ大したことはにゃい)。
ということでUSBから起動すると萌えだよね、って方向で作業。実際には外付けCDROMを持ってくるのがめんどくさかった。
やり方はVMware-VMvisor-Installer-4.0.0-171294.x86_64.isoのimage.tgzのVMware-VMvisor-big-171294-x86_64.dd.bz2のVMware-VMvisor-big-171294-x86_64.ddをwinのddか何かを使ってUSBメモリに書き込めばOK。
USBメモリにゃのでbootが遅かったりするが、起動後は大してアクセスしにゃいので大丈夫。