vSphere 5.1から、「共有ストレージなしのvMotion」 ができるようになりました。
※通称、クロスホストストレージvMotionやx-vMotionと呼ばれているものです。

 

今回は、PowerCLI で「共有ストレージなしのvMotion」 をしてみます。

 

 

共有ストレージなしvMotion


もともと、vMotionしたいVMは
共有ディスクにVMDKファイルをおいておく必要がありました。
xvmotion1.png

 

vSphere 5.1からは、
共有ディスクにVMDKファイルを置いておかなくても
(ESXiのローカルディスクでも)vMotionができるようになりました。
ただし、5.1の新機能なので 基本的にはWeb Clientから実行する必要があります。

xvmotion2.png

 

そのため、従来のvSphere Clientでは、起動中のVMに対して

共有ストレージなしvMotion(ホストとデーデータストアの両方の移行)を実行することはできません。

※ただし、ホストとデータストアを別々に(2回に分けて)移行(vMotion)することは可能です。

xvmoton4.png


じつは、5.1からの新機能にはWebClientだけでなく、PowerCLI 5.1 から実行できるものもあります。

この場合、PowerCLIからは従来通りvCenterに接続してコマンド実行します(WebClientサーバではなく)。


共有ストレージなしvMotion(以下x-vMotion)もPowerCLI 5.1 から実行できます。
xvmotion3.png

 


PowerCLIで x-vMotion 手順

 

1. PowerCLIでvCenter5.1に接続します。

 

PowerCLIは、vSphereのバージョンに合わせて

バージョン5.1のものをインストールしています。

PowerCLI C:\> Get-PowerCLIVersion

PowerCLI Version
----------------
VMware vSphere PowerCLI 5.1 Release 1 build 793510

---------------
Snapin Versions
---------------
VMWare AutoDeploy PowerCLI Component 5.1 build 768137
VMWare ImageBuilder PowerCLI Component 5.1 build 768137
VMware License PowerCLI Component 5.1 build 669840
VMware vSphere PowerCLI Component 5.1 build 793489

 

今回は「192.168.5.52」というIPアドレスのvCenterに接続しています。

PowerCLI C:\> Connect-VIServer -Server 192.168.5.52
★vCenterにログインできるのユーザとパスワードを入力します。

 

2. 環境を確認します。

 

ESXi は下記の2台です。

  • 1号機→ 192.168.5.61
  • 2号機→ 192.168.5.62

ESXi 5.1 が2台あり、どちらもバージョンは 5.1.0 です。

ローカルデータストア(ds_esxi01とds_esxi02)だけを持っています。

PowerCLI C:\> Get-VMHost | select Name,Version,{$_ | Get-Datastore} | ft -AutoSize

Name         Version $_ | Get-Datastore
----         ------- ------------------
192.168.5.61 5.1.0   ds_esxi01
192.168.5.62 5.1.0   ds_esxi02


「vm01」というVMが、ESXi1号機で起動中(PoweredOn)です。

PowerCLI C:\> Get-VM | select Name,PowerState,VMHost | ft -AutoSize

Name PowerState VMHost
---- ---------- ------
vm01  PoweredOn 192.168.5.61

 

3. x-vMotionを実行します。

 

vm01 を、x-vMotion してみます。

 

PowerCLI の、Move-VM で、移動先(-Destination)を別のESXiにすることでvMotionすることができます。

  • -VM →移動するVM名を指定します。
  • -Destination →宛先のESXiを指定します。
  • -Datastore →宛先のデータストア(ESXi 2号機のローカルデータストア)を指定します。
PowerCLI C:\> Move-VM -VM vm01 -Destination 192.168.5.62 -Datastore ds_esxi02

 

下記のような感じで実行されます。

xvmoton5.png

 

x-vMotion が終了すると、vm01はESXi 2号機に移動しています。

PowerCLI C:\> Get-VM | select Name,PowerState,VMHost | ft -AutoSize

Name PowerState VMHost
---- ---------- ------
vm01  PoweredOn 192.168.5.62

 

とくに x-vMotion専用のPowerCLI コマンドがあるわけではなく、

従来のvMotion同様、Move-VMでx-vMotionができてしまいます。

以前VMwareのBrogで見かけた「共有ストレージなしvMotionは新機能ではなくただの機能拡張だ」

的なコメントが納得できる気がしました。

 

以上、PowerCLI でx-vMotionする話でした。