人生中盤から色々学ぶ(ブ)ログ -9ページ目

人生中盤から色々学ぶ(ブ)ログ

IT、経済、英語、その他今必要だなと思う事を学びつつ、自分用の記録ついでにブログ化。
あん時やっときゃ良かった、をそろそろ終わりにしたい!

前回の続きになります。

 

 

 

 

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のエクスポート&インポートできました。

 

 

ESXi5.5で稼働中のサーバを6.7u2の環境に移行する必要が出てきました。

 

まずは「出来るの?」の確認から。

 

 

■VMwareの仕様制約確認

ESXi/ESX ホストおよび互換性のある仮想マシンのハードウェア バージョンのリスト (2007240)

https://kb.vmware.com/s/article/2007240?lang=ja

 

バージョン8と6.7u2の交差ポイントは。。。「作成・編集・実行」

 

問題ないですね。

 

 

 

バージョン8の仮想マシンにはWin2012R2DCが乗ってます。

これが6.7u2でサポートされるか?というと。

 

 

OKみたいです。やったね。

 

 

 

■ライセンスについて(サポート問い合わせ結果)

Q.Win2012R2DCのライセンスで稼働してたOSがあります。

 「新しいハード・新しいESXi・Win2019DCのライセンスを保有」のに持ってって動かすのはライセンス上問題ない?

 

A.大丈夫です。ライセンス認証が必要になった場合は、Win2012R2DCのライセンスキーを入力してください。

 

 

■RDM環境のエクスポートについて(サポート問い合わせ結果)

Q.RDM構成のディスクを持つ仮想マシンをエクスポートできますか?

 

A.RDM構成のディスクも、マッピングファイルではなく通常のVMDKファイルとしてエクスポートされます。

 

 

 

■仮想マシンの移行方式

ネットで調べた情報がメインですが、以下の4種が一般的な模様。

1.vSphere Client (Host Client) 

2.PowerCLI

3.OVFtool

4.vCenterConverter(今回は試さなかった)

 

 

1.vSphere Client (Host Client) 

標準的な管理ツールなのでどんな環境でも使えそうです。

 

ちなみにESXi5.5の時代は、vCenterはアプリからWebクライアントの過渡期だったと思います。

 

弊社環境にはvCenterのアプリ(VMware vSphere Client)がインストールされてます。

 

WebクライアントでのOVFエクスポートはOVA形式を選択できませんが、アプリの方だとOVA形式でエクスポート可能です。
 

アプリでのエクスポート手順は以下の通りです。あ、どの方式でも事前に移行対象仮想マシンはシャットダウンしておく必要あり。

  1. 上部アドレスバーで[ホーム]>[インベントリ]>[ホストおよびクラスタ]を選択する
  2. 左ペインのツリーで、シャットダウン済の移行対象仮想マシンを選択する
  3. メニューバーから[ファイル]>[エクスポート]>[OVFテンプレートのエクスポート]を選択

あとは任意の値を指定すればOKです。

 

 

 

ちなみに所要時間ですが。

 

プロビジョニング(シック)済180GB、使用済30GBをOVA形式でエクスポートした結果、20分程掛かりました。

 

出力ファイルのサイズは約10GB。

 

 

 

これを6.7u2環境でインポートしました。

  1. vSphereClientでvCSAに接続
  2. [アクション]>[OVFテンプレートのデプロイ]
  3. テンプレートファイルを選択し、配置場所となるESXを指定
  4. 保存先データストアとディスクフォーマットを指定
  5. 移行元先でvSwitchに定義するネットワーク名が異なる場合はマッピング設定

 

OVFテンプレートからのデプロイは、仮想環境導入ベンダから手順など提供されているケースが多いと思います。

 

ちなみにこのインポート処理、80分くらい掛かりました…


 

GUIで済めばいいなっと思ってたんですが、さすがにこの時間は許容しかねるなあ、という事でコマンドラインツールを試しました。

 

そちらはまた次回に。

 

 

 

 

■手法その1:タスクスケジューラアプリをリモートサーバ接続して実行

①タスクスケジューラを起動する

 

②左ツリーの[タスクスケジューラ(ローカル)]の右クリックメニューから[別のコンピュータへ接続]を選択

 

③リモートサーバのホスト名またはIPアドレスを入力する。現在ログイン中のユーザ権限では接続できない場合、リモートサーバ上でタスクスケジューラへのアクセスを許可されたユーザを指定する。

 

 

 

■手法その2:コマンドラインからタスクスケジューラを操作

schtasksコマンドを使います。

 

タスクを実行する際のコマンドラインとしてはschtasks /runとなります。

 

schtasks /run /S サーバ名orIPアドレス /U ユーザ /P パスワード /TN タスク名

 

/TN タスク名 の部分は少しわかりにくいのですが、schtasks のみを実行した場合に表示されるタスクパスの、

"フォルダー"の文字列を除外した部分になります。下図の例だと、"\Microsoft\Office"です。

 

 

 

■こんなときに

  • リモートサーバにインストールされたプログラム(≠サービス)を手元からリモートサーバ上で実行したい
  • リモートサーバへのログインを極力控えたい