CN110083506A - 集群资源量优化的方法及装置 - Google Patents

集群资源量优化的方法及装置 Download PDF

Info

Publication number
CN110083506A
CN110083506A CN201910305716.5A CN201910305716A CN110083506A CN 110083506 A CN110083506 A CN 110083506A CN 201910305716 A CN201910305716 A CN 201910305716A CN 110083506 A CN110083506 A CN 110083506A
Authority
CN
China
Prior art keywords
subservice
group
occupancy
capacity
resource amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201910305716.5A
Other languages
English (en)
Inventor
赵子青
吴峰
郭伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Yidianshikong Network Co Ltd
Original Assignee
Shanghai Yidianshikong Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Yidianshikong Network Co Ltd filed Critical Shanghai Yidianshikong Network Co Ltd
Priority to CN201910305716.5A priority Critical patent/CN110083506A/zh
Publication of CN110083506A publication Critical patent/CN110083506A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种集群资源量优化的方法及装置。该申请的方法包括获取压力测试后业务集群各子业务组的实际占用容量;根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。本申请解决了相关的业务集群中各子业务组对应的容量占用率不均衡,造成运营综合成本浪费的技术问题。

Description

集群资源量优化的方法及装置
技术领域
本申请涉及集群服务技术领域,具体而言,涉及一种集群资源量优化的方法及装置。
背景技术
集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。随着互联网技术的快速发展和广泛应用,目前许多的业务的处理需要集群处理来满足性能的需求。
通常业务集群按照子业务的种类分为不同的子业务组,在业务的新起之初,很少有业务能做到很详细并且长远的规划,并且业务的发展过程中也是一个动态的变化过程,比如新增一个功能或者减少一个功能,因此所有业务集群中子业务组容量的合理化匹配都是上线后一段时间建设补齐的;在没有补齐的这段时间中就会出现子业务组间容量占用率不均衡的现状。比如业务集群P,包含子业务组a、子业务组b、子业务组c、子业务组d、子业务组e,经过业务新起、发展、变动后,对业务集群P进行压力测试,得到集群最大可以支持100万用户,对应的这5个子业务组的实际资源以及容量占用率如下:子业务组a,10台服务器,容量占用率85%;子业务组b,8台服务器,容量占用率63%;子业务组c,5台服务器,容量占用率91%;子业务组d,12台服务器,容量占用率45%;子业务组e,7台服务器,容量占用率70%。由上述数据可以看出,在业务集群P最大支撑能力下,业务集群P中各个子业务组的实际容量占用比率不一样,没有达到一个同时最优的状态,这样就会造成运营综合成本的浪费。
发明内容
本申请的主要目的在于提供一种集群资源量优化的方法,以解决相关的业务集群中各子业务组对应的容量占用率不均衡,造成运营综合成本浪费的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种集群资源量优化的方法。
根据本申请的集群资源量优化的方法包括:
获取压力测试后业务集群各子业务组的实际占用容量;
根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;
根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
进一步的,所述根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,包括:
分别计算各子业务组的实际占用容量与目标占用率的商,得到多个商值结果;
对所有的商值结果进行取整,得到每个子业务组对应的目标资源量。
进一步的,所述获取压力测试后业务集群各子业务组的实际占用容量,包括:
获取压力测试后业务集群包含的各子业务组的资源量以及对应的容量占用率,所述资源量为服务器的数量;
分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量。
进一步的,所述分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量包括:
分别计算每个子业务组的资源量与对应的容量占用率的乘积,确定各子业务组的实际占用容量。
进一步的,所述获取压力测试后业务集群包含的各子业务组的容量占用率包括:
获取每个子业务组的压力测试指标以及每个压力测试指标对应的指标极限值;
切割用户请求到所述业务集群后对业务集群进行压力测试,在任意一个子业务组中的任意一种压力测试指标的当前指标值等于对应的指标极限值时,终止压力测试;
计算所有当前指标值的极限趋近率,将每个子业务组中最大的极限趋近率确定为对应子业务组的容量占用率,所述极限趋近率为压力测试指标的当前指标值与其对应的指标极限值的比。
进一步的,所述方法还包括:
对优化后的业务集群重新进行压力测试,得到每个子业务组对应的优化后的容量占用率;
根据优化后的容量占用率验证优化的结果。
进一步的,所述根据优化后的容量占用率验证优化的结果包括:
分别计算每个优化后的容量占用率与所述目标占用率的差值,得到多个差值结果;
若所述多个差值结果都在预设差值范围内,则优化成功。
进一步的,所述方法还包括:
若多个差值结果不都在预设差值范围内,则选出不在预设差值范围内的差值结果对应的子业务组;
根据目标占用率重新计算不在预设差值范围内的差值结果对应的子业务组的目标资源量,得到与子业务组对应的修正目标资源量;
根据修正目标资源量重新对所述业务集群进行压力测试,直到得到的各子业务组对应的多个差值结果都在预设差值范围内为止。
进一步的,所述方法还包括:
将优化成功后所述业务集群中包含的各子业务组对应的目标资源量以及优化后的容量占用率或者对应的修正目标资源量以及优化后的容量占用率进行关联记录。
为了实现上述目的,根据本申请的另一方面,提供了一种集群资源量优化的装置。
根据本申请的集群资源量优化的装置包括:
获取单元,用于获取压力测试后业务集群各子业务组的实际占用容量;
计算单元,用于根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;
优化单元,用于根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
进一步的,所述计算单元包括:
商值计算模块,用于分别计算各子业务组的实际占用容量与目标占用率的商,得到多个商值结果;
取整模块,用于对所有的商值结果进行取整,得到每个子业务组对应的目标资源量。
进一步的,所述获取单元包括:
获取模块,用于获取压力测试后业务集群包含的各子业务组的资源量以及对应的容量占用率,所述资源量为服务器的数量;
确定模块,用于分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量。
进一步的,所述确定模块,用于:
分别计算每个子业务组的资源量与对应的容量占用率的乘积,确定各子业务组的实际占用容量。
进一步的,所述获取模块,用于:
获取每个子业务组的压力测试指标以及每个压力测试指标对应的指标极限值;
切割用户请求到所述业务集群后对业务集群进行压力测试,在任意一个子业务组中的任意一种压力测试指标的当前指标值等于对应的指标极限值时,终止压力测试;
计算所有当前指标值的极限趋近率,将每个子业务组中最大的极限趋近率确定为对应子业务组的容量占用率,所述极限趋近率为压力测试指标的当前指标值与其对应的指标极限值的比。
进一步的,所述装置还包括:
重新压测单元,用于对优化后的业务集群重新进行压力测试,得到每个子业务组对应的优化后的容量占用率;
验证单元,用于根据优化后的容量占用率验证优化的结果。
进一步的,所述验证单元包括:
差值计算模块,用于分别计算每个优化后的容量占用率与所述目标占用率的差值,得到多个差值结果;
验证模块,用于若所述多个差值结果都在预设差值范围内,则优化成功。
进一步的,所述装置还包括:
选择单元,用于若多个差值结果不都在预设差值范围内,则选出不在预设差值范围内的差值结果对应的子业务组;
重新计算单元,用于根据目标占用率重新计算不在预设差值范围内的差值结果对应的子业务组的目标资源量,得到与子业务组对应的修正目标资源量;
重新压测单元,还用于根据修正目标资源量重新对所述业务集群进行压力测试,直到得到的各子业务组对应的多个差值结果都在预设差值范围内为止。
进一步的,所述装置还包括:
记录单元,用于将优化成功后所述业务集群中包含的各子业务组对应的目标资源量以及优化后的容量占用率或者对应的修正目标资源量以及优化后的容量占用率进行关联记录。
在本申请实施例中,集群资源量优化的方法和装置根据统一的预设的优化容量占用率来计算业务集群中各子业务组的目标资源量,然后根据目标资源量调整子业务组的资源量。由于预设的优化容量占用率通常是根据服务器的最优利用状态设置的,因此业务集群中各子业务组使用目标资源量后,能够使各子业务组中的服务器符合服务器的最优利用状态,即每个子业务组的目标资源量能够更有效的利用,避免资源的浪费,从而降低运营综合成本。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请一种实施例的集群资源量优化的方法流程图;
图2是根据本申请另一种实施例的集群资源量优化的方法流程图;
图3是根据本申请一种实施例的优化前后业务集群对应的资源量以及容量占用率的变化的示意图;
图4是根据本申请一种实施例的一种业务集群的容量模型示意图;
图5是根据本申请一种实施例的集群资源量优化的装置的组成框图;
图6是根据本申请另一种实施例的集群资源量优化的装置的组成框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
根据本申请实施例,提供了一种集群资源量优化的方法,如图1所示,该方法包括如下的步骤S101至步骤S103:
S101.获取压力测试后业务集群各子业务组的实际占用容量。
本实施例中压力测试是指测试业务集群可以同时承受或者支撑的最大用户请求量,对应的各子业务组的实际占用容量是业务集群在最大的用户请求量的状态下的实际占用容量。本实施例中实际占用容量是指子业务组实际的资源使用量,资源使用量可以用CPU使用率、内存使用率、读/写(I/O)使用率等可以衡量资源使用量的指标衡量。
S102.根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量。
其中,目标占用率为预设的优化容量占用率。具体的在实际应用中目标占用率是用户根据服务器实际的最优使用状态下对应的经验值设定的,比如86%、87%等其它值。本实施例中实际占用容量与各子业务组的资源量(服务器的数量)、容量占用率以及单位资源的容量相关,并且能够将资源量(服务器的数量)、容量占用率以及单位资源的容量通过特定的运算法则计算出。
本步骤中计算得到各子业务组的目标资源是为了对各子业务进行资源优化即对业务集群进行优化。目标资源量是对子业务组优化的一个目标的资源量,与目标占用率是相对应的都是优化后的子业务组的参数,由于优化前后各子业务组的实际占用容量是不变的,实际占用容量是由业务集群的最大请求访问量是相关的,本实施中优化前后业务集群的最大请求访问量不变,因此各子业务组的实际占用也不变。并且单位资源的容量也是不变的,因此可以根据实子业务组的实际占用容量以及目标占用率来计算对应各子业务组的目标资源量。
S103.根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
得到子业务组分别对应的目标资源量,即得到子业务组在最优状态下应该配备的服务器的数量,根据最优状态下应该配备的服务器的数量对各子业务组中的服务器进行增加或者减少,调整服务器的数量后并适应性的对每个子业务组进行配置更新,完成对子业务组资源量的优化。
从以上的描述中,可以看出,本申请实施例中集群资源量优化的方法根据统一的预设的优化容量占用率来计算业务集群中各子业务组的目标资源量,然后根据目标资源量调整子业务组的资源量。由于预设的优化容量占用率通常是根据服务器的最优利用状态设置的,因此业务集群中各子业务组使用目标资源量后,能够使各子业务组中的服务器符合服务器的最优利用状态,即每个子业务组的目标资源量能够更有效的利用,避免资源的浪费,从而降低运营综合成本。
根据本申请另一实施例,提供了一种集群资源量优化的方法,如图2所示,该方法包括:
S201.获取压力测试后业务集群包含的各子业务组的资源量以及对应的容量占用率。
各子业务组的资源量以及对应的容量占用率是在压力测试后业务集群包含的各子业务组的相关参数,因此在获取相关参数之前,首先需要对业务集群进行压力测试来得到对应的相关参数,具体的得到相关参数的过程包括以下步骤:
第一,获取每个子业务组的压力测试指标以及每个压力测试指标对应的指标极限值;
其中压力测试指标至少包括CPU使用率、内存使用率、读/写(I/O)使用率、子业务组间调用指标、CPU出入流量指标中的一种,具体的子业务组间调用指标包括子业务组间请求时长和调用时长等。在实际的应用中不同的子业务组可能对应一种或多种不同种类的压力测试指标,并且每种压力测试指标对应一个指标极限值,该指标极限值用于极限状态的判断。具体的,上述压力测试指标对应的指标极限值是由用户自由设定的,本申请实施例对此不作限制。比如CPU使用率的指标极限值可以设置为99%、100%等,内存使用率的指标极限值可以设置为95%、96%、98%等,读/写使用率的指标极限值可以设置95%、96%、98%等,子业务组间请求时长的指标极限值可以设置为1s、2s等,子业务组间调用时长的指标极限值可以设置为1s、2s等。当用户对压力测试指标以及对应的指标极限值设置后,具体获取方式可以通过调用函数或调用命令从指标文档中调用或者提取等方式获取等。
第二,切割用户请求到业务集群后对业务集群进行压力测试;
本申请实施例中进行压力测试时用的是真实的用户请求,而通常在真实的用户访问情况下,业务集群不能达到压力测试的用户请求量,因此需要切割用户请求到待进行压力测试的业务集群中,即增加业务集群的用户请求量,来满足压力测试的需求。具体的切割用户请求是按照将业务集群之外的其他集群对应的真实用户请求切割到该业务集群上,由于在压力测试之前无法估计业务集群可以支撑的用户请求量,因此优选的采用一个集群一个集群的用户请求进行切割。但在实际的应用中,如果该业务集群的真实请求量很少或者选择切割的集群的用户请求量很少,也可以适当的一次切割多个业务集群的真实用户请求到该业务集群。用户请求量准备好之后,就可以对业务集群进行压力测试了。
第三,监控所述业务集群中各个子业务组对应的压力测试指标的变化;
对业务集群进行压力测试即对各个子业务组进行压力测试。具体的压力测试的过程为:监控每个子业务组中对应的压力测试指标的变化,随着用户请求数量的增加,各子业务组对应的压力测试指标的值也在不断的增加;直到压力测试指标达到一个极限状态时,结束监控,完成压力测试。
第四,若任意一个子业务组中任意一种压力测试指标的当前指标值等于对应的指标极限值,则终止压力测试;
本申请实施例中压力测试依据的是木桶原理。木桶原理是一只水桶能装多少水取决于它最短的那块木板,对应于本申请实施例即业务集群所能支撑的最大用户请求量取决于支撑用户请求能力最小的子业务组所能支撑的最大用户请求量,而子业务组所能支撑的最大用户请求量取决于压力测试指标中最先达到指标极限值的压力测试指标,因此当任一压力测试指标的当前指标值达到对应的指标极限值时,则表明业务集群中至少存在一个子业务组已经达到了容量上限,即不能再同时接收更多的用户请求,这就是上述步骤中的极限状态。达到极限状态后就可以终止压力测试。
给出具体的示例对上述压力测试进行说明:假设业务集群中包括子业务组1、子业务组2、子业务组3,子业务组1的压力测试指标为CPU占用率、CPU出入流量,对应的指标极限值为100%和流量的100%;子业务组2的压力测试指标为CPU占用率、读/写使用率,对应的指标极限值分别为100%和95%;子业务组3的压力测试指标为CPU占用率、CPU出入流量和调用时长,对应的指标极限值为100%、流量的100%和2s。压力测试开始后,监控三个子业务组对应的压力测试指标的变化,若一段时间后,其中子业务组1中读/写使用率先达到了指标极限值95%,此时压力测试终止。或者子业务组2中CPU出入流量先达到了指标极限值流量的100%,此时压力测试终止。或者子业务组3中的调用时长先达到了极限值2s,此时压力测试终止。即3个子业务组中任一压力测试指标的当前指标值达到了对应的指标极限则终止压力测试。
第五,计算所有当前指标值的极限趋近率;
其中,极限趋近率为压力测试指标的当前指标值与其对应的指标极限值的比,本实施例中极限趋近率为终止压力测试时,对应的每个子业务组中每个压力测试指标对应的当前指标值与其对应的指标极限值的比。
第六,将每个子业务组中最大的极限趋近率确定为对应子业务组的容量占用率。
另外需要说明的是子业务组的资源量即包含的服务器的数量在压力测试前后获取都可以,因此能够在压力测试后与容量占用率一起获取,具体的获取方式为:子业务组中服务器的数量能够通过调用服务器配置查看命令自动获取,服务器的数量查看命令比如cat/proc/cpuinfo|grep"physical id"|sort|uniq|wc–l等。子业务组对应的容量占用率也能够通过调用服务器配置查看命令自动获取,本实施例中不同的子业务组对应的容量占用率的衡量指标有可能是不同,因此对应的查看命令也是不同的,比如若容量占用率是用内存使用率来衡量的,则获取容量占用率可以通过调用内存使用率查看命令free-m等相关命令自动获取。
S202.分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量。
子业务组的资源量能够通过计算子业务组的容量占用率、资源量(服务器的数量)和单位资源容量(每个服务器的容量)的乘积得到,但是由于在优化前后单位资源容量是不变的,为了减少工作量方便计算,因此可以不获取单位资源容量,或者直接将单位资源容量身为单位1或者其他特定的值。计算后得到每个子业务组的实际占用容量。
S203.根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量。
为了简便计算,优选的将单位资源容量设为1,则分别计算各子业务组的目标资源的过程为:分别计算每个实际占用容量与目标占用率的商值,得到多个商值结果;对商值结果进行取整,得到每个子业务组对应的目标资源量。需要说明的是,对商值结果取整是向上取整,即不管四舍五入的规则,只要后面有小数前面的整数就加1。
对于上述目标资源量的计算给出具体的示例进行说明:假设业务集群包括五个子业务组,经过压力测试后,得到的业务集群最大可以承受的用户访问量为50万,对应的每个子业务组对应的资源量和对应的容量占用率分别为:子业务组a,10台服务器,容量占用率为85%;子业务组b,8台服务器,容量占用率为63%;子业务组c,5台服务器,容量占用率为91%;子业务组d,12台服务器,容量占用率为45%;子业务组e,7台服务器,容量占用率为70%;假设目标占用率为87%,以子业务组d为例计算子业务组d的目标资源量12台服务器*容量占用率45%=目标资源量*目标占用率87%,计算得到的目标资源量的结果为6.2,则对6.2向上取整最终得到子业务组d对应的目标资源量即服务器的台数为7,按照上述计算过程对其他子业务组的目标资源量进行计算分别得到的结果为:子业务组a,10台服务器;子业务组b,6台服务器;子业务组c,6台服务器;子业务组d,7台服务器;子业务组e,6台服务器。
S204.根据目标资源量对业务集群包含的各子业务组的资源量进行优化。
本步骤的实现方式与图1步骤S103中的实现方式相同,此处不再赘述。
S205.对优化后的业务集群重新进行压力测试,得到每个子业务组对应的优化后的容量占用率。
由于目标资源量是通过理论的计算得到的,在实际的应用中,由于各种影响因素的存在,也可能存在在根据目标资源量对子业务组的资源量进行优化后,再进行压力测试后,得到的容量占用率与目标占用率相差较大的情况,因此为了验证在目标资源量的情况下进行压力测试后是否真正的可以实现容量占用率与目标占用率的相符。还需要对得到的目标资源量进行验证,具体的验证首先需要对资源量优化后的业务集群进行重新的压力测试,得到每个子业务组对应的优化后的容量占用率。具体的重新进行压力测试的方式与步骤S201中的实现方式相同,此处不再赘述。
S206.根据优化后的容量占用率验证优化的结果。
具体的验证结果如下:
分别计算每个子业务组对应的优化后的容量占用率与目标占用率的差值,得到多个差值结果;
若多个差值结果都在预设差值范围内,则优化成功,预设差值范围可以根据实际的精度要求进行自由设定,比如±1%、±2%等,本申请实施例不作具体的限定。
若多个差值结果不都在预设差值范围内,则选出不在预设差值范围内的差值结果对应的子业务组;根据目标占用率重新计算不在预设差值范围内的差值结果对应的子业务组的目标资源量,得到与子业务组对应的修正目标资源量;具体的得到目标修正目标资源量的实现方式可以参照步骤S202中得到目标资源量的实现方式。然后根据修正目标资源量重新对业务集群进行压力测试,直到得到的各子业务组对应的多个差值结果都在预设差值范围内为止。
为了更直观的表达优化前后业务集群对应的资源量以及容量占用率的变化,给出具体的示意图进行说明,如图3所示,其中业务集群资源量优化前包括子业务组a,10台服务器,容量占用率为85%;子业务组b,8台服务器,容量占用率为63%;子业务组c,5台服务器,容量占用率为91%;子业务组d,12台服务器,容量占用率为45%;子业务组e,7台服务器,容量占用率为70%;,假设目标占用率为87%,预设差值范围为±2%,经过资源量优化后得到的结果为子业务组a,10台服务器,容量占用率为85%;子业务组b,6台服务器,容量占用率为86%;子业务组c,6台服务器,容量占用率为84%;子业务组d,7台服务器,容量占用率为87%;子业务组e,6台服务器,容量占用率为86%。可以看到优化前业务集群总的资源量为10+8+5+12+7=42,优化后业务集群总的资源量为10+6+6+7+6=35,优化后相比于优化前节省了42-35=7台服务器,降低了运营成本,而且每个子业务组中容量占用率都在目标占用率的附近,呈现统一的最优利用状态。
S207.将优化成功后业务集群中包含的各子业务组对应的目标资源量以及优化后的容量占用率或者对应的修正目标资源量以及优化后的容量占用率进行关联记录。
具体的,是将优化成功后各子业务组对应的目标资源量或者修正目标资源量、对应得优化后的容量占用率按照子业务组名称、资源量、容量占用率三个字段一一对应存储。另外,可以根据前述存储的数据得到业务集群的容量模型如图4,具体的模型内容中至少包含业务集群能够承受的最大用户请求量N、子业务组的资源量Ci(i=1,2,3,……)、每个子业务组的容量占用率以及容量占用率对应的压力测试指标,优选的还可以包含子业务组对应的所有压力测试指标在优化成功后对应的当前指标值。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本申请实施例,还提供了一种用于实施上述图1和图2所述方法的集群资源量优化的装置,如图5所示,该装置包括:
获取单元31,用于获取压力测试后业务集群各子业务组的实际占用容量;
计算单元32,用于根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;
优化单元33,用于根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
从以上的描述中,可以看出,本申请实施例中集群资源量优化的装置根据统一的预设的优化容量占用率来计算业务集群中各子业务组的目标资源量,然后根据目标资源量调整子业务组的资源量。由于预设的优化容量占用率通常是根据服务器的最优利用状态设置的,因此业务集群中各子业务组使用目标资源量后,能够使各子业务组中的服务器符合服务器的最优利用状态,即每个子业务组的目标资源量能够更有效的利用,避免资源的浪费,从而降低运营综合成本。
进一步的,如图6所示,所述计算单元32包括:
商值计算模块321,用于分别计算各子业务组的实际占用容量与目标占用率的商,得到多个商值结果;
取整模块322,用于对所有的商值结果进行取整,得到每个子业务组对应的目标资源量。
进一步的,如图6所示,所述获取单元31包括:
获取模块311,用于获取压力测试后业务集群包含的各子业务组的资源量以及对应的容量占用率,所述资源量为服务器的数量;
确定模块312,用于分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量。
进一步的,如图6所示,所述确定模块312,用于:
分别计算每个子业务组的资源量与对应的容量占用率的乘积,确定各子业务组的实际占用容量。
进一步的,如图6所示,所述获取模块311,用于:
获取每个子业务组的压力测试指标以及每个压力测试指标对应的指标极限值;
切割用户请求到所述业务集群后对业务集群进行压力测试,在任意一个子业务组中的任意一种压力测试指标的当前指标值等于对应的指标极限值时,终止压力测试;
计算所有当前指标值的极限趋近率,将每个子业务组中最大的极限趋近率确定为对应子业务组的容量占用率,所述极限趋近率为压力测试指标的当前指标值与其对应的指标极限值的比。
进一步的,如图6所示,所述装置还包括:
重新压测单元34,用于对优化后的业务集群重新进行压力测试,得到每个子业务组对应的优化后的容量占用率;
验证单元35,用于根据优化后的容量占用率验证优化的结果。
进一步的,如图6所示,所述验证单元35包括:
差值计算模块351,用于分别计算每个优化后的容量占用率与所述目标占用率的差值,得到多个差值结果;
验证模块352,用于若所述多个差值结果都在预设差值范围内,则优化成功。
进一步的,如图6所示,所述装置还包括:
选择单元36,用于若多个差值结果不都在预设差值范围内,则选出不在预设差值范围内的差值结果对应的子业务组;
重新计算单元37,用于根据目标占用率重新计算不在预设差值范围内的差值结果对应的子业务组的目标资源量,得到与子业务组对应的修正目标资源量;
重新压测单元34,还用于根据修正目标资源量重新对所述业务集群进行压力测试,直到得到的各子业务组对应的多个差值结果都在预设差值范围内为止。
进一步的,如图6所示,所述装置还包括:
记录单元38,用于将优化成功后所述业务集群中包含的各子业务组对应的目标资源量以及优化后的容量占用率或者对应的修正目标资源量以及优化后的容量占用率进行关联记录。
具体的,本申请实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种集群资源量优化的方法,其特征在于,包括:
获取压力测试后业务集群各子业务组的实际占用容量;
根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;
根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
2.根据权利要求1所述的集群资源量优化的方法,其特征在于,所述根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,包括:
分别计算各子业务组的实际占用容量与目标占用率的商,得到多个商值结果;
对所有的商值结果进行取整,得到每个子业务组对应的目标资源量。
3.根据权利要求1所述的集群资源量优化的方法,其特征在于,所述获取压力测试后业务集群各子业务组的实际占用容量,包括:
获取压力测试后业务集群包含的各子业务组的资源量以及对应的容量占用率,所述资源量为服务器的数量;
分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量。
4.根据权利要求3所述的集群资源量优化的方法,其特征在于,所述分别根据各子业务组的资源量以及对应的容量占用率确定各子业务组的实际占用容量包括:
分别计算每个子业务组的资源量与对应的容量占用率的乘积,确定各子业务组的实际占用容量。
5.根据权利要求1或3所述的集群资源量优化的方法,其特征在于,所述获取压力测试后业务集群包含的各子业务组的容量占用率包括:
获取每个子业务组的压力测试指标以及每个压力测试指标对应的指标极限值;
切割用户请求到所述业务集群后对业务集群进行压力测试,在任意一个子业务组中的任意一种压力测试指标的当前指标值等于对应的指标极限值时,终止压力测试;
计算所有当前指标值的极限趋近率,将每个子业务组中最大的极限趋近率确定为对应子业务组的容量占用率,所述极限趋近率为压力测试指标的当前指标值与其对应的指标极限值的比。
6.根据权利要求5中所述的集群资源量优化的方法,其特征在于,所述方法还包括:
对优化后的业务集群重新进行压力测试,得到每个子业务组对应的优化后的容量占用率;
根据优化后的容量占用率验证优化的结果。
7.根据权利要求6所述的集群资源量优化的方法,其特征在于,所述根据优化后的容量占用率验证优化的结果包括:
分别计算每个优化后的容量占用率与所述目标占用率的差值,得到多个差值结果;
若所述多个差值结果都在预设差值范围内,则优化成功。
8.根据权利要求7所述的集群资源量优化的方法,其特征在于,所述方法还包括:
若多个差值结果不都在预设差值范围内,则选出不在预设差值范围内的差值结果对应的子业务组;
根据目标占用率重新计算不在预设差值范围内的差值结果对应的子业务组的目标资源量,得到与子业务组对应的修正目标资源量;
根据修正目标资源量重新对所述业务集群进行压力测试,直到得到的各子业务组对应的多个差值结果都在预设差值范围内为止。
9.根据权利要求8所述的集群资源量优化的方法,其特征在于,所述方法还包括:
将优化成功后所述业务集群中包含的各子业务组对应的目标资源量以及优化后的容量占用率或者对应的修正目标资源量以及优化后的容量占用率进行关联记录。
10.一种集群资源量优化的装置,其特征在于,包括:
获取单元,用于获取压力测试后业务集群各子业务组的实际占用容量;
计算单元,用于根据各子业务组的实际占用容量和目标占用率计算各子业务组的目标资源量,所述目标占用率为预设的优化容量占用率;
优化单元,用于根据所述目标资源量对业务集群包含的各子业务组的资源量进行优化。
CN201910305716.5A 2019-04-16 2019-04-16 集群资源量优化的方法及装置 Withdrawn CN110083506A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910305716.5A CN110083506A (zh) 2019-04-16 2019-04-16 集群资源量优化的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910305716.5A CN110083506A (zh) 2019-04-16 2019-04-16 集群资源量优化的方法及装置

