Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

ONTAPデータストアへのVMの移行

共同作成者

ONTAPデータストアへのVMの移行

作成者:Suresh Thoppay

VMware vSphere by Broadcomは、仮想マシンのホスト用にVMFS、NFS、VVolデータストアをサポートしています。データストアは、ハイパーコンバージドインフラで作成することも、一元化された共有ストレージシステムで作成することもできます。ONTAPベースのストレージシステムでホストして、仮想マシンのスペース効率に優れたスナップショットやクローンを提供すること、データセンターやクラウド全体でさまざまな導入モデルを柔軟に選択できること、監視およびアラートツールによる運用効率、VMデータを検査するセキュリティ、ガバナンス、およびオプションのコンプライアンスツールを利用できること、 など。

ONTAPデータストアでホストされるVMは、SnapCenter Plugin for VMware vSphere(SCV)を使用して保護できます。SCVは、ストレージベースのスナップショットを作成し、リモートのONTAPストレージシステムにもレプリケートします。リストアは、プライマリまたはセカンダリストレージシステムから実行できます。

お客様は、Cloud InsightsまたはARIAオペレーション、またはONTAP APIを使用してトラブルシューティング、パフォーマンス監視、レポート、およびアラート通知機能を使用する両方または他のサードパーティツールの組み合わせを柔軟に選択できます。

お客様は、ONTAP Tools vCenter Plug-inを使用してデータストアを簡単にプロビジョニングできます。また、そのAPIとVMは、電源がオンの状態でもONTAPデータストアに移行できます。

メモ ARIA AutomationやTanzu(またはその他のKubernetesフレーバー)などの外部管理ツールを使用して導入されるVMの中には、通常、VMストレージポリシーに依存するものがあります。同じVMストレージポリシー内のデータストア間で移行する場合は、アプリケーションへの影響は小さくなります。これらのVMを新しいデータストアに適切に移行するには、アプリケーションの所有者に確認してください。vSphere 8の導入 "VMotion通知" をクリックしてvMotion用のアプリケーションを準備します。

ネットワーク要件

vMotionを使用したVMの移行

ここでは、接続性、フォールトトレランス、パフォーマンスの向上を実現するために、ONTAPデータストアにデュアルストレージネットワークがすでに導入されていることを前提としています。

vSphereホスト間でのVMの移行も、vSphereホストのVMkernelインターフェイスによって処理されます。ホット移行(VMの電源をオンにした状態)の場合はvMotionが有効なVMkernelインターフェイスが使用され、コールド移行(VMの電源をオフにした状態)の場合は、プロビジョニングサービスが有効なVMkernelインターフェイスがデータの移動に使用されます。有効なインターフェイスが見つからなかった場合は、管理インターフェイスを使用してデータを移動しますが、特定のユースケースでは望ましくない場合があります。

VMkernelと有効なサービス

VMkernelインターフェイスを編集する場合、必要なサービスを有効にするオプションが表示されます。

VMkernelサービスオプション
ヒント vMotionおよびProvisioning VMkernelインターフェイスで使用するポートグループに、少なくとも2つの高速アクティブアップリンクNICが使用可能であることを確認します。

VMの移行シナリオ

VMotionは、電源状態に関係なくVMを移行するためによく使用されます。以下では、特定のシナリオに対するその他の考慮事項と移行の手順について説明します。

メモ 理解する "vSphere vMotionのVMの条件と制限事項" VMの移行オプションを実行する前に、
特定のvSphereデータストアからのVMの移行

次の手順に従って、UIを使用してVMを新しいデータストアに移行します。

  1. vSphere Web Clientで、ストレージインベントリから[Datastore]を選択し、[VMs]タブをクリックします。

    特定のデータストア上のVM
  2. 移行するVMを選択し、右クリックして[Migrate]オプションを選択します。

    移行するVM
  3. ストレージのみを変更するオプションを選択し、[Next]をクリックします。

    ストレージのみの変更
  4. 目的のVMストレージポリシーを選択し、互換性があるデータストアを選択します。次へをクリックします。

    VMストレージポリシーを満たすデータストア
  5. 確認し、[Finish]をクリックします。

    ストレージ移行の確認

PowerCLIを使用してVMを移行するスクリプトの例を次に示します。

