虚拟机集群的模拟输入输出方法、装置及系统制造方法及图纸

技术编号:8682556 阅读:170 留言:0更新日期:2013-05-09 02:36
本发明专利技术适用于虚拟机技术领域,提供了虚拟机集群的模拟输入输出方法、装置及系统,包括:第一服务器接收第二服务器的模拟I/O处理指令,所述第二服务器中集成了所述VM集群中所有VM的设备模拟器DM,所述模拟I/O处理指令由所述DM生成;所述第一服务器根据所述模拟I/O处理指令对所述模拟I/O处理指令指示的VM进行虚拟化状态更新。在本发明专利技术实施例中,通过将VM集群中所有VM的DM均集中运行在一台服务器上,并利用PCIE的NTB机制或者RDMA机制实现各VM所在服务器与DM所在服务器之间的通信,以实现VM的模拟I/O,有效简化了VM集群的软件架构,提高了VM集群的资源利用率。

【技术实现步骤摘要】

本专利技术属于虚拟机
,尤其涉及虚拟机(Virtual Machine,VM)集群的模拟输入/输出(Input/Output,I/O)方法、装置及系统。
技术介绍
虚拟I/O服务器(Virtual I/O Server, V10S)是一种用在虚拟化系统中为VM提供共享I/o服务和模拟I/O服务的装置,其作为当前流行的云计算平台的底层重要支撑技术之一,直接影响着VM的I/O性能,且其实现架构的复杂度会直接影响整个虚拟化系统的复杂度。在例如云计算中心等大型数据处理环境下,运行着由多台服务器、网络设备及存储设备组成的集群,且通过在服务器上部署虚拟化软件,使得整个集群可以创建上千甚至上万个VM。在上述场景下,每个VM的模拟I/O都是由其所在服务器上的VIOS提供的,这就意味着必须在每个服务器上构造一个设备模拟器(Device Model, DM),且每台服务器都必须维护该DM运行产生的的软件堆栈,这种架构需要每台服务器均耗费资源来运行功能相同的模块,增加了 VM集群的软件复杂性,加大了 VM集群的资源开销。
技术实现思路
本专利技术实施例的目的在于提供VM集群的模拟I/O方法及服务器,旨在解决现有的VM集群需要在其每台服务器均构造一个DM,导致VM集群的软件复杂性增加,资源开销加大的问题。第一方面,所述VM集群的模拟I/O方法包括:第一服务器接收第二服务器的模拟I/o处理指令,所述第二服务器中集成了所述VM集群中所有VM的设备模拟器DM,所述模拟I/O处理指令由所述DM生成;所述第一服务器根据所述模拟I/O处理指令对所述模拟I/O处理指令指示的VM进行状态更新。在第一方面的第一种可能的实现方式中,所述第一服务器和所述第二服务器通过快速外围组件互连PCIE的非透明桥NTB通信,所述模拟I/O处理指令包括VM标识,在第一服务器接收第二服务器的模拟I/O处理指令之后,所述第一服务器根据所述模拟I/O处理指令对所述模拟I/O处理指令指示的VM进行状态更新之前,所述方法还包括:所述第一服务器根据所述VM标识确定所述模拟I/O处理指令指示的VM。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述第一服务器接收第二服务器的模拟I/o处理指令之前,所述方法还包括:所述第一服务器将所述VM的模拟I/O访问指令封装成模拟I/O请求包,所述模拟I/O请求包包括所述VM标识;所述第一服务器将所述模拟I/O请求包发送至所述第二服务器,所述模拟I/O请求包被所述第二服务器用于根据所述VM标识传送至所述VM对应的所述DM进行I/O处理。在第一方面的第三种可能的实现方式中,所述第一服务器和所述第二服务器通过远程内存直接访问RDMA通信,在第一服务器接收第二服务器的模拟I/O处理指令之后,在所述第一服务器根据所述模拟I/o处理指令对所述模拟I/O处理指令指示的VM进行状态更新之前,所述方法还包括:所述第一服务器确定存储所述模拟I/O处理指令的所述第一服务器的内存地址;所述第一服务器将所述第一服务器的内存地址转换成VM的内存地址;所述第一服务器将所述VM的内存地址对应的VM确定为所述模拟I/O处理指令指示的VM。第二方面,所述VM集群的模拟I/O方法包括:第二服务器获取设备模拟器DM生成的模拟I/o处理指令,所述第二服务器中集成了所述VM集群中所有VM的DM ;所述第二服务器发送所述模拟I/O处理指令,所述模拟I/O处理指令被第一服务器用于对所述模拟I/O处理指令指示的所述VM进行状态更新。在第二方面的第一种可能的实现方式中,所述第一服务器和所述第二服务器通过快速外围组件互连PCIE的非透明桥NTB通信,所述模拟I/O处理指令包括所述第一服务器的NTB端口标识和所述VM的VM标识,所述第二服务器发送所述模拟I/O处理指令包括:所述第二服务器根据所述NTB端口标识将所述模拟I/O处理指令发送至所述第一服务器;所述VM标识被所述第一服务器用于确定所述模拟I/O处理指令指示的所述VM。结合第二方面或者第二方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述第二服务器获取设备模拟器DM生成的模拟I/O处理指令之前,还包括:所述第二服务器接收所述第一服务器发送的模拟I/O请求包,所述模拟I/O请求包包括所述VM的VM标识;所述第二服务器根据所述VM标识,将所述模拟I/O请求包发送至所述VM对应的所述DM进行I/O处理。在第二方面的第三种可能的实现方式中,所述第一服务器和所述第二服务器通过远程内存直接访问RDMA通信,所述第二服务器发送所述模拟I/O处理指令包括:所述第二服务器将所述模拟I/O处理指令发送至所述第一服务器的内存地址,所述第一服务器的内存地址通过所述第一服务器将所述VM的内存地址转换得到。第三方面,所述服务器包括:第一接收单元,用于接收第二服务器的模拟I/O处理指令,所述第二服务器中集成了所述VM集群中所有VM的设备模拟器DM,所述模拟I/O处理指令由所述DM生成;状态更新单元,用于接收所述第一接收单元发送的所述模拟I/O处理指令,根据所述模拟I/O处理指令对所述模拟I/O处理指令指示的VM进行状态更新。在第三方面的第一种可能的实现方式中,所述第一服务器和所述第二服务器通过快速外围组件互连PCIE的非透明桥NTB通信,所述模拟I/O处理指令包括VM标识,所述服务器还包括:第一 VM确定单元,用于根据所述VM标识确定所述模拟I/O处理指令指示的VM。结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述服务器还包括:封装单元,用于将所述VM的模拟I/O访问指令封装成模拟I/O请求包,所述模拟I/O请求包包括所述VM标识;第一发送单元,用于接收所述封装单元发送的所述模拟I/O请求包,将所述模拟I/O请求包发送至所述第二服务器,所述模拟I/O请求包被所述第二服务器用于根据所述VM标识传送至所述VM对应的所述DM进行I/O处理。在第三方面的第三种可能的实现方式中,所述第一服务器和所述第二服务器通过远程内存直接访问RDMA通信,所述服务器还包括:内存地址确定单元,用于所述第一服务器确定存储所述模拟I/O处理指令的所述第一服务器的内存地址;转换单元,用于接收所述内存地址确定单元发送的所述第一服务器的内存地址,将所述第一服务器的内存地址转换成VM的内存地址;第二 VM确定单元,用于接收所述转换单元发送的所述VM的内存地址,将所述VM的内存地址对应的VM确定为所述模拟I/O处理指令指示的VM。第四方面,所述服务器包括:获取单元,用于获取设备模拟器DM生成的模拟I/O处理指令,所述服务器中集成了所述VM集群中所有VM的DM ;第二发送单元,用于接收所述获取单元,发送的所述模拟I/O处理指令,发送所述模拟I/O处理指令,所述模拟I/O处理指令被第一服务器用于对所述模拟I/O处理指令指示的所述VM进行状态更新。在第四方面的第一种可能的实现方式中,所述服务器和所述第一服务器通过快速外围组件互连PCIE的非透明桥NTB通信,所述模拟I/O处理指令包括所述第一服务器的NTB端口标识和所述VM的VM标识,所述第二发送单元具体用于:根据所述NTB端口标识将所述模拟I/O处理指令发送至所述第一服务器;所述VM标识被所述第一服务器本文档来自技高网...

【技术保护点】
一种虚拟机VM集群的模拟输入输出I/O方法,其特征在于,包括:第一服务器接收第二服务器的模拟I/O处理指令,所述第二服务器中集成了所述VM集群中所有VM的设备模拟器DM,所述模拟I/O处理指令由所述DM生成;所述第一服务器根据所述模拟I/O处理指令对所述模拟I/O处理指令指示的VM进行状态更新。

【技术特征摘要】

【专利技术属性】
技术研发人员:邱军
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1