Kvm 虚拟化 之 动态迁移

Kvm 动态迁移

动态迁移的效率和应用场景:

虚拟机迁移主要增强了系统的可维护性,其主要目标就是在客户机没有感觉的情况下,将客户机,迁移到另一个物理机器上,从而保证了服务器正常使用。可以从如下几个方面来衡量虚拟机迁移的效率:

1)整体迁移时间:从源主机中迁移操作开始到目的主机上客户机服务处于不可用状态的时间,此时源主机上客户机已经暂停服务,目的主机上的客户机还未恢复服务

2)服务器停机时间:在迁移过程中,源主机和目的主机上的客户机都处于不可用状态的时间,此时源主机上客户机已暂停,目的目的主机上客户还未恢复服务

3)对服务的性能影响:不仅包括迁移后的客户机中应用程序的性能与迁移前相对比是否有所降低,还包括迁移后对目的主机上的其他服务的性能影响

Kvm动态迁移,也有如下几个建议和注意事项

1) 源宿主机和目的宿主机直接尽量用网络共享的存储系统来保存客户机磁盘镜像,尽管kvm动态迁移也支持联通磁盘镜像一起复制,共享存储(如NFS )来源宿主机和目的上的挂载位置必须完全一致

2) 为了提高动态迁移的成功率,尽量在同类型cpu的主机上面进行动态迁移,尽量kvm动态迁移也支持从Intel平台迁移到amd平台。

3) 64位的客户机只能运行在64宿主机之间的迁移,而32位客户机可以在32宿主机和64位宿主机之间迁移。

4) 动态迁移的源宿主机和目的宿主机对NX 位的设置是相同,要么同为关闭状态,要么同为打开状态。在Intel平台上的linux系统中,用“cat /proc/couinfo |grep nx ”命令可以查看是否有NX的支持

5) 在进行动态迁移时,被迁移客户机的名称是唯一的,在目的宿主机上不能有与源宿主机被迁移客户机同名的客户机存在  

6) 目的宿主机和源宿主机的软件尽可能的相同

下面介绍在kvm上进行动态迁移的具体操作,这里客户机镜像文件存在nfs共享存储上面,源宿主机(192.168.10.10)目的宿主机(192.168.10.9)nfs共享在192.168.10.10上面

环境:

Redhat 6.3 x64    源宿主机:192.168.10.10 nfs共享镜像在这上面共享存储可以单独存放)

Redhat 6.3 x64    目标宿主机:192.168.10.9

Redhat 6.3 x64     宿主机上的虚拟机:192.168.10.101 

拓扑图如下:

##192.168.10.10源###     动态迁移      ###192.168.10.9目标##

###192.168.10.101 ===============》 192.168.10.101  #

###############                        ################

1)在源宿主机上挂载NFS上的客户机镜像,并启动客户机。

[root@localhost ~]# mount -t nfs 192.168.10.10:/kvm/    /redhat

df -h 查看挂载:

 

启动虚拟机:

[root@localhost Desktop]# qemu-system-x86_64  -hda /redhat/rhel6u3.img -m 512 -localtime -net nic -net tap,ifname=tap1,script=no,downscript=no  -monitor stdio  #添加-monitor stdio方便进入monitor 执行命令,迁移

 

用vncviewer :5900 连接虚拟机在虚拟机中运行top命令,以便于在动态迁移的时候检查它是否仍然继续进行。

 

2)目的宿主机上也挂载NFS上的客户机镜像的目录,并且启动一个客户机用于接收动态迁移过来的内存内容:命令操作如下:

[root@localhost ~]# mount -t nfs 192.168.10.10:/kvm/    /redhat

df -h 查看挂载:

启动虚拟机:

[root@localhost Desktop]# qemu-system-x86_64  -hda /redhat/rhel6u3.img -m 512 -localtime -net nic -net tap,ifname=tap1,script=no,downscript=no -incoming tcp:0:6666

这里注意:nfs挂载目录必须与源主机上保持一致;启动客户机命令一致,但是需要增加-incoming 选项:-incoming tcp:0:6666 这个参数他表示在6666 端口建立一个tcp socket 连接用于接收来源主机的动态迁移的内容。其中0 表示:任何允许来自任何主机的连接“-incoming” 这个参使qem-kvm进程进入到迁移监听(migration-listen)模式,而不是真正以命令行中的镜像文件运行客户机,从vnc里面看,客户机黑色没任何显示,在等待动态迁移的数据传入。


3)在源宿主机的qemu monitor 命令行中输入migrate tcp:192.168.10.9:6666即可进入动态迁移的流程   192.168.10.9就是目的宿主机iptcp协议和6666端口与目的宿主机上命令行的-incoming 参数一致

 

4)在migrate  命令从开始到执行完成,大约十秒钟,在执行完成迁移后目的诸暨市,之前处于迁移监听默认的客户机就开始运行了,其中运行的正式动态迁移过来的客户机可以看到客户机的top命令迁移后继续运行。

NFS 作为共享存储的动态迁移,就已经完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值