#Authenticate to vCenter
Connect-VIServer -server vcsa.sddc.netapp.local -force

# Get all VMs with filter applied for a specific datastore
$vm = Get-DataStore 'vSanDatastore' | Get-VM Har*

#Gather VM Disk info
$vmdisk = $vm | Get-HardDisk

#Gather the desired Storage Policy to set for the VMs. Policy should be available with valid datastores.
$storagepolicy = Get-SPBMStoragePolicy 'NetApp Storage'

#set VM Storage Policy for VM config and its data disks.
$vm, $vmdisk | Get-SPBMEntityConfiguration | Set-SPBMEntityConfiguration -StoragePolicy $storagepolicy

#Migrate VMs to Datastore specified by Policy
$vm | Move-VM -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy)

#Ensure VM Storage Policy remains compliant.
$vm, $vmdisk | Get-SPBMEntityConfiguration
同じvSphereクラスタ内のVMの移行

次の手順に従って、UIを使用してVMを新しいデータストアに移行します。

  1. vSphere Web Clientで、[Host and Cluster]インベントリから[Cluster]を選択し、[VMs]タブをクリックします。

    特定のクラスタのVM
  2. 移行するVMを選択し、右クリックして[Migrate]オプションを選択します。

    移行するVM
  3. ストレージのみを変更するオプションを選択し、[Next]をクリックします。

    ストレージのみの変更
  4. 目的のVMストレージポリシーを選択し、互換性があるデータストアを選択します。次へをクリックします。

    VMストレージポリシーを満たすデータストア
  5. 確認し、[Finish]をクリックします。

    ストレージ移行の確認

PowerCLIを使用してVMを移行するスクリプトの例を次に示します。

#Authenticate to vCenter
Connect-VIServer -server vcsa.sddc.netapp.local -force

# Get all VMs with filter applied for a specific cluster
$vm = Get-Cluster 'vcf-m01-cl01' | Get-VM Aria*

#Gather VM Disk info
$vmdisk = $vm | Get-HardDisk

#Gather the desired Storage Policy to set for the VMs. Policy should be available with valid datastores.
$storagepolicy = Get-SPBMStoragePolicy 'NetApp Storage'

#set VM Storage Policy for VM config and its data disks.
$vm, $vmdisk | Get-SPBMEntityConfiguration | Set-SPBMEntityConfiguration -StoragePolicy $storagepolicy

#Migrate VMs to Datastore specified by Policy
$vm | Move-VM -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy)

#Ensure VM Storage Policy remains compliant.
$vm, $vmdisk | Get-SPBMEntityConfiguration
ヒント データストアクラスタが完全に自動化されたStorage DRS(Dynamic Resource Scheduling)で使用されていて、ソースとターゲットの両方のデータストアが同じタイプ(VMFS/NFS/VVol)の場合は、ソースでメンテナンスモードを有効にして、両方のデータストアを同じストレージクラスタに配置し、ソースデータストアからVMを移行します。これまでの経験は、メンテナンスのためにコンピューティングホストを処理する方法と似ています。
複数のvSphereクラスタ間でのVMの移行
メモ を参照してください "CPUの互換性とvSphere Enhanced vMotionの互換性" ソースホストとターゲットホストのCPUファミリーまたはモデルが異なる場合。

次の手順に従って、UIを使用してVMを新しいデータストアに移行します。

  1. vSphere Web Clientで、[Host and Cluster]インベントリから[Cluster]を選択し、[VMs]タブをクリックします。

    特定のクラスタのVM
  2. 移行するVMを選択し、右クリックして[Migrate]オプションを選択します。

    移行するVM
  3. コンピューティングリソースとストレージを変更するオプションを選択し、[Next]をクリックします。

    コンピューティングとストレージの両方を変更
  4. 移行する適切なクラスタを選択します。

    ターゲットクラスタを選択
  5. 目的のVMストレージポリシーを選択し、互換性があるデータストアを選択します。次へをクリックします。

    VMストレージポリシーを満たすデータストア
  6. ターゲットVMを配置するVMフォルダを選択します。

    ターゲットVMフォルダの選択
  7. ターゲットポートグループを選択します。

    ターゲットポートグループの選択
  8. 確認し、[Finish]をクリックします。

    ストレージ移行の確認

