当前位置: 首页 > 专利查询>伊姆西公司专利>正文

用于虚拟机的方法和装置制造方法及图纸

技术编号:16918840 阅读:31 留言:0更新日期:2017-12-31 14:36
本公开的实施例涉及用于虚拟机的方法和装置。一种在虚拟机中实施的方法包括:接收对虚拟机的虚拟盘进行I/O操作的I/O请求;检测虚拟盘与用于虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于关联关系来调度I/O请求。通过本公开的实施例,可以高效地在虚拟环境中实现应用感知的I/O QoS,并且可以将虚拟版本的IT解决方案移动到不同的虚拟平台。根据本公开的实施例的方法和装置具有良好的灵活性和兼容性。

【技术实现步骤摘要】
用于虚拟机的方法和装置
本公开一般性地涉及虚拟机系统,并且更特别地,涉及一种用于虚拟机的方法和装置。
技术介绍
现今,随着虚拟化技术变得越来越流行,物理平台上的许多信息技术(informationtechnology,IT)解决方案正在被移动到虚拟环境中。但是,这些新的虚拟版本解决方案仍然面临许多挑战。在这些挑战之中,与输入/输出I/O(input/output)有关的服务质量(QualityofService,QoS)被考虑为是一个关键的问题。通常,虚拟环境中包括I/O堆栈。客机操作系统(guestoperationsystem)中的虚拟盘是从虚拟机监管系统(hypervisor)中的数据存储(Datastore)中分配的。数据存储指示了来自虚拟环境存储池的虚拟存储设备,它可以是虚拟机文件系统(virtualmachinefilesystem,VMFS)文件或者网络文件系统(networkfilesystem,NFS)文件。在本文的上下中,使用术语“数据存储”可互换地表示虚拟机监管系统中的虚拟存储设备。对于I/OQoS而言,I/O堆栈中的不同层关注于不同的方面。例如,虚拟机监管系统I/O堆栈在虚拟机层级上调度I/O,这意味着可以为具有较高优先级的虚拟机保留较大的I/O带宽。后端存储设备在虚拟机监管系统层级上调度I/O,其决定在不同虚拟机监管系统之间共享的I/O带宽。此外,在虚拟机内部,还需要在不同的进程之间管理I/OQoS,这样的I/O调度可以称之为应用感知的I/O调度,即根据I/O的用途和/或来源等因素进行调度。目前在虚拟环境中,尚不存在针对应用感知I/OQoS的行之有效的解决方案。
技术实现思路
本公开的实施例提供了一种用于虚拟机的方法和装置。根据本公开的第一方面,提供了一种在虚拟机中实施的方法。该方法包括:接收对虚拟机的虚拟盘进行I/O操作的I/O请求;检测虚拟盘与用于虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于关联关系来调度I/O请求。在一些实施例中,接收对虚拟机的虚拟盘进行I/O操作的I/O请求可以包括:将I/O请求组织为与相应的虚拟盘相关联的第一I/O请求队列;以及基于第一I/O请求队列对I/O请求进行合并。在一些实施例中,检测虚拟盘与用于虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系可以包括:检测虚拟盘中共享相同虚拟存储设备的虚拟盘。在一些实施例中,基于关联关系来调度I/O请求可以包括:基于关联关系将I/O请求组织为与相应的虚拟存储设备相关联的第二I/O请求队列;以及对第二I/O请求队列中的I/O请求排序。在一些实施例中,该方法可以进一步包括:将经排序的第二I/O请求队列转换为与相应的虚拟盘相关联的第三I/O请求队列;以及将第三I/O请求队列发送给虚拟机监管系统,以便虚拟机监管系统依次执行第三I/O请求队列中的I/O请求所对应的I/O操作。在一些实施例中,对第二I/O请求队列排序可以包括基于以下至少一项进行排序:第二I/O请求队列的特性,以及与第二I/O请求队列中的I/O请求相关联的虚拟盘的特性。在一些实施例中,第二I/O请求的特性可以包括以下至少一项:第二I/O请求队列中将被处理的I/O请求的预定数目,第二I/O请求队列中的I/O请求的到达时间,第二I/O请求队列中的I/O操作的类型,第二I/O请求队列中的I/O操作的调度历史统计,以及第二I/O请求队列中的I/O操作的优先级。在一些实施例中,虚拟盘的特性可以包括以下至少一项:虚拟盘的优先级,以及虚拟盘的调度历史统计。在一些实施例中,该方法可以进一步包括:对第二I/O请求队列进行节流。在一些实施例中,该方法可以进一步包括:从用户接口接收用于节流的节流阈值;以及响应于第二I/O请求队列中的I/O请求数目达到节流阈值,对第二I/O请求队列进行节流。在一些实施例中,调度I/O请求可以进一步包括:检测虚拟盘与后端存储设备之间的附加关联关系;以及基于关联关系和附加关联关系来调度I/O请求。在一些实施例中,该方法可以进一步包括:从用户接口接收每种类型的I/O操作优先级和每个虚拟盘的I/O操作优先级的设置;以及向用户接口发送每种类型的I/O操作性能和每个虚拟盘的I/O操作,以便用户调整设置。在一些实施例中,检测可以由检测单元执行,并且调度可以由调度单元执行,该方法可以进一步包括:响应于检测单元检测到关联关系,将附接至空I/O调度器的虚拟盘附接至调度单元。根据本公开的第二方面,提供了一种在虚拟机中实施的装置。该装置包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中至少一个存储器和计算机程序代码被配置为,与处理器一起,促使装置至少:接收对虚拟机的虚拟盘进行I/O操作的I/O请求;检测虚拟盘与用于虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于关联关系来调度I/O请求。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少通过以下操作来接收对虚拟机的虚拟盘进行I/O操作的I/O请求:将I/O请求组织为与相应的虚拟盘相关联的第一I/O请求队列;以及基于第一I/O请求队列对I/O请求进行合并。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少通过以下操作来检测虚拟盘与用于虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系:检测虚拟盘中共享相同虚拟存储设备的虚拟盘。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少通过以下操作而基于关联关系来调度I/O请求:基于关联关系将I/O请求组织为与相应的虚拟存储设备相关联的第二I/O请求队列;以及对第二I/O请求队列中的I/O请求排序。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少:将经排序的第二I/O请求队列转换为与相应的虚拟盘相关联的第三I/O请求队列;以及将第三I/O请求队列发送给虚拟机监管系统,以便虚拟机监管系统依次执行第三I/O请求队列中的I/O请求所对应的I/O操作。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置基于以下至少一项进行排序来对第二I/O请求队列排序:第二I/O请求队列的特性,以及与第二I/O请求队列中的I/O请求相关联的虚拟盘的特性。在一些实施例中,第二I/O请求的特性可以包括以下至少一项:第二I/O请求队列中将被处理的I/O请求的预定数目,第二I/O请求队列中的I/O请求的到达时间,第二I/O请求队列中的I/O操作的类型,第二I/O请求队列中的I/O操作的调度历史统计,以及第二I/O请求队列中的I/O操作的优先级。在一些实施例中,虚拟盘的特性可以包括以下至少一项:虚拟盘的优先级,以及虚拟盘的调度历史统计。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少:对第二I/O请求队列进行节流。在一些实施例中,至少一个存储器和计算机程序代码可以进一步被配置为,与处理器一起,促使装置至少:从用户接口接收用于节流的节流阈值;以及响应于第二I/O请求队列中的I/O请求数目达到节流阈值,对第二I/O请求队本文档来自技高网
...
用于虚拟机的方法和装置

