CentOS 7
Sponsored Link

ライブマイグレーション
2014/08/12
 
仮想マシンのライブマイグレーション機能の利用です。
ある KVM ホスト上で稼動している仮想マシンを、稼動させたまま別の KVM ホストに移動できます。 システムメンテナンス等で片方の KVM ホストを停止したい場合に、その上で稼動している仮想マシンを別の KVM ホストに移動させ、仮想マシンを常に稼働させたまま 片側のシステムのメンテナンスをするといったことが可能になります。
前提として、2台の KVM ホストサーバー、および、 仮想マシンイメージを格納するストレージサーバーの、計 3台のサーバーが必要となります。
ここでは例として、以下のような環境でライブマイグレーションを実行します。前提として、DNS または hosts 等で名前解決が正常にできるようにしておく必要があります。
                      +----------------------+
                      |   [  NFS Servver  ]  |
                      |     nfs.srv.world    |
                      |                      |
                      +-----------+----------+
                                  |10.0.0.30
                                  |
+----------------------+          |          +----------------------+
|  [   KVM Host #1  ]  |10.0.0.21 | 10.0.0.22|  [  KVM Host #2   ]  |
|                      +----------+----------+                      |
|    kvm01.srv.world   |                     |    kvm02.srv.world   |
+----------------------+                     +----------------------+

[1]
仮想マシンイメージ格納用のストレージサーバーを構築しておきます。ストレージサーバーには NFS, iSCSI, GlusterFS など、ネットワーク共有できる仕組みであれば何でも OK です。 ここでは例として、NFS によるストレージサーバーを構築します。
[2]
2台の KVM ホストサーバーを準備し、両サーバーで同じディレクトリに NFS 共有ディレクトリをマウントしておきます。 ここでは例として [/var/kvm/images] に NFS 共有ディレクトリをマウントします。
[3]
いずれか一方の KVM ホストサーバーで仮想マシンを作成し、起動しておきます。
[4] 以上の準備が整ったら、仮想マシンを作成して起動している KVM ホストサーバー上でライブマイグレーションを実行します。 成功すると、以下のようにもう片方の KVM ホストサーバーに仮想マシンがマイグレートされます。
[root@kvm01 ~]#
virsh list

 Id    Name             State
--------------------------------------
 3     centos7          running

[root@kvm01 ~]#
virsh migrate --live centos7 qemu+ssh://10.0.0.22/system

root@10.0.0.22's password:    
# 接続先の root パスワード
[root@kvm01 ~]#
virsh list

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

[root@kvm02 ~]#
virsh list

 Id    Name              State
---------------------------------------
 1     centos7           running

# 元に戻す場合は同じように 相手先 KVM ホストのホスト名または IP アドレスを指定してマイグレーションを実行

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

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

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

 
Tweet