PowerCLIを使用してVMを移行するスクリプトの例を次に示します。

#Authenticate to vCenter
Connect-VIServer -server vcsa.sddc.netapp.local -force

# Get all VMs with filter applied for a specific cluster
$vm = Get-Cluster 'vcf-m01-cl01' | Get-VM Aria*

#Gather VM Disk info
$vmdisk = $vm | Get-HardDisk

#Gather the desired Storage Policy to set for the VMs. Policy should be available with valid datastores.
$storagepolicy = Get-SPBMStoragePolicy 'NetApp Storage'

#set VM Storage Policy for VM config and its data disks.
$vm, $vmdisk | Get-SPBMEntityConfiguration | Set-SPBMEntityConfiguration -StoragePolicy $storagepolicy

#Migrate VMs to another cluster and Datastore specified by Policy
$vm | Move-VM -Destination (Get-Cluster 'Target Cluster') -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy)

#When Portgroup is specific to each cluster, replace the above command with
$vm | Move-VM -Destination (Get-Cluster 'Target Cluster') -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy) -PortGroup (Get-VirtualPortGroup 'VLAN 101')

#Ensure VM Storage Policy remains compliant.
$vm, $vmdisk | Get-SPBMEntityConfiguration
同じSSOドメイン内のvCenterサーバ間でのVMの移行

次の手順に従って、同じvSphere Client UIに表示される新しいvCenter ServerにVMを移行します。

メモ ソースとターゲットのvCenterのバージョンなど、その他の要件については、 "vCenterサーバインスタンス間のvMotionの要件に関するvSphereのドキュメント"
  1. vSphere Web Clientで、[Host and Cluster]インベントリから[Cluster]を選択し、[VMs]タブをクリックします。

    特定のクラスタのVM
  2. 移行するVMを選択し、右クリックして[Migrate]オプションを選択します。

    移行するVM
  3. コンピューティングリソースとストレージを変更するオプションを選択し、[Next]をクリックします。

    コンピューティングとストレージの両方を変更
  4. ターゲットvCenterサーバでターゲットクラスタを選択します。

    ターゲットクラスタを選択
  5. 目的のVMストレージポリシーを選択し、互換性があるデータストアを選択します。次へをクリックします。

    VMストレージポリシーを満たすデータストア
  6. ターゲットVMを配置するVMフォルダを選択します。

    ターゲットVMフォルダの選択
  7. ターゲットポートグループを選択します。

    ターゲットポートグループの選択
  8. 移行オプションを確認し、[Finish]をクリックします。

    ストレージ移行の確認

PowerCLIを使用してVMを移行するスクリプトの例を次に示します。

#Authenticate to Source vCenter
$sourcevc = Connect-VIServer -server vcsa01.sddc.netapp.local -force
$targetvc = Connect-VIServer -server vcsa02.sddc.netapp.local -force

# Get all VMs with filter applied for a specific cluster
$vm = Get-Cluster 'vcf-m01-cl01'  -server $sourcevc| Get-VM Win*

#Gather the desired Storage Policy to set for the VMs. Policy should be available with valid datastores.
$storagepolicy = Get-SPBMStoragePolicy 'iSCSI' -server $targetvc

#Migrate VMs to target vCenter
$vm | Move-VM -Destination (Get-Cluster 'Target Cluster' -server $targetvc) -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy -server $targetvc) -PortGroup (Get-VirtualPortGroup 'VLAN 101' -server $targetvc)

$targetvm = Get-Cluster 'Target Cluster' -server $targetvc | Get-VM Win*

#Gather VM Disk info
$targetvmdisk = $targetvm | Get-HardDisk

#set VM Storage Policy for VM config and its data disks.
$targetvm, $targetvmdisk | Get-SPBMEntityConfiguration | Set-SPBMEntityConfiguration -StoragePolicy $storagepolicy

#Ensure VM Storage Policy remains compliant.
$targetvm, $targetvmdisk | Get-SPBMEntityConfiguration
異なるSSOドメインにあるvCenterサーバ間でのVMの移行
メモ このシナリオでは、vCenterサーバ間に通信が確立されていることを前提としています。それ以外の場合は、以下に示すデータセンター間のロケーションシナリオを確認してください。前提条件については、 "Advanced Cross vCenter vMotionに関するvSphereのドキュメント"

