一种云平台资源的缩容方法、装置与系统的制作方法

文档序号:8226134阅读:527来源:国知局
一种云平台资源的缩容方法、装置与系统的制作方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种云平台资源的缩容方法、装置与系统。
【背景技术】
[0002]云计算是一种服务的交付和使用模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。云计算基本特征为按需使用资源、资源可以动态扩展、应用弹性计算、通过网络以服务方式提供给应用开发用户。在云计算时代,云平台将软件研发平台作为一种服务提供给应用开发用户,应用的运行环境和运行维护工作由云平台代为完成,应用开发用户只需要关注应用的逻辑实现即可。
[0003]实例在虚拟机内启动时是根据虚拟机的瞬时响应速度决定的,而每个虚拟机由于自身运行实例数量、种类的不同,使得每个虚拟机的响应速度千差万别,对于单个虚拟机来说,由于它自身运行实例、种类的不同,导致同一个虚拟机在不同时段的响应速度也不尽相同。因此实例在云平台中虚拟机上的分布是杂乱无章的。
[0004]弹性计算是云计算的基本特征之一,它是指应用开发用户根据实际业务或者计算需要,灵活地使用计算资源,并根据使用云平台上虚拟机资源的多少进行相应的付费,真正实现按需使用、按需交付和按需付费。因此当外界对应用的访问请求减少时,为避免资源浪费,节约应用供应商的运营成本,希望减少应用的实例个数对云平台上的虚拟机资源进行缩容,从而实现平台资源的高效利用。
[0005]当前在云平台的应用缩容方面,没有较好的缩容策略,现有的缩容技术通常是在云平台上的虚拟机中通过对目标应用的实例的启动时间由晚及早的顺序进行删除。
[0006]由于实例在云平台中虚拟机上是随机分布的,因此按照启动时间删除实例之后,虚拟机中的实例分布仍旧零散无序,虚拟机实例的整合和分布缺少规划,不易集中,虚拟机出现空闲的可能性非常小,尤其当应用的大量外部访问骤减时,实例的零散分布会浪费不必要的云平台资源的付费成本,不能有效的对云平台的虚拟机资源进行缩容整合,从而导致虚拟机资源利用率低下。

【发明内容】

