本地计算模式虚拟机的启动加速方法技术

技术编号:20621897 阅读:42 留言:0更新日期:2019-03-20 14:07
本发明专利技术公开了一种本地计算模式虚拟机的启动加速方法,服务器根据虚拟机的模板镜像生成最小启动镜像,将所述最小启动镜像分发到终端;当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像。本发明专利技术通过本地缓存最小启动镜像并且读取,能够快速启动虚拟机并且能够有效缓解启动风暴。

Start-up Acceleration Method of Local Computing Model Virtual Machine

The invention discloses a startup acceleration method for a local computing mode virtual machine. The server generates a minimum startup image according to the template image of the virtual machine and distributes the minimum startup image to the terminal. When the terminal needs to read the virtual machine image, the terminal reads the minimum startup image of the cache from the local. The invention can quickly start the virtual machine and effectively alleviate the start storm by minimizing the boot mirror in the local cache and reading it.

【技术实现步骤摘要】
本地计算模式虚拟机的启动加速方法
本专利技术属于桌面虚拟化
,具体涉及一种本地计算模式虚拟机的启动加速方法。
技术介绍
传统的vdi虚拟桌面有几个缺点:高度依赖网络,网络质量不好会严重影响使用效果;性能不如物理桌面,不大适合有3D处理,高清视频需求的场景;服务器计算存储负载重,成本高。虚拟桌面的本地计算模式可以解决以上问题。本地计算模式不需要从服务器传输画面,不存在画面延迟;本地计算模式可使用显卡穿透技术,适用于3d处理,高清视频场景;本地计算模式使用终端的计算资源,不增加服务器负担。尽管本地计算模式也有移动性差、数据落地等缺陷,但它依然是云桌面的一种重要部署模式。本地计算的虚拟机存储分为两种:一种是完全离线,即把虚拟机镜像整个下载到本地,优点是虚拟机运行不依赖于网络,缺点是镜像批量下载慢,同步慢;数据落地不安全;几乎没有移动性。另一种是虚拟机镜像依然在服务器上,终端通过网络访问虚拟机镜像。优点是移动性较好,数据不完全落地因此安全性较高,缺点是依然依赖于网络。存储在服务器上,就同样会有vdi模式存储IO压力大的问题,当多个终端同时启动虚拟机时,容易引起启动风暴,虚拟机启动缓慢,甚至黑屏无法启动的问题。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种本地计算模式虚拟机的启动加速方法。为达到上述目的,本专利技术的技术方案是这样实现的:本专利技术实施例提供一种本地计算模式虚拟机的启动加速方法,该方法为:服务器根据虚拟机的模板镜像生成最小启动镜像,将所述最小启动镜像分发到终端;当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像。上述方案中,所述服务器根据虚拟机的模板镜像生成最小启动镜像,具体为:所述服务器根据虚拟机的模板镜像启动虚拟机,根据启动数据中不变化数据区域删除模板镜像中不变化数据区域之外的数据获得最小启动镜像。上述方案中,所述启动数据中不变化数据区域,具体为:所述服务器根据虚拟机的模板镜像启动虚拟机,在虚拟机运行过程中,确定虚拟磁盘的读入数据区域和写入数据区域,所述虚拟磁盘的读入数据区域和写入数据区域的差集即为启动数据中不变化数据区域。上述方案中,所述启动数据中不变化数据区域,具体为:所述服务器根据虚拟机的模板镜像多次启动虚拟机,在每次虚拟机运行过程中分别确定虚拟磁盘的读入数据区域和写入数据区域,每次启动的虚拟磁盘的读入数据区域和写入数据区域的差集获得每次启动数据中不变化数据区域,将所有启动数据中不变化数据区域的交集即为启动数据中不变化数据区域。上述方案中,所述启动数据中不变化数据区域,具体为:所述服务器根据虚拟机的模板镜像以不同的配置参数启动虚拟机,在每次虚拟机运行过程中分别确定虚拟磁盘的读入数据区域和写入数据区域,每次启动的虚拟磁盘的读入数据区域和写入数据区域的差集获得每次启动数据中不变化数据区域,将所有启动数据中不变化数据区域的并集即为启动数据中不变化数据区域。上述方案中,所述服务器根据虚拟机的模板镜像生成最小启动镜像之后,该方法还包括,将该模板镜像设置为最小启动镜像的差分镜像。上述方案中,所述当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像,具体为:所述终端读取虚拟机镜像时,同时打开虚拟机镜像、模板镜像、最小启动镜像,并且依次查找需要读取的镜像并且启动。与现有技术相比,本专利技术通过本地缓存最小启动镜像并且读取,能够快速启动虚拟机并且能够有效缓解启动风暴。附图说明图1为本专利技术实施例提供一种本地计算模式虚拟机的启动加速方法的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例提供一种本地计算模式虚拟机的启动加速方法,如图1所示,该方法通过以下步骤实现:步骤101:服务器根据虚拟机的模板镜像生成最小启动镜像;具体地,所述模板镜像包含操作系统和常用软件;用户虚拟机镜像是基于模板镜像创建出来的差分镜像。所述最小启动镜像仅包含虚拟机每次启动需要读取的不变化数据的虚拟机镜像;最小启动镜像的数据是从模板镜像数据中提取的,最小启动镜像可用于虚拟机启动时缓存加速。所述服务器根据虚拟机的模板镜像启动虚拟机,根据启动数据中不变化数据区域删除模板镜像中不变化数据区域之外的数据获得最小启动镜像。所述服务器根据虚拟机的模板镜像启动虚拟机,在虚拟机运行过程中,确定虚拟磁盘的读入数据区域和写入数据区域,所述虚拟磁盘的读入数据区域和写入数据区域的差集即为启动数据中不变化数据区域。所述读入数据区域记为read_list,所述写入数据区域记为write_list;启动数据中不变化数据区域记为boot_list=read_list-write_list。read_list是虚拟机运行时读的数据,因为虚拟机启动到桌面就关闭了,read_list可以认为是启动数据。write_list是写的数据,写数据说明这些数据是易变的。read_list要去掉易变数据,就可以认为是启动数据中不变化数据区域。根据实际使用场景,可能需要不同的优化:第一种是尽量减少最小启动镜像的体积,以便于文件分发;第二种是适量增大最小启动镜像的体积,以增强加速效果。以第一种是尽量减少最小启动镜像的体积为例,所述服务器根据虚拟机的模板镜像多次启动虚拟机,在每次虚拟机运行过程中分别确定虚拟磁盘的读入数据区域和写入数据区域,每次启动的虚拟磁盘的读入数据区域和写入数据区域的差集获得每次启动数据中不变化数据区域,将所有启动数据中不变化数据区域的交集即为启动数据中不变化数据区域,这样,能够更准确地判断启动数据哪部分是不变化的。以第二种是适量增大最小启动镜像的体积为例,所述服务器根据虚拟机的模板镜像以不同的配置参数启动虚拟机,在每次虚拟机运行过程中分别确定虚拟磁盘的读入数据区域和写入数据区域,每次启动的虚拟磁盘的读入数据区域和写入数据区域的差集获得每次启动数据中不变化数据区域,将所有启动数据中不变化数据区域的并集即为启动数据中不变化数据区域,这样,能够使boot_list中包含常用的驱动数据,提高缓存命中率。所述服务器根据虚拟机的模板镜像生成最小启动镜像之后,该方法还包括,在模板镜像中,删除与最小启动镜像重复的数据,将该模板镜像设置为最小启动镜像的差分镜像,这样,终端在读取模板镜像数据时,就可以识别出读取的数据是否在最小启动镜像中。步骤102:将所述最小启动镜像分发到终端;具体地,可以通过各种文件批量分发方法,把最小启动镜像分发到终端使用,也能够避免第一次启动时启动风暴的问题。当然,也可以终端出厂安装时就自带最小启动镜像;也可以服务器通过p2p或组播等分发最小启动镜像分发到终端。步骤103:当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像。具体地,所述终端读取虚拟机镜像时,同时打开虚拟机镜像、模板镜像、最小启动镜像,并且依次查找需要读取的镜像并且启动。所述虚拟机镜像中会记录模板镜像的文件名,模板镜像中会记录最小启动镜像的文件名。假设终端要读取一个数据块,那么优先从虚拟机镜像找,找不到就到模板镜像找,还找不到就从最小启动镜像找;如果最终也找不到就属于异常情况了,说明这块数据未初始本文档来自技高网...