Publications (1)

Publication Number Publication Date
CN110083506A true CN110083506A (zh) 2019-08-02

Family

ID=67415368

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910305716.5A Withdrawn CN110083506A (zh) 2019-04-16 2019-04-16 集群资源量优化的方法及装置

Country Status (1)

Country Link
CN (1) CN110083506A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581070A (zh) * 2020-05-07 2020-08-25 拉扎斯网络科技(上海)有限公司 容量确定方法、装置、电子设备及计算机可读存储介质
CN112148554A (zh) * 2020-09-14 2020-12-29 北京金和网络股份有限公司 实时计算redis业务数据占用大小的方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581070A (zh) * 2020-05-07 2020-08-25 拉扎斯网络科技(上海)有限公司 容量确定方法、装置、电子设备及计算机可读存储介质
CN111581070B (zh) * 2020-05-07 2023-08-18 拉扎斯网络科技(上海)有限公司 容量确定方法、装置、电子设备及计算机可读存储介质
CN112148554A (zh) * 2020-09-14 2020-12-29 北京金和网络股份有限公司 实时计算redis业务数据占用大小的方法及装置

Similar Documents

Publication Publication Date Title
US9405661B1 (en) Resource-constrained test automation
CN109168135A (zh) 短信发送通道的选择方法、装置、短信平台和存储介质
CN103763346B (zh) 一种分布式资源调度方法及装置
US8768878B2 (en) Characterizing business intelligence workloads
CN110308980A (zh) 数据的批量处理方法、装置、设备及存储介质
US20150302440A1 (en) Cloud computing solution generation systems and methods
US20120323821A1 (en) Methods for billing for data storage in a tiered data storage system
US10778772B2 (en) Cloud platform or cloud provider selection
CN108255707A (zh) 测试用例的开发角色创建方法、装置、设备及存储介质
CN110083506A (zh) 集群资源量优化的方法及装置
CN108241535B (zh) 资源管理的方法、装置及服务器设备
CN110083512A (zh) 集群监控的方法及装置
US8548881B1 (en) Credit optimization to minimize latency
CN106657399A (zh) 基于中间件实现的后台服务器选择方法及装置
US20220292392A1 (en) Scheduled federated learning for enhanced search
CN108280024B (zh) 流量分配策略测试方法、装置及电子设备
CN104462116A (zh) 数据选择的方法及装置
CN116955148A (zh) 业务系统测试方法、装置、设备、存储介质及产品
US11950173B2 (en) Method of determining shared service index based on shared service of communication credential
CN111598390B (zh) 服务器高可用性评估方法、装置、设备和可读存储介质
CN105718297A (zh) 虚拟机建立系统以及方法
CN110865817B (zh) 一种云计算平台资源计量方法和系统
CN109407994B (zh) 一种存储策略生成方法、装置、设备及可读存储介质
US11061653B2 (en) Dynamic compiling for conditional statements during execution
CN114968493B (zh) 虚拟机调度方法、装置、计算机可读介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20190802

WW01 Invention patent application withdrawn after publication