发明名称 一种动态可扩展的增加虚拟机资源的方法
摘要 本发明提供一种动态可扩展的增加虚拟机资源的方法,以高性能网络为核心,通过对内存索引客户端(1)、内存服务程序(2)、内存节点池(3)、存储客户端(4)、存储服务程序(5)、存储池(6)的整合,使系统能够满足虚拟机动态增加内存、存储资源以及虚拟机动态迁移的需求,内存服务程序将内存服务器集群提供的内存空间虚拟成内存节点池,能够根据内存索引客户端请求动态拆分内存节点,当有空闲相邻的内存节点时,也可以合并内存节点,满足不同客户端的动态内存需求。内存服务程序还可以集群模式运行,集群模式下,内存池还需要记录其他内存服务程序管理的内存节点,从而支持客户端从空闲内存节点较多或负载较小的内存服务程序中选择服务。
申请公布号 CN103593243A 申请公布日期 2014.02.19
申请号 CN201310533492.6 申请日期 2013.11.01
申请人 浪潮电子信息产业股份有限公司 发明人 王通;郭鹏
分类号 G06F9/50(2006.01)I;G06F9/455(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 代理人
主权项 一种动态可扩展的增加虚拟机资源的方法,其特征在于以高性能网络为核心,通过对内存索引客户端(1)、内存服务程序(2)、内存节点池(3)、存储客户端(4)、存储服务程序(5)、存储池(6)的整合,使系统能够满足虚拟机动态增加内存、存储资源以及虚拟机动态迁移的需求,其中:内存索引客户端(1),在虚拟机管理程序中实现,客户端向内存服务程序发起请求,获取内存服务集群中可用的内存节点索引映像,并按需动态申请内存服务集群中的内存节点或内存节点集合;内存索引客户端(1)申请空闲内存节点较多的内存服务或负载较轻的内存服务,同时,当需要虚拟机迁移时,选择空闲内存节点较多的内存服务或负载较轻的内存服务;内存服务程序(2)根据内存索引客户端请求来进行处理:当内存索引客户端(1)请求内存节点池(3)索引时,内存服务程序(2)将内存节点池(3)统计信息返回给内存索引客户端(1);当内存索引客户端(1)按需请求内存时,内存服务程序(2)拆分或合并内存节点,满足内存索引客户端(1)请求,即内存服务程序(2)以2的幂次级分配大于等于内存索引客户端(1)请求的内存,如果需要一个内存节点分解为两半,则自动将未用的一半加入到对应的链表中,如果在未来某个时刻,由于内存释放的缘故,两个内存节点区域都处于空闲状态,可通过地址来判断是否合并为一个内存节点,分配完毕后,内存服务程序(2)将标记分配的内存节点或内存节点集合,集群模式下会更新通知其他的内存服务程序(2),多个内存服务也能构成集群模式,在集群模式下,内存服务程序(2)会使用心跳动态交互、更新所有节点上内存节点使用情况,这样每个内存服务程序(2)都会知道集群模式下,所有内存服务程序(2)管理的内存节点池(3)使用情况;内存节点池(3)负责管理本内存服务器集群提供的内存空间,将本内存服务器集群中的内存空间虚拟为内存节点池(3),每个内存节点大小定义为2的幂次级,相同大小的内存节点索引使用链表链接起来,在集群模式下,内存节点池(3)还需要记录其他内存服务管理的内存节点索引信息,内存节点池(3)动态扫描内存服务器集群提供的内存空间,实现内存节点池(3)的动态扩展;存储客户端(4)在虚拟机管理程序中实现,存储客户端(4)向存储服务程序(5)发起请求,获取存储服务集群中可用的存储块索引映像,并按需动态申请存储服务集群中的存储块或存储块集合;存储客户端(4)申请空闲存储块较多的存储服务或负载较轻的存储服务,同时,当需要虚拟机迁移时,也选择空闲存储块较多的存储服务或负载较轻的存储服务;存储服务程序(5)根据存储客户端(4)请求来进行处理:当存储客户端(4)请求存储块索引时,存储服务程序(5)将存储统计信息返回给存储客户端(4);当存储客户端(4)按需请求存储块时,存储服务程序(5)拆分或合并存储块,满足存储客户端(4)请求,即存储服务程序(5)以2的幂次级分配大于等于存储客户端(4)请求的存储块,如果需要一个存储块分解为两半,则自动将未用的一半加入到对应的链表中,如果在未来某个时刻,由于存储块释放的缘故,两个存储块区域都处于空闲状态,可通过地址来判断是否合并为一个存储块,分配完毕后,存储服务程序(5)将标记分配的存储块或存储块集合,在集群模式下会更新通知其他的存储服务程序(5),多个存储服务也能构成集群模式,在集群模式下,存储服务程序(5)会使用心跳动态交互、更新所有节点上存储块使用情况,这样每个存储服务程序(5)都会知道集群模式下,所有存储服务程序(5)管理的存储池(6)的使用情况;存储池(6)负责管理本存储服务器集群提供的存储空间,将本存储服务器集群中的存储空间虚拟为存储池(6),每个存储块大小定义为2的幂次级,相同大小的存储块索引使用链表链接起来,在集群模式下,存储池(6)还需要记录其他存储服务管理的存储池(6)索引信息,存储池(6)动态扫描存储服务器集群提供的存储空间,实现存储池(6)的动态扩展。
地址 250014 山东省济南市高新区舜雅路1036号