Kvm动态迁移,qemu命令而非virsh
2015-05-20 13:19
351 查看
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就是目的宿主机ip,tcp协议和6666端口与目的宿主机上命令行的-incoming 参数一致
4)在migrate 命令从开始到执行完成,大约十秒钟,在执行完成迁移后目的诸暨市,之前处于迁移监听默认的客户机就开始运行了,其中运行的正式动态迁移过来的客户机可以看到客户机的top命令迁移后继续运行。
NFS 作为共享存储的动态迁移,就已经完成
相关文章推荐
- KVM 【SNAT/DNAT2种配置实现以及扁平化网络模式(flat)实现/virsh2种动态迁移实现】
- QEMU-KVM虚机动态迁移原理
- 重磅精品翻译:QEMU-KVM虚机动态迁移原理
- KVM 【SNAT/DNAT2种配置实现以及扁平化网络模式(flat)实现/virsh2种动态迁移实现】 分类: Linux kvm 网络通讯 2015-07-25 00:05 322人阅读 评论(0) 收藏
- 基于共享存储nfs的kvm动态迁移
- virsh kvm xen xm qemu libvirt virt-manager概述 .
- QEMU-KVM中的多线程压缩迁移技术
- 基本KVM虚机和QEMU-IMG命令
- kvm虚拟化学习笔记(十五)之kvm虚拟机动态迁移
- qemu-kvm命令
- 虚拟化使用命令xen\kvm\qemu
- KVM基于NFS的动态迁移
- 如何使用 virsh 命令创建、还原和删除 KVM 虚拟机快照
- 05.virsh命令的常用操作(kvm)
- KVM 动态迁移
- KVM精简教程(五):qemu-img命令详解
- (KVM连载)4.3.2 qemu-img命令详解
- kvm命令(qemu-system-x86_64)启动虚拟机过程记录(虚拟机中启动虚拟机、创建镜像)
- KVM在线迁移(动态迁移)—图形界面
- [置顶] Linux实现KVM+QEMU+libvirt的虚拟机环境 并使用virsh对虚拟机进行管理