Advanced Cross vCenter vMotion:vCenter Server間でVMを移行するための究極のテクニック

VMware tutorial - IT technology blog
VMware tutorial - IT technology blog

なぜAdvanced Cross vCenter vMotionが「救世主」なのか?

異なるvCenter間で仮想マシン(VM)を移行することは、かつてインフラ管理者にとって悩みの種でした。以前は、複雑なEnhanced Linked Mode(ELM)を構成するか、仮想マシンをシャットダウンして手動でOVFをエクスポートするかの2つの選択肢しかありませんでした. どちらも非常に手間がかかります。たとえば、500GBのVMをエクスポートして再度インポートする場合、ただ待機するだけで午前中が丸ごと潰れてしまうこともあります。

最近のインフラアップグレードプロジェクトで、50台以上のサービスVMを古いvCenter 6.7から新しい7.0システムに移行する必要がありました。その際、Advanced Cross vCenter vMotion (XVM) 機能がこの問題を一瞬で解決してくれました。これにより、事前に接続(リンク)することなく、異なるSSOドメインのvCenter間で仮想マシンを「プッシュ」または「プル」できるようになります。

XVMは、以下のような実務シナリオで特に威力を発揮します:

  • Hybrid Cloud環境への仮想マシンの移行。
  • 不具合の持ち越しを避けるため、インプレースアップグレード(In-place upgrade)を行わずに古いvCenterを新バージョンに置き換える。
  • 企業の合併やデータセンターの分割に伴うリソースの統合。

実行前のテクニカルチェックリスト

XVMは非常に柔軟ですが、タスクが20%の段階で失敗するのを防ぐために、技術仕様が適切であることを確認する必要があります。

1. ソフトウェアバージョン

移行先のvCenterは、UI(ユーザーインターフェース)を使用するために**7.0 Update 1c**以降である必要があります。移行元のvCenterについては、バージョン6.5以降であれば条件を満たします。

2. ネットワークインフラ (Networking)

これはvMotionが失敗する最大の要因(急所)です。以下のポートが疎通していることを確認してください:

  • ポート 443: 2つのvCenter間のHTTPS管理用。
  • ポート 8000 & 902: ESXiホスト間のvMotionトラフィックおよびNFC転送用。
  • 帯域幅: 最低250 Mbps。実際、1Gbpsの回線では、100GBのVMの移行に約12〜15分かかりました。

3. ライセンス (License)

この機能には**vSphere Enterprise Plus**ライセンスが必要です。下位エディションでは制限されるか、移行オプションが表示されない場合があります。

ステップバイステップの導入ガイド

「プッシュ(Push)」または「プル(Pull)」を選択できます。私の経験では、移行先vCenterから**Import VMs**(プル)する方法をお勧めします。この方法により、移行先のリソース状況を確認しながら主導的にコントロールできます。

ステップ1:インポートコマンドの開始

移行先vCenterのvSphere Clientで、VMを受け入れたいクラスターまたはホストを右クリックします。表示されたメニューから**Import VMs…**を選択します。

ステップ2:移行元vCenterへの接続

**Add vCenter Server**を選択します。古いvCenterのFQDN(またはIP)とログイン情報を入力する必要があります。認証後、移行元で稼働しているすべてのVMリストが表示され、選択できるようになります。

ステップ3:リソースのマッピング

これが最も重要なステップです。以下を選択する必要があります:

  • Storage: 移行先のデータストアを選択します。SAN容量を節約するために、Thin Provisionを推奨します。
  • Network: 旧ポートグループを新ポートグループにマッピングします。IPセグメントが異なる場合は、完了直後にVMのIPを変更する準備をしておいてください。

ステップ4:確認と実行

システムが*Validation*(検証)を実行するのを待ちます。「Validation passed」と緑色で表示されたら、**Finish**をクリックするだけです。

PowerCLIによる大量移行の自動化

5台のVMなら手動でもいいですが、50台となると非常に大変です。以下のPowerCLIスクリプトを使用することで、数時間を節約できました。

# 2つのvCenterに同時に接続
Connect-VIServer -Server vcenter-old.local -User 'admin' -Password 'xxx'
Connect-VIServer -Server vcenter-new.local -User 'admin' -Password 'yyy'

# パラメータの宣言
$vm = Get-VM -Name "App-Server-01" -Server vcenter-old.local
$destHost = Get-VMHost -Name "esxi-new-01.local" -Server vcenter-new.local
$destDS = Get-Datastore -Name "PureStorage-LUN01" -Server vcenter-new.local
$destNet = Get-VirtualPortGroup -Name "VLAN100_Prod" -Server vcenter-new.local

# 移行処理の実行
Move-VM -VM $vm -Destination $destHost -Datastore $destDS -PortGroup $destNet -Server vcenter-new.local

実務から得た「教訓」と注意点

運用過程で、システム停止を避けるために学んだいくつかの経験則を紹介します:

1. 常にISOファイルをアンマウントする

仮想ドライブにマウントされたままのインストール用ISOファイルを切断し忘れることがよくあります。移行先のvCenterが移行元のISOファイルのパスを見つけられず、即座にエラーが発生します。

2. ドメイン名解決(DNS)の確認

vCenterをまたぐvMotionはDNSに対して非常に敏感です。2つのvCenterが互いのFQDNを解決できない場合、IPでの疎通が取れていてもハンドシェイク(接続確立)に失敗します。

3. パケットの監視(Pingテスト)

進捗が90%に達したら、コマンドプロンプトを開いてVMに対して継続的にpingを実行してください。通常、切り替え時に失われるpingは1〜2回(約2〜4秒)だけです。接続断が長く続く場合は、物理スイッチのVLAN設定が一致しているか再確認してください。

Advanced Cross vCenter vMotionをマスターすることで、複雑なインフラ移行プロジェクトを自信を持って処理できるようになります。SSOドメインの壁がなくなり、あらゆる操作がはるかに柔軟でプロフェッショナルなものになります。

Share: