前回の続きになります。
ESXi6.7u2環境にて、WebベースGUIでのOVAファイルインポートが80分とか凄い時間でしたので試したのがOVFtool。
9.55GBのOVAファイルインポートが、ついでにエクスポート(約20分)が、どれだけ短くなるか?
に期待しての取り組みです。
ちなみにOVFtoolのコマンドラインオプションはこちら。
ちなみに今回はこちらのサイト様の記事にとても助けられました。
1.エクスポートについて
まずはコマンドライン。雰囲気はこんな感じです。
ovftool.exe --noImageFiles --acceptAllEulas --noSSLVerify vi://IPアドレス:ポート/DataCenter?ds=サーバ別指定内容 出力先ファイルパス.(ovf or ova)
ポートは標準で443(または80?)が使われるようです。出力形式は拡張子の指定に応じて自動で変わるそうですが、ovaしか試してません。
他機能とのポート競合回避の為、ポートを変更しているケースに注意して下さい。
弊社環境では管理用Webアプリとの競合回避のため、vCenterの各種ポートは20000番を足した値になってました。
(これに気付かずにエクスポートのコマンドが通せるまでかなり掛かりました…)
「vi://~」の部分にはいくつかの指定方法があるようですが、vCenter経由での指定が一番運用ケースに沿うのではないでしょうか。
ここでは、分かりやすそうな「データストア指定」の形式で記載します。
[データストア名]フォルダ名/仮想マシン名.vmx
vCenterでどれかデータストアを参照すると、エクスプローラのようなツリーが表示されます。
そのパスを辿るようなかたちで目的の仮想マシン用のvmxファイル名を指定すればOKです。
ユーザ名、パスワードもコマンドラインに含められるとの事なのですが、記号を含むせいか上手く認証が通らなかった為手動入力しました。
(コマンド実行時にプロンプトが表示されます)
出力結果ですが、下記のような対象環境で
【出力元サーバの状態】
ディスク割り当て 180GB(データストア消費188GB)/ディスク使用 30GB(Windows上)
OVAファイルのサイズは9.5GB程でした。出力時間は約15分と、25%程度短縮されました。
2.インポートについて
こちらのコマンドラインはこんな感じです。
ovftool --datastore="格納先データストア名" --net:移行元vNW=移行先vNW --acceptAllEulas --noDestinationSSLVerify --diskMode=thin --name=任意の仮想マシン名 入力ファイルのパス vi://vCenterのIPアドレス?ip=仮想マシンを稼働させるESXiホストのIPアドレス
インポートはあまり悩みなく実施できました。
ポイントは、--netの部分でしょうか。OVAのデータに、移行先にないネットワーク名を指定しているとエラーになります
(GUIベースの場合は、インポートの流れの中で質問&マッピングのステップがあります)
インポート先環境(HCI構成)の要件としてthinプロビジョニングでディスクを構成する必要がありました。
あと、「vi://~」の部分ですが、vCenterのIPを指定するのに「?ip=」ってどういう事だ??と悩みました。
GUIのインポート手順と照らして比較していた際にもしかしてと思って指定してみた所ビンゴだった模様。
こちらもユーザ/パスはあとから手動入力のケースにしてます。
ちょっと雑な説明になった気もしますが、これらの手順でVMwareのエクスポート&インポートできました。