次の手順に従って、UIを使用してVMを別のvCenter Serverに移行します。

  1. vSphere Web Clientで、ソースのvCenterサーバを選択し、[VMs]タブをクリックします。

    ソースvCenterのVM
  2. 移行するVMを選択し、右クリックして[Migrate]オプションを選択します。

    移行するVM
  3. [Cross vCenter Server export]を選択し、[Next]をクリックします。

    vCenter Server間エクスポート
    ヒント VMはターゲットのvCenterサーバからインポートすることもできます。その手順について、 "vCenter間の高度なvMotionを使用した仮想マシンのインポートまたはクローンの作成"
  4. vCenterクレデンシャルの詳細を入力し、[Login]をクリック

    vCenterクレデンシャル
  5. vCenter ServerのSSL証明書サムプリントの確認と承認

    SSLサムプリント
  6. [Target vCenter]を展開し、ターゲットのコンピューティングクラスタを選択します。

    ターゲットのコンピューティングクラスタを選択
  7. VMストレージポリシーに基づいてターゲットデータストアを選択してください。

    ターゲットのデータストアを選択
  8. ターゲットVMフォルダを選択します。

    ターゲットVMフォルダを選択
  9. 各ネットワークインターフェイスカードマッピングのVMポートグループを選択します。

    ターゲットポートグループを選択
  10. 確認して[Finish]をクリックし、vCenterサーバ間でvMotionを開始します。

    CrossvMotionの運用レビュー

PowerCLIを使用してVMを移行するスクリプトの例を次に示します。

#Authenticate to Source vCenter
$sourcevc = Connect-VIServer -server vcsa01.sddc.netapp.local -force
$targetvc = Connect-VIServer -server vcsa02.sddc.netapp.local -force

# Get all VMs with filter applied for a specific cluster
$vm = Get-Cluster 'Source Cluster'  -server $sourcevc| Get-VM Win*

#Gather the desired Storage Policy to set for the VMs. Policy should be available with valid datastores.
$storagepolicy = Get-SPBMStoragePolicy 'iSCSI' -server $targetvc

#Migrate VMs to target vCenter
$vm | Move-VM -Destination (Get-Cluster 'Target Cluster' -server $targetvc) -Datastore (Get-SPBMCompatibleStorage -StoragePolicy $storagepolicy -server $targetvc) -PortGroup (Get-VirtualPortGroup 'VLAN 101' -server $targetvc)

$targetvm = Get-Cluster 'Target Cluster' -server $targetvc | Get-VM Win*

#Gather VM Disk info
$targetvmdisk = $targetvm | Get-HardDisk

#set VM Storage Policy for VM config and its data disks.
$targetvm, $targetvmdisk | Get-SPBMEntityConfiguration | Set-SPBMEntityConfiguration -StoragePolicy $storagepolicy

#Ensure VM Storage Policy remains compliant.
$targetvm, $targetvmdisk | Get-SPBMEntityConfiguration
データセンター間でのVMの移行
  • NSXフェデレーションまたはその他のオプションを使用してレイヤ2トラフィックをデータセンター間で拡張する場合は、手順に従ってvCenterサーバ間でVMを移行します。

  • HCxは、 "イコウノタイフ" Replication Assisted vMotionをデータセンター全体に組み込み、ダウンタイムなしでVMを移動できます。

  • "Site Recovery Manager ( SRM )" 通常はディザスタリカバリを目的としたもので、ストレージアレイベースのレプリケーションを利用した計画的な移行にもよく使用されます。

  • 継続的なデータ保護(CDP)製品の使用 "vSphere API for IO(VAIO)" データを傍受し、RPO解決策をほぼゼロにするために、コピーをリモートサイトに送信します。

  • バックアップ/リカバリ製品も利用できます。しかし、RTOが長くなることがよくあります。

  • "BlueXPディザスタリカバリサービス(DRaaS)" ストレージアレイベースのレプリケーションを利用し、特定のタスクを自動化してターゲットサイトでVMをリカバリします。