【技术保护点】
一种在虚拟机中实施的方法,包括:接收对所述虚拟机的虚拟盘进行I/O操作的I/O请求;检测所述虚拟盘与用于所述虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于所述关联关系来调度所述I/O请求。

【技术特征摘要】
1.一种在虚拟机中实施的方法,包括:接收对所述虚拟机的虚拟盘进行I/O操作的I/O请求;检测所述虚拟盘与用于所述虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于所述关联关系来调度所述I/O请求。2.根据权利要求1所述的方法,其中接收对所述虚拟机的虚拟盘进行I/O操作的I/O请求包括:将所述I/O请求组织为与相应的所述虚拟盘相关联的第一I/O请求队列;以及基于所述第一I/O请求队列对所述I/O请求进行合并。3.根据权利要求1所述的方法,其中检测所述虚拟盘与用于所述虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系包括:检测所述虚拟盘中共享相同虚拟存储设备的虚拟盘。4.根据权利要求1所述的方法,其中基于所述关联关系来调度所述I/O请求包括:基于所述关联关系将所述I/O请求组织为与相应的所述虚拟存储设备相关联的第二I/O请求队列;以及对所述第二I/O请求队列中的所述I/O请求排序。5.根据权利要求4所述的方法,进一步包括:将经排序的所述第二I/O请求队列转换为与相应的所述虚拟盘相关联的第三I/O请求队列;以及将所述第三I/O请求队列发送给所述虚拟机监管系统,以便所述虚拟机监管系统依次执行所述第三I/O请求队列中的I/O请求所对应的I/O操作。6.根据权利要求4所述的方法,其中对所述第二I/O请求队列排序包括基于以下至少一项进行排序:所述第二I/O请求队列的特性,以及与所述第二I/O请求队列中的所述I/O请求相关联的所述虚拟盘的特性。7.根据权利要求6所述的方法,其中所述第二I/O请求的特性包括以下至少一项:所述第二I/O请求队列中将被处理的I/O请求的预定数目,所述第二I/O请求队列中的所述I/O请求的到达时间,所述第二I/O请求队列中的所述I/O操作的类型,所述第二I/O请求队列中的所述I/O操作的调度历史统计,以及所述第二I/O请求队列中的所述I/O操作的优先级。8.根据权利要求6所述的方法,其中所述虚拟盘的特性包括以下至少一项:所述虚拟盘的优先级,以及所述虚拟盘的调度历史统计。9.根据权利要求4所述的方法,进一步包括:对所述第二I/O请求队列进行节流。10.根据权利要求9所述的方法,进一步包括:从用户接口接收用于所述节流的节流阈值;以及响应于所述第二I/O请求队列中的I/O请求数目达到所述节流阈值,对所述第二I/O请求队列进行节流。11.根据权利要求1所述的方法,其中调度所述I/O请求进一步包括:检测所述虚拟盘与后端存储设备之间的附加关联关系;以及基于所述关联关系和所述附加关联关系来调度所述I/O请求。12.根据权利要求1所述的方法,进一步包括:从用户接口接收每种类型的I/O操作优先级和每个虚拟盘的I/O操作优先级的设置;以及向用户接口发送每种类型的I/O操作性能和每个虚拟盘的I/O操作,以便用户调整所述设置。13.根据权利要求1所述的方法,其中所述检测由检测单元执行,并且所述调度由调度单元执行,所述方法进一步包括:响应于所述检测单元检测到所述关联关系,将附接至空I/O调度器的所述虚拟盘附接至所述调度单元。14.一种在虚拟机中实施的装置,包括:至少一个处理器;以及包括计算机程序代码的至少一个存储器;其中所述至少一个存储器和所述计算机程序代码被配置为,与所述处理器一起,促使所述装置至少:接收对所述虚拟机的虚拟盘进行I/O操作的I/O请求;检测所述虚拟盘与用于所述虚拟机的虚拟机监管系统的虚拟存储设备之间的关联关系;以及基于所述关联关系来调度所述I/O请求。15.根据权利要求14所述的装置,其中所述至少一个存储器和所述计算机程序代码进一步被配置为,与所述处理器一起,促使所述装置至少通过以下操作来接收对所述虚拟机的虚拟盘进行I/O操作的I/O请求:将所述I/O请求组织为与相应的所述虚拟盘相关联的第一I/O请求队列;以及基...

【专利技术属性】
技术研发人员:刘冰吕满宋扬
申请(专利权)人:伊姆西公司
类型:发明
国别省市:美国,US

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

1