一种应用归属服务集群的分配方法和装置制造方法及图纸

技术编号:16191158 阅读:23 留言:0更新日期:2017-09-12 12:44
本申请提供了一种应用归属服务集群的分配方法和装置。所述方法包括:将多个应用分配至多个服务集群,获得初始分配结果;多次更换所述应用归属的服务集群,获得多个新增分配结果;计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量;选择资源消耗量最小的分配结果作为最优分配结果。本申请提升了应用归属服务集群的分配效率,同时保证了得到的分配方案可以有效地节省服务集群的资源消耗成本。

Distribution method and device for applying home service cluster

The present application provides a method and apparatus for allocating a home service cluster. The method comprises: a plurality of application service assigned to multiple clusters, to obtain the initial allocation result; service cluster changed for many times the application of ownership, access to a number of new distribution results; calculating the initial allocation and the new distribution results of the service consumption of each cluster resources; resource consumption the minimum amount of the distribution as a result of the optimal results. The application improves the allocation efficiency of the home service cluster, and ensures that the resulting allocation scheme can effectively save the resource consumption cost of the service cluster.

【技术实现步骤摘要】
一种应用归属服务集群的分配方法和装置
本申请涉及数据处理
,特别是涉及一种应用归属服务集群的分配方法和一种应用归属服务集群的分配装置。
技术介绍
在一个典型的分布式系统中,为了便于对存储和计算进行管理,比较好的方式是以应用的形式对数据和任务进行隔离,将应用作为一个整体分配至一个由若干相互独立、通过网络互联的计算机组成的集群。同一集群上的不同应用拥有各自独立的存储空间,但共享集群的计算能力。在这种架构的分布式系统中,其消耗主要为集群的一次性购置成本和集群间跨集群通讯而产生的累积性带宽消耗成本。其中,跨集群通讯主要是由于处于不同集群的应用之间相互访问数据造成,由此,产生了对应用归属服务集群的分配优化需求,以使得在满足计算、存储等约束条件的同时可以最大限度降低集群的购置成本和带宽消耗成本。目前对应用归属服务集群的分配方法中,主要是依赖于用户凭借经验进行分配,但该方法需要耗费大量的人力物力和时间,造成分配效率较低的问题。而且,分配方案可能并非是最优方案,造成了成本的浪费。此外,分布式系统中会不断增加新的应用和下线部分过期应用,集群也会进行机器扩容、机器报废等的处理,应用和集群处于一个动态变化的过程中,针对于动态变化的分布式系统,分配方案也需要检验是否适用于当前的分布式系统,当不适用时需要重新确定分配方案。因此,目前的分配方法可能需要人工重新进行多次分配,增加了对人力物力和时间的耗费,进一步降低了分配效率。
技术实现思路
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种应用归属服务集群的分配方法和相应的一种应用归属服务集群的分配装置。为了解决上述问题,本申请公开了一种应用归属服务集群的分配方法,包括:将多个应用分配至多个服务集群,获得初始分配结果;多次更换所述应用归属的服务集群,获得多个新增分配结果;计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量;选择资源消耗量最小的分配结果作为最优分配结果。优选地,所述将多个应用分配至多个服务集群为:按照排序针对各服务集群进行应用分配,直至所有应用均分配至某个服务集群;其中,针对排序在后的服务集群,在排序在前的服务集群分配后剩余的应用中进行应用分配。优选地,在所述将多个应用分配至多个服务集群之前,所述方法还包括:按照所述服务集群的至少一种负载性能,对多个服务集群进行排序。优选地,在所述按照排序针对各服务集群进行应用分配之前,所述方法还包括:计算任意两个应用之间的关联权重;所述按照排序针对各服务集群进行应用分配包括:从当前可选的多个应用中,选择关联权重最大的两个目标应用,并选择与所述目标应用之一的关联权重排序靠前的多个关联应用,分配至所述服务集群。优选地,所述按照排序针对各服务集群进行应用分配还包括:若至少一个应用未分配至所述服务集群,则将未分配的应用按照所需资源消耗量进行排序;按照排序逐个将未分配的应用随机分配至某一服务集群。优选地,在所述将多个应用分配至多个服务集群之前,所述方法还包括:以所述应用为节点,以具备数据交换的两个应用为相邻节点,构建包括多个应用的节点网络图,所述关联权重为连接两个应用的边的边权重。优选地,所述选择关联权重最大的两个目标应用包括:查找所述节点网络图中边权重最大的目标边。优选地,所述选择与所述目标应用之一的关联权重排序靠前的多个关联应用包括:在包含所述目标边的子图中,以所述目标边的两个目标节点为起点,进行广度优先搜索;从搜索的多个关联节点中,按照与所述目标节点的边权重从大到小,在未超出所述服务集群的负载性能的条件下,选择最多数量的关联节点。优选地,在所述多次更换所述应用归属的服务集群,获得多个新增分配结果之后,所述方法还包括:确定更换后的新增分配结果未超出各服务集群的负载性能。优选地,所述多次更换所述应用归属的服务集群,获得多个新增分配结果包括:在随机选择的两个服务集群中,分别随机选择一个应用进行交换,直至获得多个新增分配结果。优选地,所述多次更换所述应用归属的服务集群,获得多个新增分配结果还包括:针对当前获得的分配结果,依次选择两个分配结果,随机从两个分配结果中选择两个应用,并对选择的两个应用所归属的服务集群进行交换,获得多个新增分配结果;和/或,随机选择一个应用并对所选择的应用归属的服务集群进行修改,获得多个新增分配结果。优选地,在所述在随机选择的两个服务集群中,分别随机选择一个应用进行交换,直至获得多个新增分配结果之后,所述方法还包括:筛选资源消耗量从小到大排序靠前的多个分配结果。优选地,所述计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量包括:计算所述初始分配结果和所述新增分配结果各自所需的集群购置成本;和/或,计算所述初始分配结果和所述新增分配结果中各个应用跨集群的带宽消耗成本;加和各个应用的带宽消耗成本,得到所述初始分配结果和所述新增分配结果的总带宽消耗成本。优选地,所述选择资源消耗量最小的分配结果作为最优分配结果包括:针对当前获得的新增分配结果,若所述当前获得的新增分配结果的资源消耗量小于所述初始分配结果的资源消耗量,则将所述当前获得的新增分配结果作为当前最优分配结果,并与下一个新增分配结果进行比较,直至获得最优分配结果。本申请还提供了一种应用归属服务集群的分配装置,包括:应用初始分配模块,用于将多个应用分配至多个服务集群,获得初始分配结果;应用多次更换模块,用于多次更换所述应用归属的服务集群,获得多个新增分配结果;资源消耗量计算模块,用于计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量;最优分配结果选择模块,用于选择资源消耗量最小的分配结果作为最优分配结果。优选地,所述应用初始分配模块具体用于:按照排序针对各服务集群进行应用分配,直至所有应用均分配至某个服务集群;其中,针对排序在后的服务集群,在排序在前的服务集群分配后剩余的应用中进行应用分配。优选地,所述装置还包括:服务集群排序模块,用于按照所述服务集群的至少一种负载性能,对多个服务集群进行排序。优选地,所述装置还包括:关联权重计算模块,用于计算任意两个应用之间的关联权重;所述应用初始分配模块包括:关联应用分配子模块,用于从当前可选的多个应用中,选择关联权重最大的两个目标应用,并选择与所述目标应用之一的关联权重排序靠前的多个关联应用,分配至所述服务集群。优选地,所述装置还包括:应用排序模块,用于若至少一个应用未分配至所述服务集群,则将未分配的应用按照所需资源消耗量进行排序;未分配应用随机分配模块,用于按照排序逐个将未分配的应用随机分配至某一服务集群。优选地,所述装置还包括:节点网络图构建模块,用于以所述应用为节点,以具备数据交换的两个应用为相邻节点,构建包括多个应用的节点网络图,所述关联权重为连接两个应用的边的边权重。优选地,所述关联应用分配子模块包括:目标边查找子单元,用于查找所述节点网络图中边权重最大的目标边。优选地,所述关联应用分配子模块包括:广度优先搜索子单元,用于在包含所述目标边的子图中,以所述目标边的两个目标节点为起点,进行广度优先搜索;关联节点选择子单元,用于从搜索的多个关联节点中,按照与所述目标节点的边权重从大到小,在未超出所述服务集群本文档来自技高网...
一种应用归属服务集群的分配方法和装置

