虚拟机存储系统及其实现方法和装置制造方法及图纸

技术编号:12976260 阅读:65 留言:0更新日期:2016-03-04 00:00
本发明专利技术公开一种虚拟机存储系统及其实现方法和装置,该方法包括接收客户端操作系统的写请求,将写请求数据缓存在虚拟机缓存中,根据服务器的状态将写请求数据上传到服务器。本发明专利技术的虚拟机存储系统及其实现方法和装置,在接收到写请求之后,通过将写请求数据缓存在虚拟机缓存中,并根据服务器的状态将写请求数据上传到服务器,可以解决云计算中虚拟机存储系统中由写突发而产生的拥堵问题。

【技术实现步骤摘要】

本专利技术涉及云计算领域,尤其涉及一种虚拟机存储系统及其实现方法和装置
技术介绍
在云计算中,虚拟机运行时所需的软件资源都存放在存储服务器上。现有技术中,虚拟机存储系统是由位于客户端的虚拟磁盘接口、虚拟机监控器(VirtualMachineMonitor,VMM)和位于服务器的输入输出(inputandoutput,IO)服务及虚拟磁盘映像所组成,其中,VMM主要负责处理与服务器的交互,缓存管理则依赖于客户端操作系统的内部机制。虚拟机存储的特点是在客户端操作系统下层,通过虚拟技术屏蔽客户端操作系统与服务器交互的细节,使得客户端操作系统及其应用程序无需本质改动就可以按照云计算的模式运行。但是,在云计算环境中,由于虚拟存储对上层进行了网络和服务器细节的屏蔽,客户端操作系统则无法了解当前网络和服务器的状况,因此无法正确选择上传数据的时机。即使客户端上没有进程占用虚拟磁盘,服务器仍然可能处于繁忙状态。客户端有可能在服务器繁忙的情况下持续提交写请求,这样,一方面会使得服务器更加繁忙,甚至在缓冲区溢出造成数据丢失,浪费带宽资源;另一方面客户端操作系统不能在期望的时间内得到服务器响应,造成相关程序运行缓慢或崩溃。
技术实现思路
有鉴于此,本公开要解决的一个技术问题是:如何解决云计算中虚拟机存储系统中由写突发而产生的拥堵问题。第一方面,本公开提供一种虚拟机存储系统实现方法,包括:接收客户端操作系统的写请求;将写请求数据缓存在虚拟机缓存中;根据服务器的状态将写请求数据上传到服务器。其中,根据服务器的状态将写请求数据上传到服务器包括:判断服务器的状态,若服务器的状态为空闲,则将写请求的数据上传到服务器,若服务器的状态为繁忙,则将写请求数据缓存在虚拟机缓存中。可选地,将写请求数据缓存在虚拟机缓存中包括:将写请求数据缓存在非易失性存储器。和/或该虚拟机存储系统实现方法还包括:根据写请求数据的类型将写请求数据上传到服务器。进一步地,根据写请求数据的类型将写请求数据上传到服务器包括:若写请求数据为用户数据,则将写请求数据上传到服务器;和/或若写请求数据为内存交换数据和/或临时数据,则将写请求数据存储在非易失性存储器;和/或该虚拟机存储系统实现方法还包括:若写请求数据为临时数据,将临时数据缓存到内存中,将至少一个临时数据合并为总临时数据后,存储到非易失性存储器。可选地,非易失性存储器包括日志磁盘。可选地,若客户端或服务器发生意外重启时,还包括:读取日志磁盘中保存的控制段;从控制段开始扫描日志磁盘,找到分配段、提交段所标识的数据段;依次上传分配段、提交段所标识的数据段;上传完毕后,正常启动客户端操作系统。可选地,该虚拟机存储系统实现还包括:将日志磁盘中的数据段提交到服务器;当接收到服务器返回的接收确认后,更改数据段的控制段为提交段;当接收到服务器返回的提交确认后,更改数据段的控制段为可用段;回收可用段标识的数据段。可选地,该虚拟机存储系统实现还包括:接收客户端操作系统的读请求;根据读请求在虚拟机缓存中查找读请求对应的数据;若在虚拟机缓存中查找到读请求对应的数据,则读取数据,若在虚拟机缓存中未查找到读请求对应的数据,则将读请求发送到服务器。第二方面,本公开提供一种虚拟机存储系统实现装置,包括:接收模块,用于接收客户端操作系统的写请求;缓存模块,与接收模块相通信,用于将写请求数据缓存在虚拟机缓存中;控制模块,与缓存模块相通信,用于根据服务器的状态将写请求数据上传到服务器。其中,控制模块还用于:判断服务器的状态,若服务器的状态为空闲,则将写请求的数据上传到服务器,若服务器的状态为繁忙,则将写请求数据缓存在虚拟机缓存中。可选地,缓存模块用于将写请求数据缓存在非易失性存储器;和/或该装置还包括:控制模块还用于根据写请求数据的类型将写请求数据上传到服务器。可选地,控制模块还用于:若写请求数据为用户数据,则将写请求数据上传到服务器;和/或若写请求数据为内存交换数据和/或临时数据,则将写请求数据存储在非易失性存储器;和/或装置还包括:控制模块还用于若写请求数据为临时数据,将临时数据缓存到内存中,将至少一个临时数据合并为总临时数据后,存储到非易失性存储器。可选地,非易失性存储器包括日志磁盘。可选地,若客户端或服务器发生意外重启时,控制模块还用于:读取日志磁盘中保存的控制段;从控制段开始扫描日志磁盘,找到分配段、提交段所标识的数据段;依次上传分配段、提交段所标识的数据段;上传完毕后,正常启动客户端操作系统。可选地,控制模块还用于:将日志磁盘中的数据段提交到服务器;当接收到服务器返回的接收确认后,更改数据段的控制段为提交段;当接收到服务器返回的提交确认后,更改数据段的控制段为可用段;回收可用段标识的数据段。可选地,该装置还包括:接收模块用于:接收客户端操作系统的读请求;控制模块还用于:根据读请求在虚拟机缓存中查找读请求对应的数据;若在虚拟机缓存中查找到读请求对应的数据,则读取数据,若在虚拟机缓存中未查找到读请求对应的数据,则将读请求发送到服务器。第三方面,本公开提供一种虚拟机存储系统,包括:配置有虚拟机存储系统实现装置的客户端;服务器,与客户端相通信,用于为客户端的用户提供服务。本公开提供的虚拟机存储系统及其实现方法和装置,在接收到写请求之后,通过将写请求数据缓存在虚拟机缓存中,并根据服务器的状态将写请求数据上传到服务器,可以解决云计算中虚拟机存储系统中由写突发而产生的拥堵问题。根据下面参考附图对示例性实施例的详细说明,本专利技术的其它特征及方面将变得清楚。附图说明图1A示出本专利技术一实施例的虚拟机存储系统实现方法的流程图。图1B示出本专利技术一实施例的虚拟存储系统的结构示意图。图2示出本专利技术另一实施例的虚拟机存储系统实现方法的流程图。图3A示出本专利技术一实施例的虚拟机存储系统实现方法的VMCache的结构图。图3B示出本专利技术一实施例的虚拟机存储系统实现方法的流程示意图。图4A示出本专利技术一实施例的虚拟机存储系统实现方法的页面映射管理的示意图。图4B示出本专利技术一实施例的虚拟机存储系统实现方法的内存缓存布局的示意图。图4C示出本专利技术一实施例的虚拟机存储系统实现方法的日志磁盘结构示意图。图4D示出本专利技术一实施例的虚拟机存储系统实现方法的段状态转移的示意图。图4E示出本专利技术一实施例四的虚拟机存储系统实现方法的段布局的示意图。图5A示出本专利技术一实施例的虚拟机存储系统实现方法中读方法的本文档来自技高网...
虚拟机存储系统及其实现方法和装置