【技术保护点】
1.一种本地计算模式虚拟机的启动加速方法,其特征在于,该方法为:服务器根据虚拟机的模板镜像生成最小启动镜像,将所述最小启动镜像分发到终端;当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像。

【技术特征摘要】
1.一种本地计算模式虚拟机的启动加速方法,其特征在于,该方法为:服务器根据虚拟机的模板镜像生成最小启动镜像,将所述最小启动镜像分发到终端;当所述终端需要读取虚拟机镜像时,该终端从本地读取缓存的最小启动镜像。2.根据权利要求1所述的本地计算模式虚拟机的启动加速方法,其特征在于,所述服务器根据虚拟机的模板镜像生成最小启动镜像,具体为:所述服务器根据虚拟机的模板镜像启动虚拟机,根据启动数据中不变化数据区域删除模板镜像中不变化数据区域之外的数据获得最小启动镜像。3.根据权利要求2所述的本地计算模式虚拟机的启动加速方法,其特征在于,所述启动数据中不变化数据区域,具体为:所述服务器根据虚拟机的模板镜像启动虚拟机,在虚拟机运行过程中,确定虚拟磁盘的读入数据区域和写入数据区域,所述虚拟磁盘的读入数据区域和写入数据区域的差集即为启动数据中不变化数据区域。4.根据权利要求3所述的本地计算模式虚拟机的启动加速方法,其特征在于,所述启动数据中不变化数据区域,具体为:所述服务器根据虚拟机的模板镜像多次启动虚拟机,在每次虚拟机运行过程中分别确定虚拟磁盘的读入数据区域和写入数据区域,每次启动的虚拟磁盘的读入数据...

【专利技术属性】
技术研发人员:廖振岚
申请(专利权)人:广东微云科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1