[发明专利]一种虚拟机迁移方法及装置有效
申请号: | 201610387673.6 | 申请日: | 2016-06-02 |
公开(公告)号: | CN107463424B | 公开(公告)日: | 2020-01-24 |
发明(设计)人: | 李文文 | 申请(专利权)人: | 北京金山云网络技术有限公司;北京金山云科技有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/48 |
代理公司: | 11413 北京柏杉松知识产权代理事务所(普通合伙) | 代理人: | 马敬;项京 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟机 迁移 方法 装置 | ||
本发明实施例公开了一种虚拟机迁移方法及装置,应用于服务器,该方法包括:在接收到迁移指令后,将虚拟机当前的所有脏数据从源宿主机拷贝到目的宿主机,计算当前脏数据拷贝速率,获得所述虚拟机在拷贝脏数据所用时长中新产生的脏数据的数据量,判断新产生的脏数据是否能在预设的停机时间内拷贝至所述目的宿主机;如果是,则将新产生的脏数据拷贝至所述目的宿主机,并使所述虚拟机停机,完成所述虚拟机的迁移;否则,计算当前脏数据产生速率;根据当前脏数据产生速率与当前脏数据拷贝速率的比值应为预设值的条件确定休眠时间,使得所述虚拟机按休眠时间进行休眠并进行下一轮的迭代拷贝。本发明实施例可以适应不同的业务负载情况。
技术领域
本发明涉及计算机技术领域,特别涉及一种虚拟机迁移方法及装置。
背景技术
在虚拟化环境中,业务负载运行在虚拟机上,虚拟机运行在物理机上,每 个物理机上可运行一台或多台虚拟机。每台虚拟机的内存也被称为内存储器, 用于暂时存放CPU(Central Processing Unit,中央处理器)中的运算数据,以及 与硬盘等外部存储器交换的数据;只要虚拟机在运行中,CPU就会把需要运算 的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来。在虚拟机 运行过程中,有时需要将虚拟机从源宿主机(物理机)迁移到目的宿主机,整 个过程要求业务不中断、数据不丢失。这种过程被称为虚拟机的热迁移,又叫 动态迁移、实时迁移。在虚拟机迁移过程中,如果虚拟机的内存有写操作,则被写过的内存认为是脏页或内存脏页,也叫脏页数据或脏数据。
目前,虚拟机热迁移通常采用迭代拷贝的方式进行,通过多次循环将虚拟 机的内存数据从源宿主机全部拷贝到目的宿主机。迁移开始之后,首先,服务 器将待迁移虚拟机所有的内存数据均认为是脏页数据,第一轮将目前所有的脏 页数据拷贝到目的宿主机;在第一轮拷贝中,虚拟机未关机而是继续运行,如 果虚拟机的内存有写操作,则认为被写过的内存是新的脏页数据。在第一轮拷 贝结束后,服务器重新计算在这个过程中新产生的脏页数据,然后进行第二轮 拷贝,将这些新的脏页数据拷贝到目的宿主机;如此循环,直到当新产生的脏 页数据的数据量小于某个阈值时,进入停机拷贝阶段,虚拟机停机不再产生脏页数据。服务器将当前的脏页数据一次性全部拷贝到目的宿主机,最后一轮拷 贝的总体时间需要小于等于设定的停机时间(如设定的停机时间为300ms)。迭 代拷贝机制极大的减少了停机拷贝阶段需要传输的内存脏页的数据量,从而将 停机时间大大缩短。
但是,如果当前虚拟机产生脏数据的速率较高,说明虚拟机内部CPU写内 存的操作比较频繁,即目前虚拟机内部业务的处理比较频繁,而当前消除脏数 据的速率较慢,即脏数据拷贝速率较慢时,虚拟机的迭代拷贝过程无法收敛, 虚拟机会一直迁移,无法结束。比如,脏页数据拷贝的速率只能小于等于网络 传输速率,当虚拟机产生脏页数据的速率较大(如大于2GB/s),网络传输速率 较小(如小于1GB/s)时,虚拟机会一直处在迭代拷贝的过程中,在没有任何收 敛机制的情况下,虚拟机会一直迁移无法结束。
为了防止虚拟机一直处于迭代拷贝的过程而无法结束的情况,需要采用特 定的收敛算法使得虚拟机热迁移的迭代拷贝过程收敛,保证迁移成功。现有技 术中采用控制虚拟机休眠部分时间的方式,降低虚拟机产生脏页数据的速率, 以达到使虚拟机迁移过程收敛的目的。虚拟机处于休眠状态时,内部CPU不工 作,在休眠时间内虚拟机不会产生新的内存脏页,可以降低虚拟机产生脏数据 的速率,使得虚拟机产生脏数据的速率小于脏数据拷贝速率,进而使虚拟机的 迭代拷贝过程能够收敛。但是如果收敛算法过于激进,会导致虚拟机休眠时间 较长,业务中断时间较长;如果收敛算法过于保守,则整个收敛过程非常缓慢, 热迁移的耗时会比较长,在热迁移过程中CPU的使用率较低。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司;北京金山云科技有限公司,未经北京金山云网络技术有限公司;北京金山云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610387673.6/2.html,转载请声明来源钻瓜专利网。