[0007]有鉴于此,本发明实施例提供了一种云平台资源的缩容方法、装置与系统,使得缩容后尽可能地出现实例为空的虚拟机,使实例尽量集中在少数的几台虚拟机中,并将完全空闲出来的虚拟机资源释放,以提高虚拟机资源的利用率。
[0008]根据本发明实施例的第一方面,提供了一种云平台资源的缩容方法,云平台资源为云平台上的虚拟机资源,虚拟机包含应用的实例;其特征在于,上述方法包括:接收对云平台上目标应用的实例删除请求,上述实例删除请求携带数量标识和上述目标应用的标识;上述数量标识表示上述目标应用需要删除的实例的数量为N,N为大于O的整数;根据上述目标应用的标识从上述云平台中查找出目标虚拟机,上述目标虚拟机为所有包含上述目标应用的实例的虚拟机;获得上述目标虚拟机中每个实例所属应用的种类和每种应用的实例的数量;根据上述目标虚拟机中每个实例所属应用的种类和每种应用的实例的数量,采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例。
[0009]结合第一方面,在第一方面的第一种可能的实现方式中,在采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例之后,上述方法还包括:检查上述目标虚拟机中是否出现空闲虚拟机,上述空闲虚拟机中包含的实例数量为零;如果检查到上述目标虚拟中出现空闲虚拟机,释放上述空闲虚拟机。。
[0010]结合第一方面,或者结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,上述目标虚拟机中包括至少两个特殊虚拟机,上述特殊虚拟机中只包含上述目标应用的实例,所有特殊虚拟机中包含的实例的总数大于或等于N ;上述采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例包括:按照各个特殊虚拟机中包含的实例数量从少到多的顺序,从上述至少一个特殊虚拟机中删除N个实例。
[0011]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第三种可能的实现方式中,上述按照各个特殊虚拟机中包含的实例数量从少到多的顺序,从上述至少一个特殊虚拟机中删除N个实例具体包括:若包含的实例数量最少的特殊虚拟机中包含的实例数量大于或等于N,在上述实例数量最少的特殊虚拟机中删除N个实例。
[0012]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第四种可能的实现方式中,上述按照各个特殊虚拟机中包含的实例数量从少到多的顺序,从上述至少一个特殊虚拟机中删除N个实例具体包括:若包含的实例数量最少的特殊虚拟机中包含的实例数量小于N,按照上述顺序在前M个特殊虚拟机中删除所有的实例,已删除数量记为N-X个,使上述顺序中第M+1个特殊虚拟机中包含的实例的数量大于或等于X,X为上述目标应用的实例的剩余删除数量,M和X均为大于O的整数;在上述顺序中第M+1个特殊虚拟机中删除X个实例。
[0013]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第五种可能的实现方式中,上述目标虚拟机中包括至少一个特殊虚拟机,上述特殊虚拟机中只包含上述目标应用的实例,所有特殊虚拟机中实例的总数小于N;上述采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例包括:删除所有特殊虚拟机中所有的实例,已删除数量记为N-Y ;按照各个剩余目标虚拟机中包含的实例总数从少到多的顺序,从至少一个剩余目标虚拟机中删除上述目标应用的Y个实例,Y为上述目标应用的实例的剩余删除数量,Y为大于O的整数。
[0014]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第六种可能的实现方式中,上述按照各个剩余目标虚拟机中包含的实例总数从少到多的顺序,从至少一个剩余目标虚拟机中删除上述目标应用的Y个实例具体包括:若包含的实例总数最少的剩余目标虚拟机中包含上述目标应用的实例数量大于或等于Y,在上述包含的实例总数最少的剩余目标虚拟机中删除上述目标应用的Y个实例。
[0015]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第七种可能的实现方式中,上述按照各个剩余目标虚拟机中包含的实例总数从少到多的顺序,从至少一个剩余目标虚拟机中删除上述目标应用的Y个实例具体包括:若包含的实例总数最少的剩余目标虚拟机中包含上述目标应用的实例数量小于Y,按照上述顺序在前Ml个剩余目标虚拟机中删除上述目标应用所有的实例,已删除数量记为Y-Xl个,使上述顺序中第M1+1个剩余目标虚拟机中包含上述目标应用的实例的数量大于或等于Xl,上述Xl为上述目标应用的实例的剩余删除数量,上述Ml和上述Xl均为大于O的整数;在上述顺序中第M1+1个剩余目标虚拟机中删除上述上述目标应用的Xl个实例。
[0016]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第八种可能的实现方式中,上述采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例包括:按照各个目标虚拟机中包含的实例总数从少到多的顺序,从至少一个目标虚拟机中删除上述目标应用的N个实例。
[0017]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第九种可能的实现方式中,上述按照各个目标虚拟机中包含的实例总数从少到多的顺序,从至少一个目标虚拟机中删除上述目标应用的N个实例具体包括:若包含的实例总数最少的目标虚拟机中包含上述目标应用的实例数量大于或等于N,在上述包含的实例总数最少的目标虚拟机中删除上述目标应用的N个实例。
[0018]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第十种可能的实现方式中,上述按照各个目标虚拟机中包含的实例总数从少到多的顺序,从至少一个目标虚拟机中删除上述目标应用的N个实例具体包括:若包含的实例总数最少的目标虚拟机中包含上述目标应用的实例数量小于N,按照上述顺序在前M2个目标虚拟机中删除上述目标应用所有的实例,已删除数量记为N-X2个,使上述顺序中第M2+1个目标虚拟机中包含上述目标应用的实例的数量大于或等于X2,X2为上述目标应用的实例的剩余删除数量,M2和X2均为大于O的整数;在上述顺序中第M2+1个目标虚拟机中删除上述目标应用的X2个实例。
[0019]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第十一种可能的实现方式中,上述方法还包括:当多个目标虚拟机中各自包含的实例总数相同时,优先删除应用种类数最少的目标虚拟机中所包含的上述目标应用的实例。
[0020]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第十二种可能的实现方式中,上述方法还包括:当多个目标虚拟机中各自包含的实例总数相同,并且各自包含的应用种类数也相同时,优先删除包含上述目标应用的实例数量最少的目标虚拟机中所包含的目标应用的实例。
[0021]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第十三种可能的实现方式中,上述方法还包括:当多个目标虚拟机中各自包含的实例总数相同,各自包含的应用种类数也相同,并且各自包含上述目标应用的实例的数量也相同时,优先删除上述目标应用启动时间最晚或最早的实例所在的目标虚拟机中所包含的目标应用的实例,或随机选择在上述多个目标虚拟机中的任何一个虚拟机中删除上述目标应用的实例。
[0022]结合第一方面,或者结合第一方面的上述任何一种可能的实现方式,在第一方面的第十四种可能的实现方式中,上述目标虚拟机中只包括一个特殊虚拟机,上述特殊虚拟机中只包含上述目标应用的实例,上述特殊虚拟机中包含的实例的总数大于或等于N,上述采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例包括:在上述特殊虚拟机中删除N个实例。
[0023]根据本发明实施例的第二方面,提供了一种云平台资源的缩容装置,上述装置包括:接收模块,用于接收对云平台上目标应用的实例删除请求,上述实例删除请求携带数量标识和上述目标应用的标识;上述数量标识表示上述目标应用需要删除的实例的数量为N,N为大于O的整数;查找模块,用于根据上述接收模块接收到目标应用的标识从上述云平台中查找出目标虚拟机,上述目标虚拟机为所有包含上述目标应用的实例的虚拟机;获得模块,用于获得上述查找模块查找到的目标虚拟机中每个实例所属应用的种类和每种应用的实例的数量;策略模块,用于根据上述获得模块获得的上述目标虚拟机中每个实例所属应用的种类和每种应用的实例的数量,采用预设的缩容策略在上述目标虚拟机中删除上述目标应用的N个实例。
[0024]结合第二方面,在第二方面的第一种可能的实现方式中,上述装置还包括检查模块和释放模块,上述检查模块用于检查上述目标虚拟机中是否出现空闲虚拟机,上述空闲虚拟机中包含的实例数量为零;如果
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1