论文摘要
在目前的大规模数据中心中,利用虚拟化技术来实现服务的资源调度和共享已成为主流,其中一种通用的方式就是把虚拟机作为服务的后台。在这样的情况下,当服务请求不停的切换和调度时,所对应的虚拟机也会被频繁的创建和关闭,这些因素使得创建虚拟机的时间成为云计算服务响应和部署的瓶颈。目前,虚拟化环境下提高服务响应、优化服务部署的方法都未涉及到创建虚拟机这一个环节,虚拟机创建过程耗时长,对宿主机资源消耗过大的问题日趋突出。基于虚拟机内存模板的云计算服务系统VMCS(Cloud Service System Based On VM Memory Template)直接对服务部署过程中的虚拟机创建环节进行优化,有效的解决了上述问题。VMCS系统的特点在于:针对虚拟化Xen平台,提出了虚拟机内存模板的概念,通过修改Domain-0的Xen Tools代码,在传统的虚拟机保存恢复操作的基础上利用内存模板创建虚拟机,并且完成虚拟机各自私有属性的配置。VMCS系统实现了用户层,服务管理层和虚拟机平台层三层架构,其中用户层通过WEB界面向用户提供统一服务访问接口;服务管理层是整个系统的核心,先通过服务请求处理完成服务请求的解析,然后调用虚拟机内存模板管理和虚拟机镜像文件管理的接口,对要创建的虚拟机进行配置信息的设置,最后由服务Center完成消息命令的分发。虚拟机平台层位于系统底层,主要包括服务Daemon和Agent,服务Daemon主要负责和服务Center进行通信,接收创建虚拟机或执行请求任务的消息,并调用本地API完成内存模板创建虚拟机的过程,而虚拟机内部的Agent会负责修改虚拟机的私有属性并在虚拟机内部启动执行计算任务。以在VMCS系统上搭建Hadoop服务为例,快速创建多台虚拟机来完成Hadoop的WordCount计算任务。通过和传统方式相比,利用VMCS系统使得创建虚拟机的时间减少了80%,由创建虚拟机所带来磁盘I/O开销降低到50%,执行Hadoop的WordCount计算任务的时间降低40%。