基于一致性算法的虚拟资源重均衡方法

文档序号:7812101阅读:155来源:国知局
基于一致性算法的虚拟资源重均衡方法
【专利摘要】本发明公开了一种基于一致性算法的虚拟资源重均衡方法,解决了现有技术中主宿主机和备宿主机都发生故障,则备宿主机上的虚拟机都无法工作,系统受到影响的问题。虚拟资源重均衡方法包括以下步骤:(1)每个宿主机被分配给一个属于自己的散列块,并成为这个散列块的管理者;(2)创建虚拟机,每台虚拟机拥有一个唯一标识,系统对唯一标识进行哈希,得到key,生成哈希表;(3)宿主机得到唯一的节点标志符D,key与D有唯一的关联关系;(4)根据宿主机的唯一标识,使用DHT算法,生成DHT环;(5)根据key和D的唯一的关联关系,将虚拟机映射到宿主机上,并由该宿主机管理该虚拟机。本发明资源消耗少、系统稳定、灾备能力强。
【专利说明】基于一致性算法的虚拟资源重均衡方法

【技术领域】
[0001]本发明涉及一种云主机磁盘克隆方法,具体地讲,是涉及一种基于一致性算法的虚拟资源重均衡方法。

【背景技术】
[0002]云主机就是云计算服务体系中的一项主机产品,该产品有效的解决了传统物理租机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。云主机服务价格低于传统的物理主机租用,且无需支付押金,非常灵活,且当用户业务规模扩张时,云主机可快速实现业务扩容。云计算可以让用户无须拥有和维护复杂的计算基础设施,因此受到越来越多用户的欢迎,云主机为了保障用户业务可靠性,需要提供故障切换和灾备。
[0003]容灾系统建设的主要目的就是预防不可避免的、非计划性的意外灾害的发生,如果用户不能预防或降低灾难,灾难一旦发生,用户所面临的损失将远不止构建容灾系统的成本。之所以越来越多的行业用户在IT基础架构建设的同时,会投入大量的精力与财力做容灾,就是要把有价值的数据和信息保护起来,并加以有效管理应用。因此,企业在建设资源池的同时,从自身情况出发,建设基于资源池的容灾系统,才能最大限度地保证部署在资源池上的各项业务的连续性。
[0004]现有技术中,在宿主机上创建虚拟机,每台宿主机都有一台备用的宿主机,主宿主机上的虚拟机数据实时同步到备用的宿主机上,当主宿主机发生故障后,启用备宿主机,如果主宿主机和备宿主机都发生故障,则备宿主机上的虚拟机都无法工作,系统受到影响。


【发明内容】

