KVM动态迁移与性能优化

一、迁移概述

虚拟机的迁移是指在VMM(Virtual Machine Monitor)上运行的虚拟机系统,能够被转移到其它物理机上的VMM上运行

1.KVM迁移类型

静态迁移

静态迁移也叫做常规迁移、离线迁移(Offline Migration)就是在虚拟机关机的情况下从一台物理机迁移到另一台物理机;因为虚拟机的文件系统是建立在虚拟机镜像上,所以在虚拟机关机的情况下,只需要简单的迁移虚拟机镜像和相应的配置文件到外一台物理机上 如果要保存虚拟机迁移之前的状态,在迁移之前将虚拟机暂停,然后拷贝状态至目的主机,最后在目的主机重建虚拟状态,恢复执行 这种方式的迁移过程需要停止虚拟机的运行,从用户角度看,有明确的一段停机时间,这段时间虚拟机上的服务不可用,但这种迁移方式简单易用,适用于对可用性的要求不高的场合

共享存储的动态迁移

动态迁移(Live Migration)也叫做在线迁移(Online Migration)就在保证虚拟机上服务正常运行的同时,将一个虚拟机系统从一个物理主机移动到另一个物理主机的过程,该过程不会对最终用户造成明显影响,从而使得管理员能够在不影响用户正常使用的情况下,对物理服务器进行离线维修或者升级 与静态迁移不同的是,为了保证迁移过程中虚拟机服务的可用,迁移过程仅有非常短暂的停机时间,迁移的前面阶段,服务在源主机的虚拟机上运行,当迁移进行到一定阶段,目的主机己经具备了运行虚拟机系统的必要资源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,虚拟机系统在目的主机上继续运行 对于虚拟机服务本身而言,由于切换的时间非常短暂,用户感觉不到服务的中断,因而迁移过程对于用户来说是透明的,因此动态迁移适用于对虚拟机服务可用性要求很高的场合 目前主流的动态迁移工具,VMware的VMotion,Citrix的XenMotion,他们都依赖于物理机采用的共享存储,因而在迁移时只需要进行虚拟机系统内存执行状态的迁移,从而获得较好的迁移性能

图上中所示的动态迁移,为了缩短迁移时间,源主机和目的主机采用NFS共享存储;这样,动态迁移只需要考虑虚拟机系统内存执行状态的迁移,从而获得较好的性能

本地存储的动态迁移

动态迁移基于共享存储设备,为的是加速迁移的过程,尽量减少宕机时间,但是在某些情况下需要进行基于本地存储的虚拟机的动态迁移,这就需要存储块动态迁移技术,简称块迁移 比如某些服务器没有使用共享存储,而且迁移的频率很小,虚拟机上的服务对迁移时间的要求不严格,则可以使用存储块动态迁移技术;尽管共享存储能够提高和系统的稳定性,对于中小型企业仅仅为了加快迁移速度而配置昂责的存储设备,性价比不高 在集中式共享外部存储的环境下,基于共享存储的迁移技术在这种场合下会受到限制,虚拟机迁移到目的主机后,不能再访问其原有的外存设备 为拓宽动态迁移技术的应用范围,有必要实现一个包括虚拟机外存迁移在内的全系统动态迁移方案,使得在采用分散式本地存储的计算机集群环境下,仍然能够利用迁移技术转移虚拟机环境,并且保证迁移过程中虚拟机系统服务的可用性

上图相比较基于共享存储的动态迁移,数据块动态迁移需要同时迁移虚拟机磁盘镜像和虚拟机系统内存,延长了迁移时间,在迁移性能上会大打折扣

2.虚拟机管理工具

KVM仅仅是Linux内核的一个模块,管理和创建完整的KYM虚拟机,需要更多的辅助工具

  • QEMU-KVM:QEMU是一个强大的虚拟化软件,它可以虚拟不同的CPU构架,比如说在X86的CPU上虚拟一个Power的CPU,并利用它编译出可运行在Power上的程序;KYM使用了QEMU的基于X86的部分,并稍加改造,形成可控制KVM内核模块的用户空间工具QEMU-KVM,所以Linux发行版中分为kernel部分的KVM内核模块和QEMU-KVM工具;这就是KYM和QEMU的关系
  • libvirt、virsh、virt-manager:尽管QEMU-KVM工具可以创建和管理KVM虚拟机
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值