どうもカトーです。先日FreePBXを仮想で検証してから、会社で余っているサーバにもESXi入れたり自宅で動かしたりとESXiを良く触るのですが、エクスポートでovfだけがエクスポートできない事象があったので、備忘録がわりに書いておきますよ。
ちなみにvSphere 6.5 以降では、OVA テンプレートをエクスポートすることはできません。OVF テンプレートのみ。なのでOVAを使いたいときはvSphere Client(.net版)を使うか、OVFtool、PowerCLIをしかありません。また.ova .ovfファイルのエクスポートで仮想マシンの定期バックアップ運用については、仮想マシンの停止と時間、フルバックアップとして吐き出されるため、世代数に対応するサーバ容量が必須です。ライセンス適用されてる環境でvSphere Replicationを別のローカルマシンでバックアップも可能だったします。 vSphere Replicationでのハイパーバイザー上の仮想マシンのレプリケーションしつつ復旧も魅力ですが、検証環境はやはり力技のOVF吐き出しですものね。
参考:
vSphere の仮想マシン管理 / VMware vSphere Replication の概要
先に結論 ESXiとゲストを再起動でOK
先に結論から書いておきますが、ESXi自体を一度再起動して、ゲストもパワーオフ・オンを行いエクスポートすればvmdkとmf、ovfもエクスポートできることが多いようです。
何度か検証を行ったのですが、どうやらエクスポートするときに他のovfで躓くとその情報が残る模様。タスク自体は全て正常だったので、まったく気が付かなかったです。
そんなの常識だと思われがちですが、既に止まっているゲストをONしたり、ホストを再起動って最終的な動作で、ログをみたり、内部に保管か?と探したりクライアントのアンチウィルスを止めたりブラウザ変えたり、ovfファイルがないとウィザードでインポートできないので、vmdkとmfだけでどうにかいれるかと、1時間程費やしました……。
どうにか海外のロシア語のサイトで同様に症状を見つけたのは「電源再起動だろ?」というなんとも締まらない内容。一応やっておくかで解決。
症状と経緯
動かしているのはESXi-6.7.0でハードはASRock DeskMini A300、こちらは検証や遊びだったので、ちゃんとしたHP XEONサーバへ移行、ひとまず全てプラットフォームをエクスポート。
この作業は問題なくエクスポート完了しました。しかし1つのゲストが何かエラーで正常に動かずに一度タスクを消して、再度エクスポートしました。その後もいくつかエクスポートして正常に完了。
こちらの環境だと一度エクスポート後、再度エクスポートするとvmdkとmfのみ吐き出されて、肝心なovfがないのでデプロイできない。サーバのメモリ解放や公式を見てもovfだけ出ないってのは見つからず。
検証の結果、ゲストだけパワーオン・オフだけではこの症状は解決できませんでした。通常はエクスポートするとvmdkとovf、またmfも同時ダウンロードされるのですが。
バックアップは定期的に、それとエクスポート後の復旧テストも。
このサーバは検証用ですので、24時間365日止められない環境じゃないから良かったですが、もし業務中に他のゲストがトリガーになっているようなサーバだと怖いですね。
またいくつもゲストをエクスポートしたので、全てあると安心していましたが、気づいてよかったです。大抵の場合、何か障害あったときにバックアップやエクスポートファイルを利用しますので、これでOVFがないとか悲劇にはじまりますものね。ぜひ、仮想は検証で2つは欲しいところです。冒頭に記載しましたが、この仮想環境はゲストを完全停止させるか、VMware vSphere Replicationを使って、ハイパーバイザー ベースでの仮想マシンのレプリケーションと復旧させる方法などあります。必要に応じて対応したいところです。