[0005]本发明的目的在于克服上述缺陷,提供一种系统扰乱性小,需要调整的数据量少/系统稳定性强,灾备能力强的基于一致性算法的虚拟资源重均衡方法。
[0006]为了实现上述目的,本发明采用的技术方案如下:
一种基于一致性算法的虚拟资源重均衡方法,包括以下步骤:
(O每个宿主机被分配给一个属于自己的散列块,并成为这个散列块的管理者;
(2)创建虚拟机,每台虚拟机拥有一个唯一标识,系统对唯一标识进行哈希,得到key,生成哈希表;
(3)宿主机得到唯一的节点标志符D,key与D有唯一的关联关系;
(4)根据宿主机的唯一标识,使用DHT算法,生成DHT环;
(5)根据key和D的唯一的关联关系,将虚拟机映射到宿主机上,并由该宿主机管理该虚拟机。
[0007]当某台宿主机发生故障时,执行下述步骤:
(I)重新整理哈希表,故障宿主机所管理的散列块由前后宿主机管理;上述重新整理是指DHT环重新计算,生成新的DHT散列表;
(II)故障宿主机上的虚拟机重新使用DHT算法,根据该虚拟机的唯一标识计算新的散列值,并将散列值存放在故障宿主机的前后宿主机上。其中,前后宿主机是指位于故障宿主机位置的前后,如:故障宿主机为宿主机3,则其前后宿主机分别为宿主机2和宿主机4 ;散列值是根据DHT算法计算得到的值。
[0008]新增宿主机时,首先,重新整理哈希表,新增宿主机接管其前后宿主机的部分散列块和虚拟机;然后,新增宿主机上的虚拟机重新使用DHT算法,并根据虚拟机的唯一标识计算新的散列值,计算出的散列值如果需要归属到其他宿主机,则进行虚拟机迁移,如果不需要归属到其他宿主机,则将该散列值存放在新增的宿主机上。
[0009]与现有技术相比,本发明具有以下有益效果:
(I)本发明运用了 DHT算法,生成哈希表,根据key和D的唯一的关联关系,将虚拟机映射到宿主机上,并由该宿主机管理该虚拟机,资源消耗少,系统稳定性强。
[0010](2)本发明中当某台宿主机发生故障时,其管理的散列块和虚拟机由故障宿主机前后的宿主机接管,一方面,系统扰乱性小,需要调整的数据量少,另一方面,实现快速和自动故障切换,故障恢复时间短,性能高,系统稳定性强,灾备能力强。

【专利附图】

【附图说明】
[0011]图1为当某台故障宿主机出现故障时的本发明工作原理示意图。
[0012]图2为本当新增宿主机时的本发明工作原理示意图。

【具体实施方式】
[0013]下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。
实施例
[0014]本实施例提供了一种基于一致性算法的虚拟资源重均衡方法,该方法应用DHT算法,DHT算法使用分布式哈希函数来解决结构化的分布式存储问题,具体的说,基于一致性算法的虚拟资源重均衡方法包括以下步骤:
一、每个宿主机被分配给一个属于自己的散列块,并成为这个散列块的管理者;
二、创建虚拟机,每台虚拟机拥有一个唯一标识,云存储系统对唯一标识进行哈希,得到key,生成哈希表;
三、宿主机得到唯一的节点标志符D,key与D有唯一的关联关系;通过哈希节点IP得到该节点标志符D ;上述唯一的关联关系在生产哈希表时即产生;
四、据宿主机的唯一标识,使用DHT算法,生成DHT环;
五、根据key和D的唯一的关联关系,将虚拟机映射到宿主机上,并由该宿主机管理该虚拟机。
[0015]基于上述,当某台宿主机发生故障时,执行下述步骤:
(I)重新整理哈希表,故障宿主机所管理的散列块由前后宿主机管理;
(II)故障宿主机上的虚拟机重新使用DHT算法,根据该虚拟机的唯一标识计算新的散列值,并将散列值存放在故障宿主机的前后宿主机上。
[0016]为了使得本领域技术人员对本发明有更清晰的了解和认识,下面举例说明,如图I所示:假设共有6台宿主机,分别编号为:1、2、3、4、5、6,每台宿主机中均包含有数个虚拟机,其中,宿主机3内包含有三台虚拟机,当宿主机3发生故障时,调整宿主机3上的虚拟机,分别由宿主机4和宿主机5接管。
[0017]新增宿主机时,首先,重新整理哈希表,新增宿主机接管其前后宿主机的部分散列块和虚拟机;然后,新增宿主机上的虚拟机重新使用DHT算法,并根据虚拟机的唯一标识计算新的散列值,计算出的散列值如果需要归属到其他宿主机,则进行虚拟机迁移,如果不需要归属到其他宿主机,则将该散列值存放在新增的宿主机上。
[0018]为了使得本领域技术人员对本发明有更清晰的了解和认识,下面举例说明,如图2所示:假设共有5台宿主机,分别编号为:1、2、3、4、5,每台宿主机中均包含有数个虚拟机,当新增宿主机6时,重新调整宿主机I和宿主机5上的虚拟机,由宿主机6接管二者部分散列块和虚拟机。
[0019]按照上述实施例,便可很好地实现本发明。值得说明的是,基于上述设计原理的前提下,为解决同样的技术问题,即使在本发明所公开的结构基础上做出的一些无实质性的改动或润色,所采用的技术方案的实质仍然与本发明一样,故其也应当在本发明的保护范围内。
【权利要求】
1.一种基于一致性算法的虚拟资源重均衡方法,其特征在于,包括以下步骤: (1)每个宿主机被云存储系统分配给一个属于自己的散列块,并成为这个散列块的管理者; (2)创建虚拟机,每台虚拟机拥有一个唯一标识,云存储系统对唯一标识进行哈希,得到key,生成哈希表; (3)宿主机得到唯一的节点标志符D,key与D有唯一的关联关系; (4)根据宿主机的唯一标识,使用DHT算法,生成DHT环; (5)根据key和D的唯一的关联关系,将虚拟机映射到宿主机上,并由该宿主机管理该虚拟机。
2.根据权利要求1所述的基于一致性算法的虚拟资源重均衡方法,其特征在于,(I)当某台宿主机发生故障时,重新整理哈希表,故障宿主机所管理的散列块由前后宿主机管理; (II)故障宿主机上的虚拟机重新使用DHT算法,根据该虚拟机的唯一标识计算新的散列值,并将散列值存放在故障宿主机的前后宿主机上。
3.根据权利要求1所述的基于一致性算法的虚拟资源重均衡方法,其特征在于,新增宿主机时,首先,重新整理哈希表,新增宿主机接管其前后宿主机的部分散列块和虚拟机;然后,新增宿主机上的虚拟机重新使用DHT算法,并根据虚拟机的唯一标识计算新的散列值,计算出的散列值如果需要归属到其他宿主机,则进行虚拟机迁移,如果不需要归属到其他宿主机,则将该散列值存放在新增的宿主机上。
【文档编号】H04L29/08GK104199719SQ201410416639
【公开日】2014年12月10日 申请日期:2014年8月22日 优先权日:2014年8月22日
【发明者】黄睿 申请人:成都致云科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1