【技术保护点】
一种虚拟机存储系统实现方法,其特征在于,包括:接收客户端操作系统的写请求;将所述写请求数据缓存在虚拟机缓存中;根据服务器的状态将所述写请求数据上传到所述服务器。

【技术特征摘要】
1.一种虚拟机存储系统实现方法,其特征在于,包括:
接收客户端操作系统的写请求;
将所述写请求数据缓存在虚拟机缓存中;
根据服务器的状态将所述写请求数据上传到所述服务器。
2.根据权利要求1所述的方法,其特征在于,根据服务器的状态
将所述写请求数据上传到所述服务器包括:
判断所述服务器的状态,若所述服务器的状态为空闲,则将所述写
请求的数据上传到所述服务器,若所述服务器的状态为繁忙,则将所述
写请求数据缓存在所述虚拟机缓存中。
3.根据权利要求1所述的方法,其特征在于,
将所述写请求数据缓存在虚拟机缓存中包括:将所述写请求数据缓
存在非易失性存储器;
和/或
所述方法还包括:
根据所述写请求数据的类型将所述写请求数据上传到所述服务器。
4.根据权利要求3所述的方法,其特征在于,
根据所述写请求数据的类型将所述写请求数据上传到所述服务器包
括:
若所述写请求数据为用户数据,则将所述写请求数据上传到所述服
务器;和/或
若所述写请求数据为内存交换数据和/或临时数据,则将所述写请
求数据存储在所述非易失性存储器;
和/或
所述方法还包括:
若所述写请求数据为临时数据,将所述临时数据缓存到内存中,将
至少一个临时数据合并为总临时数据后,存储到所述非易失性存储器。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述

\t非易失性存储器包括日志磁盘。
6.根据权利要求5所述的方法,其特征在于,若客户端或服务器
发生意外重启时,还包括:
读取日志磁盘中保存的控制段;
从所述控制段开始扫描所述日志磁盘,找到分配段、提交段所标识
的数据段;
依次上传所述分配段、提交段所标识的数据段;
上传完毕后,正常启动客户端操作系统。
7.根据权利要求5所述的方法,其特征在于,还包括:
将日志磁盘中的数据段提交到服务器;
当接收到所述服务器返回的接收确认,更改所述数据段的控制段为
提交段;
当接收到所述服务器返回的提交确认,更改所述数据段的控制段为
可用段;
回收所述可用段标识的数据段。
8.根据权利要求1至4中任一项所述的方法,其特征在于,还包
括:
接收客户端操作系统的读请求;
根据所述读请求在虚拟机缓存中查找所述读请求对应的数据;
若在所述虚拟机缓存中查找到所述读请求对应的数据,则读取数
据,若在所述虚拟机缓存中未查找到所述读请求对应的数据,则将所述
读请求发送到服务器。
9.一种虚拟机存储系统实现装置,其特征在于,包括:
接收模块,用于接收客户端操作系统的写请求;
缓存模块,与所述接收模块相连接,用于将所述写请求数据缓存在

【专利技术属性】
技术研发人员:高原全小飞广小明
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:北京;11

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

1