ハイブリッドクラウド環境でのVMの移行
ヒント ソースVMがブロックVVOLデータストアに配置されている場合は、SnapMirrorを使用して、サポートされている他のクラウドプロバイダのAmazon FSx for NetApp ONTAPまたはCloud Volumes ONTAP(CVO)にレプリケートし、クラウドネイティブのVMでiSCSIボリュームとして使用できます。

VMテンプレートの移行シナリオ

VMテンプレートは、vCenter Serverまたはコンテンツライブラリで管理できます。VMテンプレート、OVFテンプレート、OVAテンプレート、その他の種類のファイルの配布は、ローカルコンテンツライブラリで公開することで処理され、リモートコンテンツライブラリでサブスクライブできます。

  • vCenterインベントリに保存されているVMテンプレートをVMに変換し、VM移行オプションを使用できます。

  • OVFおよびOVAテンプレートでは、コンテンツライブラリに保存されている他のタイプのファイルを、他のコンテンツライブラリに複製できます。

  • コンテンツライブラリVMテンプレートは任意のデータストアでホストでき、新しいコンテンツライブラリに追加する必要があります。

データストアでホストされるVMテンプレートの移行
  1. vSphere Web Clientで、[VM and Templates]フォルダビューの下にあるVMテンプレートを右クリックし、[to convert to VM]オプションを選択します。

    VMテンプレートをVMに変換
  2. VMとして変換されたら、VM移行オプションに従います。

コンテンツライブラリ項目の複製
  1. vSphere Web Clientで、[Content Libraries]を選択します。

    コンテンツライブラリの選択
  2. クローンを作成するアイテムが含まれているコンテンツライブラリを選択します

  3. アイテムを右クリックし、[クローンアイテム]をクリックします。

    コンテンツライブラリアイテムを複製
    警告 アクションメニューを使用する場合は、アクションを実行するための正しいターゲットオブジェクトがリストされていることを確認します。
  4. ターゲットコンテンツライブラリを選択し、[OK]をクリックします。

    ターゲットコンテンツライブラリの選択
  5. アイテムがターゲットコンテンツライブラリで使用可能であることを確認します。

    クローンアイテムの検証

コンテンツライブラリCL01からCL02にコンテンツライブラリ項目をコピーするためのPowerCLIスクリプトの例を次に示します。

#Authenticate to vCenter Server(s)
$sourcevc = Connect-VIServer -server 'vcenter01.domain' -force
$targetvc = Connect-VIServer -server 'vcenter02.domain' -force

#Copy content library items from source vCenter content library CL01 to target vCenter content library CL02.
Get-ContentLibaryItem -ContentLibary (Get-ContentLibary 'CL01' -Server $sourcevc) | Where-Object { $_.ItemType -ne 'vm-template' } | Copy-ContentLibaryItem -ContentLibrary (Get-ContentLibary 'CL02' -Server $targetvc)
コンテンツライブラリへのテンプレートとしてのVMの追加
  1. vSphere Web ClientでVMを選択し、右クリックして[Clone as Template in Library]を選択します。

    VMクローンをlibaryのテンプレートとして作成
    ヒント libaryでクローニングするVMテンプレートが選択されている場合、VMテンプレートはOVFおよびOVAテンプレートとしてのみ保存でき、VMテンプレートとしては保存できません。
  2. [VM Template]として[Template type]が選択されていることを確認し、ウィザードの指示に従って操作を完了します。

    テンプレートタイプの選択
    メモ コンテンツライブラリのVMテンプレートの詳細については、 "vSphere VM管理ガイド"

ユースケース

サードパーティ製ストレージシステム(VSANを含む)からONTAPデータストアへの移行
  • ONTAPデータストアのプロビジョニング先に基づいて、上記のVM移行オプションを選択します。

vSphereの以前のバージョンから最新バージョンへの移行。
VCFワークロードドメインへの移行。
  • 各vSphereクラスタからターゲットワークロードドメインにVMを移行します。

    メモ ソースvCenter上の他のクラスタにある既存のVMとネットワーク通信できるようにするには、ソースvCenter vSphereホストをトランスポートゾーンに追加してNSXセグメントを拡張するか、エッジのL2ブリッジを使用してVLANでのL2通信を許可します。次のNSXドキュメントを確認: "ブリッジ用のEdge VMの設定"