【技术保护点】
一种应用归属服务集群的分配方法,其特征在于,包括:将多个应用分配至多个服务集群,获得初始分配结果;多次更换所述应用归属的服务集群,获得多个新增分配结果;计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量;选择资源消耗量最小的分配结果作为最优分配结果。

【技术特征摘要】
1.一种应用归属服务集群的分配方法,其特征在于,包括:将多个应用分配至多个服务集群,获得初始分配结果;多次更换所述应用归属的服务集群,获得多个新增分配结果;计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量;选择资源消耗量最小的分配结果作为最优分配结果。2.根据权利要求1所述的方法,其特征在于,所述将多个应用分配至多个服务集群为:按照排序针对各服务集群进行应用分配,直至所有应用均分配至某个服务集群;其中,针对排序在后的服务集群,在排序在前的服务集群分配后剩余的应用中进行应用分配。3.根据权利要求2所述的方法,其特征在于,在所述将多个应用分配至多个服务集群之前,所述方法还包括:按照所述服务集群的至少一种负载性能,对多个服务集群进行排序。4.根据权利要求2所述的方法,其特征在于,在所述按照排序针对各服务集群进行应用分配之前,所述方法还包括:计算任意两个应用之间的关联权重;所述按照排序针对各服务集群进行应用分配包括:从当前可选的多个应用中,选择关联权重最大的两个目标应用,并选择与所述目标应用之一的关联权重排序靠前的多个关联应用,分配至所述服务集群。5.根据权利要求4所述的方法,其特征在于,所述按照排序针对各服务集群进行应用分配还包括:若至少一个应用未分配至所述服务集群,则将未分配的应用按照所需资源消耗量进行排序;按照排序逐个将未分配的应用随机分配至某一服务集群。6.根据权利要求4所述的方法,其特征在于,在所述将多个应用分配至多个服务集群之前,所述方法还包括:以所述应用为节点,以具备数据交换的两个应用为相邻节点,构建包括多个应用的节点网络图,所述关联权重为连接两个应用的边的边权重。7.根据权利要求6所述的方法,其特征在于,所述选择关联权重最大的两个目标应用包括:查找所述节点网络图中边权重最大的目标边。8.根据权利要求6所述的方法,其特征在于,所述选择与所述目标应用之一的关联权重排序靠前的多个关联应用包括:在包含所述目标边的子图中,以所述目标边的两个目标节点为起点,进行广度优先搜索;从搜索的多个关联节点中,按照与所述目标节点的边权重从大到小,在未超出所述服务集群的负载性能的条件下,选择最多数量的关联节点。9.根据权利要求1所述的方法,其特征在于,在所述多次更换所述应用归属的服务集群,获得多个新增分配结果之后,所述方法还包括:确定更换后的新增分配结果未超出各服务集群的负载性能。10.根据权利要求1所述的方法,其特征在于,所述多次更换所述应用归属的服务集群,获得多个新增分配结果包括:在随机选择的两个服务集群中,分别随机选择一个应用进行交换,直至获得多个新增分配结果。11.根据权利要求10所述的方法,其特征在于,所述多次更换所述应用归属的服务集群,获得多个新增分配结果还包括:针对当前获得的分配结果,依次选择两个分配结果,随机从两个分配结果中选择两个应用,并对选择的两个应用所归属的服务集群进行交换,获得多个新增分配结果;和/或,随机选择一个应用并对所选择的应用归属的服务集群进行修改,获得多个新增分配结果。12.根据权利要求11所述的方法,其特征在于,在所述在随机选择的两个服务集群中,分别随机选择一个应用进行交换,直至获得多个新增分配结果之后,所述方法还包括:筛选资源消耗量从小到大排序靠前的多个分配结果。13.根据权利要求11所述的方法,其特征在于,所述计算所述初始分配结果和所述新增分配结果各自对所述服务集群的资源消耗量包括:计算所述初始分配结果和所述新增分配结果各自所需的集群购置成本;和/或,计算所述初始分配结果和所述新增分配结果中各个应用跨集群的带宽消耗成本;加和各个应用的带宽消耗成本,得到所述初始分配结果和所述新增分配结果的总带宽消耗成本。14.根据权利要求1所述的方法,其特征在于,所述选择资源消耗量最小的分配结果作为最优分配结果包括:针对当前获得的新增分配结果,若所述当前获得的新增分配结果的资源消耗量小于所述初始分配结果的资源消耗量,则将所述当前获得的新增分配结果作为当前最优分配结果,并与下一个新增分配结果进行比较,直至获得最优分配结...

【专利技术属性】
技术研发人员:刘剑波
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1