CentOS 6
Sponsored Link

ストレージマイグレーション2014/08/06

 
仮想マシンのストレージマイグレーション機能の利用です。
ある KVM ホスト上で稼動している仮想マシンを、稼動させたまま別の KVM ホストに移動できます。 システムメンテナンス等で片方の KVM ホストを停止したい場合に、その上で稼動している仮想マシンを別の KVM ホストに移動させ、仮想マシンを常に稼働させたまま 片側のシステムのメンテナンスをするといったことが可能になります。
ライブマイグレーションと異なる点は、ライブマイグレーションでは 2台の KVM ホストサーバーで利用する仮想マシンイメージはストレージサーバー上で共有されているため、仮想マシンの実体そのものは移動しませんが、 ストレージマイグレーションでは、仮想マシンイメージを格納するストレージサーバーは必要とせず、2台の KVM ホストサーバー間で仮想マシンイメージそのものをマイグレートさせます。
                          Storage Migration
                        <------------------->
                        
+----------------------+                     +----------------------+
|  [   KVM Host #1  ]  |10.0.0.21   10.0.0.22|  [  KVM Host #2   ]  |
|                      +---------------------+                      |
|   kvm01.srv.world    |                     |    kvm02.srv.world   |
+----------------------+                     +----------------------+

[1]
2台の KVM ホストサーバーを準備し、いずれか一方の KVM ホストサーバーで仮想マシンを作成しておきます。
[2] 仮想マシンを作成した KVM ホスト側で仮想マシンイメージのファイルのサイズを調べ、もう一方の KVM ホスト側で、同じサイズの空ディスクイメージを作成しておきます。
# 仮想マシンイメージのサイズを表示

[root@kvm01 ~]#
ll /var/kvm/images

total 846468
-rwxr-xr-x 1 root root 32212254720 Aug  6 22:00 centos.img


### 相手先 KVM ホスト ###

# 作成済み仮想マシンイメージと同サイズの空ディスクイメージ作成

[root@kvm02 ~]#
fallocate -l 32212254720 /var/kvm/images/centos.img

[root@kvm02 ~]#
ll /var/kvm/images

total 31457284
-rw-r--r-- 1 root root 32212254720 Aug  6 22:10 centos.img
[3] 以上の準備が整ったら、仮想マシンを起動して、ストレージマイグレーション(ライブ)を実行します。
[root@kvm01 ~]#
virsh list

 Id    Name             State
--------------------------------------
 2     centos           running

[root@kvm01 ~]#
virsh migrate --live --copy-storage-all centos qemu+ssh://10.0.0.22/system

root@10.0.0.22's password:
[root@kvm01 ~]#
virsh list

 Id    Name             State
--------------------------------------
# 稼働中の仮想マシンは移動した
### マイグレーション先の KVM ホスト ###

[root@kvm02 ~]#
virsh list

 Id    Name              State
---------------------------------------
 1     centos            running

# 元に戻す場合は通常のライブマイグレーションで OK

[root@kvm02 ~]#
virsh migrate --live centos qemu+ssh://10.0.0.21/system

root@10.0.0.21's password:
[root@kvm02 ~]#
virsh list

 Id    Name             State
--------------------------------------

関連コンテンツ