CN110554904A - 伸缩策略处理方法、装置、设备及存储介质 - Google Patents
伸缩策略处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110554904A CN110554904A CN201910697820.3A CN201910697820A CN110554904A CN 110554904 A CN110554904 A CN 110554904A CN 201910697820 A CN201910697820 A CN 201910697820A CN 110554904 A CN110554904 A CN 110554904A
- Authority
- CN
- China
- Prior art keywords
- scaling
- group
- target
- strategy
- execution request
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/301—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种伸缩策略处理方法、装置、设备及存储介质,属于云计算领域。该方法包括:获取伸缩组内的云主机的性能监控数据;从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。本申请一方面可以实现无需人工接入即可进行自动伸缩,从而降低人力成本,另一方面可以实现一个伸缩组可以部署多个伸缩策略,以使该伸缩组可以有多种伸缩策略,进而可以根据性能监控数据来调整伸缩组每次执行的伸缩策略,使得伸缩组的伸缩策略可以随时调整,进而使得伸缩组的灵活性更好,以便于适应更多的应用场景。
Description
技术领域
本申请涉及云计算领域,具体而言,涉及一种伸缩策略处理方法、装置、设备及存储介质。
背景技术
云计算平台弹性伸缩功能是用来保证某一组虚拟机可以在某些情况下进行扩容或缩容,这是云计算平台的一个重要功能。
目前现有的伸缩控制任务基本是通过人工干预或者是根据监控数据使用一个固定伸缩策略来进行伸缩操作。然而,人工干预完全依赖于运维人员手工登录云管界面进行虚机组扩容或者缩容操作。这种方式流程复杂、业务响应能力慢,不适合现在云计算行业的发展方向。而固定伸缩策略是指云管系统在触发特定条件后对一组虚机进行自动扩容或者缩容操作,因此,由于需要人工干预,会导致人力成本较高,并且固定伸缩策略会使得伸缩组的策略无法调整,使得伸缩组的局限较大。
发明内容
本申请实施例的目的在于提供一种伸缩策略处理方法、装置、设备及存储介质,能够降低人力成本的同时使得伸缩组的伸缩更加灵活,适应性更好。
第一方面,本申请实施例提供的一种伸缩策略处理方法,所述方法包括:获取伸缩组内的云主机的性能监控数据;从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
在上述实现过程中,通过获取伸缩组内的云主机的性能监控数据;从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。一方面可以使得无需人工接入即可进行自动伸缩,从而降低人力成本,另一方面可以使得一个伸缩组可以部署多个伸缩策略,以使该伸缩组可以有多种伸缩策略,进而可以根据性能监控数据来调整伸缩组每次执行的伸缩策略,使得伸缩组的伸缩策略可以随时调整,进而使得伸缩组的灵活性更好,以便于适应更多的应用场景。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,所述从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略,包括:将所述性能监控数据与所述多个伸缩策略中的每个伸缩策略进行匹配,确定出与所述性能监控数据匹配的目标伸缩策略。
在上述实现过程中,通过将性能监控数据与多个伸缩策略中的每个伸缩策略都进行比较,以实现对伸缩组进行多个伸缩策略的监控,以便于伸缩组能够满足业务阶梯型变化,进而使得伸缩组更加灵活,可以适用于更多的应用场景,而无需在适用不同业务时,修改伸缩策略。
结合第一方面或第一方面的第一种可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,向所述伸缩组发送执行请求,包括:向所述伸缩组发送与多个目标伸缩策略对应的多个执行请求,其中,每个执行请求用于请求所述伸缩组执行与所述每个执行请求对应的目标伸缩策略;所述伸缩组用于在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求。
在上述实现过程中,当监测到有多个目标伸缩策略时,向伸缩组发送与多个目标伸缩策略对应的多个执行请求,以使伸缩组在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求,从而可以使得伸缩组可以有多个伸缩策略的前提下,也不会因为多个伸缩策略同时生效而导致的重复伸缩,极大的帮助了运维管理人员,使业务响应速度得到了极大的提高,以及避免了重复伸缩带来的资源冗余。
结合第一方面,本申请实施例提供了第一方面的第三种可能的实施方式,所述方法还包括:接收伸缩组发起的待监控的新建伸缩策略;将所述新建伸缩策略加入监测组。
第二方面,本申请实施例提供的一种伸缩策略处理方法,所述方法包括:接收监控系统发送的执行请求;执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与伸缩组的性能监控数据匹配的伸缩策略。
在上述实现过程中,通过接收监控系统发送的执行请求;然后执行所述执行请求所对应的目标伸缩策略,可以使得监控系统在对多个伸缩策略监测到与伸缩组的性能监控数据匹配的伸缩策略时,伸缩组可以根据监控系统返回的不同执行请求来调整自身每次执行的伸缩策略,使得伸缩组的伸缩策略可以随时调整,进而使得伸缩组的灵活性更好,以便于适应更多的应用场景。
结合第二方面,本申请实施例提供了第二方面的第一种可能的实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,所述接收监控系统发送的执行请求,包括:接收监控系统发送的与多个目标伸缩策略对应的多个执行请求。
结合第二方面的第一种可能的实施方式,本申请实施例提供了第二方面的第二种可能的实施方式,执行所述执行请求所对应的所述目标伸缩策略,包括:从所述多个执行请求中确定出最先收到的执行请求;将所述最先收到的执行请求作为目标执行请求;执行所述目标执行请求所对应的目标伸缩策略。
在上述实现过程中,通过监控系统对多个伸缩策略进行监控,使得伸缩组在接收到多个执行请求时,可以通过将最先收到的执行请求作为目标执行请求来进行执行,进而使得伸缩组不会因为多个伸缩策略同时生效而导致的重复伸缩,进而还能够得伸缩组的灵活性更好,以便于适应更多的应用场景。
结合第二方面的第二种可能的实施方式,本申请实施例提供了第二方面的第三种可能的实施方式,在所述执行所述目标执行请求所对应的目标伸缩策略之后,还包括:确定自身进入冷却期,其中,在所述冷却期期间不执行除与所述目标执行请求以外的其余执行请求。
在上述实现过程中,通过在执行目标执行请求对应的伸缩策略时,使自身进入冷却期,从而可以使得自身不再执行伸缩操作直到冷却期结束。从而可以避免同一个伸缩组在同一个时间段内重复多次执行伸缩策略造成过度扩容浪费资源或过度收缩而影响实际业务处理能力,进而可以避免重复伸缩带来的资源冗余。
第三方面,本申请实施例提供的一种伸缩策略处理装置,所述装置包括:监测单元,用于获取伸缩组内的云主机的性能监控数据;处理单元,用于从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;发送单元,用于向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
结合第三方面,本申请实施例提供了第三方面的第一种可能的实施方式,所述处理单元,还用于:将所述性能监控数据与所述多个伸缩策略中的每个伸缩策略进行匹配,确定出与所述性能监控数据匹配的目标伸缩策略。
结合第三方面或第三方面的第一种可能的实施方式,本申请实施例提供了第三方面的第二种可能的实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,发送单元,还用于:向所述伸缩组发送与多个目标伸缩策略对应的多个执行请求,其中,每个执行请求用于请求所述伸缩组执行与所述每个执行请求对应的目标伸缩策略;所述伸缩组用于在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求。
结合第三方面,本申请实施例提供了第三方面的第三种可能的实施方式,所述装置还包括:接收单元,用于接收伸缩组发起的待监控的新建伸缩策略;将所述新建伸缩策略加入监测组。
第四方面,本申请实施例提供的一种伸缩策略处理装置,所述装置包括:接收单元,用于接收监控系统发送的执行请求;执行单元,用于执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与性能监控数据匹配的伸缩策略。
结合第四方面,本申请实施例提供了第四方面的第一种可能的实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,接收单元,还用于:接收监控系统发送的与多个目标伸缩策略对应的多个执行请求。
结合第四方面的第一种可能的实施方式,本申请实施例提供了第四方面的第二种可能的实施方式,执行单元,还用于:从所述多个执行请求中确定出最先收到的执行请求;将所述最先收到的执行请求作为目标执行请求;执行所述目标执行请求所对应的目标伸缩策略。
结合第四方面的第二种可能的实施方式,本申请实施例提供了第四方面的第三种可能的实施方式,所述装置还包括:设置单元,用于在所述执行所述目标执行请求所对应的目标伸缩策略之后,确定自身进入冷却期,其中,在所述冷却期期间不执行除与所述目标执行请求以外的其余执行请求。
第五方面,本申请实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述伸缩策略处理方法的步骤;或者,所述处理器执行所述计算机程序时实现如第二方面任一项所述伸缩策略处理方法的步骤。
第六方面,本申请实施例提供的一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的伸缩策略处理方法;或者,当所述指令在计算机上运行时,使得所述计算机执行如第二方面任一项所述的伸缩策略处理方法。
第七方面,本申请实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的伸缩策略处理方法;或者,使得计算机执行如第二方面任一项所述的伸缩策略处理方法。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种伸缩策略处理方法的流程图;
图2为本申请实施例提供的一种伸缩策略处理方法的流程图;
图3为本申请实施例提供的另一种伸缩策略处理方法的流程图;
图4为本申请实施例提供的一种伸缩策略处理装置的结构示意图;
图5为本申请实施例提供的一种伸缩策略处理装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
请参阅图1,图1为本申请实施例提供的一种伸缩策略处理方法的流程图,应理解,该方法可以通过如图4所示的伸缩策略处理装置来执行,该装置与图6所示的电子设备对应,该电子设备可以是能够执行该方法的各种设备,例如,计算机或云服务器等,本申请实施例并不限于此,具体包括如下步骤:
步骤S101,获取伸缩组内的云主机的性能监控数据。
可选地,性能监控数据用于反映对伸缩组内的云主机的性能的监控的数据。例如,CPU占用率为多少,磁盘被使用了多少,还剩余多少可用存储空间。
应理解,上述举例仅为示例而非限定。
作为一种实施场景,在对伸缩组进行监控时,监控系统会实时采集伸缩组内的云主机的性能监控数据。
其中,监控系统也可以称为如图4所示的伸缩策略处理装置。在此,不作具体限定。
可选地,伸缩组也可以称为弹性伸缩组。
可选地,云主机又可以称为虚拟机,其可以部署在云上,或者部署在物理机上。在此,不作具体限定。
步骤S102,从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略。
可选地,预先存储的多个伸缩策略为伸缩组在被监控前注册至监控系统中的,以便于监控系统根据伸缩组注册的伸缩策略来实现对该伸缩组的监控。
应理解,多个伸缩策略是同一伸缩组所注册的,即该多个伸缩策略用于一个伸缩组。
可选地,伸缩策略用于伸缩组执行扩容操作(即增加云主机数量)或缩容操作(即减少伸缩组内的云主机的数量)。
作为一种应用场景,伸缩组可以是逐步向监控系统注册伸缩策略,以注册多个伸缩策略,监控系统在伸缩组注册伸缩策略后,将伸缩组所注册的所有伸缩策略进行保存,以便于监控。例如,伸缩组在运行一段时间后,当用户新增了伸缩策略后,就可以将该新增的伸缩策略注册到监控系统,从而使得监控系统可以同时对该伸缩组的多个伸缩策略进行监控。
当然,在实际使用中,伸缩组也可以同时向监控系统注册多个伸缩策略。例如,在创建伸缩组时,用户就为该伸缩组创建了多个伸缩策略,从而在对该伸缩组进行监控时,该伸缩组可以将自己的多个伸缩策略注册到监控系统。
需要说明的是,本申请实施例中的注册是指伸缩组将伸缩策略加入到监控系统中,以便于监控系统进行监控。
可选地,目标伸缩策略是指预先存储的多个伸缩策略中与性能监控数据匹配的伸缩策略。
可选地,目标伸缩策略可以是一个,也可以是多个。例如,伸缩策略的数量为2、3、4或5个等。
作为一种实施方式,步骤S102包括:将所述性能监控数据与所述多个伸缩策略中的每个伸缩策略进行匹配,确定出与所述性能监控数据匹配的目标伸缩策略。
可选地,可以将性能监控数据同时与每个伸缩策略进行匹配。例如,通过多线程并发的方式同时将性能监控数据与多个伸缩策略进行匹配。
可选地,匹配是指将性能监控数据与多个伸缩策略进行比较,当性能监控数据与某一个伸缩策略相同(或属于该伸缩策略所限定的条件时),即判定该伸缩策略与该性能监控数据匹配。
举例来说,假设性能监控数据为CPU占用率为90%,多个伸缩策略中的某一伸缩策略的伸缩条件是当CPU占用率大于80%时,新增一个云主机。则由于CPU占用率为90%已经大于80%了,故该性能监控数据与该某一伸缩策略匹配。
应理解,上述举例仅为示例而非限定。
可选地,也可以将性能监控数据逐一与每个伸缩策略进行比较,以确定出与性能监控数据匹配的目标伸缩策略。例如,先将性能监控数据与多个伸缩策略中的伸缩策略1进行匹配,当匹配时,将该伸缩策略1作为目标伸缩策略,然后性能监控数据与多个伸缩策略中的伸缩策略2进行匹配,直到将所有的伸缩策略都匹配完,从而找到所有与性能监控数据匹配的目标伸缩策略。
应理解,上述举例仅为示例而非限定。
在上述实现过程中,通过将性能监控数据与多个伸缩策略中的每个伸缩策略都进行比较,以实现对伸缩组进行多个伸缩策略的监控,以便于伸缩组能够满足业务阶梯型变化,进而使得伸缩组更加灵活,可以适用于更多的应用场景,而无需在适用不同业务时,修改伸缩策略。
步骤S103,向所述伸缩组发送执行请求。
其中,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
作为一种实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,步骤S103,包括:向所述伸缩组发送与多个目标伸缩策略对应的多个执行请求。
其中,每个执行请求用于请求所述伸缩组执行与所述每个执行请求对应的目标伸缩策略;此时,所述伸缩组在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求。
可选地,当有一个与所述性能监控数据匹配的目标伸缩策略时,就向所述伸缩组发送执行请求,如果有多个目标伸缩策略,就向所述伸缩组发送多个执行请求。
在上述实现过程中,当监测到有多个目标伸缩策略时,向伸缩组发送与多个目标伸缩策略对应的多个执行请求,以使伸缩组在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求,从而可以使得伸缩组可以有多个伸缩策略的前提下,也不会因为多个伸缩策略同时生效而导致的重复伸缩,极大的帮助了运维管理人员,使业务响应速度得到了极大的提高,以及避免了重复伸缩带来的资源冗余。
在一可能的实施例中,伸缩策略处理方法,还包括:接收伸缩组发起的待监控的新建伸缩策略;将所述新建伸缩策略加入监测组。
可选地,新建伸缩策略可以是在伸缩组运行一段时间后创建的,例如,伸缩组运行一周后,创建了一个新的伸缩策略,此时,在将该新建伸缩策略加入监测组后,监控系统便可以对该新建伸缩策略进行监控。
可选地,监测组为监控系统中存储伸缩策略的一个模块,例如,监测组可以是一个集合,也可以是一个数据库。在此,不作具体限定。
在上述实现过程中,伸缩组可以随时新建伸缩策略,并加入监测组,从而实现伸缩组的伸缩策略的多元化,便于伸缩组中的伸缩策略可以随时进行调整。
本申请实施例提供的一种伸缩策略处理方法,通过获取伸缩组内的云主机的性能监控数据;从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。一方面可以使得无需人工接入即可进行自动伸缩,从而降低人力成本,另一方面可以使得一个伸缩组可以部署多个伸缩策略,以使该伸缩组可以有多种伸缩策略,进而可以根据性能监控数据来调整伸缩组每次执行的伸缩策略,使得伸缩组的伸缩策略可以随时调整,进而使得伸缩组的灵活性更好,以便于适应更多的应用场景。
请参阅图2,图2为本申请实施例提供的一种伸缩策略处理方法的流程图,应理解,该方法可以通过如图5所示的伸缩策略处理装置来执行,该装置与图6所示的电子设备对应,该电子设备可以是能够执行该方法的各种设备,例如,计算机或云服务器等,本申请实施例并不限于此,具体包括如下步骤:
步骤S201,接收监控系统发送的执行请求。
可选地,执行请求也可以称为反馈信息,用于反馈所监测到的性能监控数据是否触发了伸缩策略。
作为一种实施方式,与所述性能监控数据匹配的目标伸缩策略为多个,步骤S201,包括:接收监控系统发送的与多个目标伸缩策略对应的多个执行请求。
可选地,所述伸缩组可以执行与每个执行请求对应的目标伸缩策略。
步骤S202,执行所述执行请求所对应的目标伸缩策略。
可选地,目标伸缩策略为监控系统从预先存储的多个伸缩策略中确定出的与伸缩组的性能监控数据匹配的伸缩策略。
作为一种实施方式,步骤S202,包括:从多个执行请求中确定出最先收到的执行请求;将最先收到的执行请求作为目标执行请求;执行目标执行请求所对应的目标伸缩策略。
可选地,从多个执行请求中确定出最先收到的执行请求,包括:从多个执行请求中分别确定收到每个执行请求的时间点,根据该时间点确定出最先收到的执行请求。
可选地,最先收到的执行请求是指以伸缩组收到各个执行请求的时间点来说,在时间轴上相对其他时间点最小的一个时间点。
举例来说,假设收到3个执行请求,分别为收到执行请求1的时间点为9:01:01(即9点零1分零1秒),收到执行请求2的时间点为:9:01: 02,收到执行请求3的时间点为9:01:03,则在时间轴上,按照时间先后顺序,收到执行请求1的时间点相对另外两个执行请求来说,其为伸缩组最先收到的执行请求。
在上述实现过程中,通过监控系统对多个伸缩策略进行监控,以使在接收到多个执行请求时,通过将最先收到的执行请求作为目标执行请求来进行执行,可以使得伸缩组不会因为多个伸缩策略同时生效而导致的重复伸缩,进而还能够得伸缩组的灵活性更好,以便于适应更多的应用场景。
作为另一种实施方式,执行请求为多个时,执行所述执行请求所对应的目标伸缩策略,包括:从多个执行请求中随机确定一个目标执行请求;执行目标执行请求所对应的目标伸缩策略。
可选地,当伸缩组收到多个执行请求时,可以随机从多个中选择一个来作为执行。
作为另一种实施方式,执行请求为多个时,执行所述执行请求所对应的目标伸缩策略,包括:从多个执行请求中确定出最后收到的执行请求;将最后收到的执行请求作为目标执行请求;执行目标执行请求所对应的目标伸缩策略。
在一可能的实施例中,在所述执行所述目标执行请求所对应的目标伸缩策略之后,伸缩策略处理方法还包括:确定自身进入冷却期。
可选地,在所述冷却期期间伸缩组不执行除与所述目标执行请求以外的其余执行请求。
也就是说,伸缩组在执行目标执行请求时,将自身进入冷却期,以只执行目标执行请求,而不执行其余执行请求。
可选地,冷却期的时间的设置可以根据用户需求进行设置,在此,不作具体限定。例如,冷却期的时间可以设置为5秒,或者是10秒。
在上述实现过程中,通过在执行目标执行请求对应的伸缩策略时,使自身进入冷却期,从而可以使得自身不再执行伸缩操作直到冷却期结束。从而可以避免同一个伸缩组在同一个时间段内重复多次执行伸缩策略造成过度扩容浪费资源或过度收缩而影响实际业务处理能力,进而可以避免重复伸缩带来的资源冗余。
可选地,在冷却期期间伸缩组也可以不执行任何执行请求。即伸缩组在在收到执行请求后将执行最先收到的一个执行请求对应伸缩策略,并丢弃其余执行请求并使自身进入冷却期。
也就是说,当在冷却期不执行任何执行请求时,伸缩组在进入冷却期之前已经执行完目标执行请求。
需要说明的是,步骤S201至步骤S202中涉及的各个特征,例如监控系统、执行请求、目标伸缩策略、性能监控数据等可以参见上文中的描述,此处适当省略详细描述。
本申请实施例提供的一种伸缩策略处理方法,通过接收监控系统发送的执行请求;然后执行所述执行请求所对应的目标伸缩策略,可以使得监控系统在对多个伸缩策略监测到与伸缩组的性能监控数据匹配的伸缩策略时,伸缩组可以根据监控系统返回的不同执行请求来调整自身每次执行的伸缩策略,使得伸缩组的伸缩策略可以随时调整,进而使得伸缩组的灵活性更好,以便于适应更多的应用场景。
上文结合图1与图2描述了本申请中的伸缩策略处理方法,下面,作为示例而非限定,结合图3对本申请中的伸缩策略处理方法进行详细的描述。如图3所示的方法包括:
步骤S301,新建伸缩策略。
可选地,新建伸缩策略可以理解为新建的伸缩策略。
可选地,获取用户为伸缩组所新建的伸缩策略。
步骤S302,注册至监控系统。
即将新建的伸缩策略注册到监控系统,以使该监控系统可以对该新建的伸缩策略进行监控。
步骤S303,监控。
即监控系统对监控组中的所有的云主机进行监测。
步骤S304,监控数据。
即监控系统获取伸缩组内的云主机的性能监控数据。也就是说,监控系统对伸缩组内加入到监控组的云主机的性能进行监控,以采集云主机的性能监控数据。
步骤S305,根据策略分析监控数据。
可选地,这里的策略是指监控系统中的多个伸缩策略,如策略1、策略 2、策略3…策略N。N为大于3的整数。
可选地,根据策略分析监控数据,包括:从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略。具体地,该过程的实施方式,请参照步骤S102,在此,不再赘述。
步骤S306,是否冷却期。
即伸缩组确定自身是否处于冷却期,如果处于冷却期,则不接收监控系统发送的任何执行请求。如果没有处于冷却期,则接收监控系统发送的执行请求。
步骤S307,若否,执行最先收到的策略并进入冷却期。
即在没有处于冷却期时,执行最先收到的执行请求对应的伸缩策略并进入冷却期。
步骤S308,若执行缩容策略,删除云主机。
可选地,如果伸缩组执行的伸缩策略是缩容策略,则根据具体缩容要求删除对应个数的云主机。例如,可以是删除一个云主机,也可以是删除多个云主机。在此,不作具体限定。
步骤S309,离开监控组。
可选地,伸缩组删除某一云主机后,被删除的云主机将不再被监测,即会离开监控组。
步骤S310,若执行扩容策略,新建云主机。
可选地,如果伸缩组执行的伸缩策略是扩容策略,则伸缩组会根据具体扩容要求增加对应个数的云主机。例如,可以是增加一个云主机,也可以是增加多个云主机。在此,不作具体限定。
步骤S311,加入监控组。
可选地,伸缩组将增加的云主机加入监控组,以便于监控系统对该新建的云主机进行监控。
基于同一发明构思,如图4所示,本申请实施例中还提供了一种与图1 所示的伸缩策略处理方法一一对应的伸缩策略处理装置,应理解,该装置 400与上述图1方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置400具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。装置400包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在电子设备的操作系统(operating system,OS)中的软件功能模块。具体地,该装置400包括:
监测单元410,用于获取伸缩组内的云主机的性能监控数据。
处理单元420,用于从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略。
发送单元430,用于向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
可选地,所述处理单元430,还用于:将所述性能监控数据与所述多个伸缩策略中的每个伸缩策略进行匹配,确定出与所述性能监控数据匹配的目标伸缩策略。
可选地,与所述性能监控数据匹配的目标伸缩策略为多个,发送单元 430,还用于:向所述伸缩组发送与多个目标伸缩策略对应的多个执行请求,其中,每个执行请求用于请求所述伸缩组执行与所述每个执行请求对应的目标伸缩策略;所述伸缩组用于在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求。
在一可能的实施例中,所述装置400还包括:接收单元,用于接收伸缩组发起的待监控的新建伸缩策略;将所述新建伸缩策略加入监测组。
基于同一发明构思,如图5所示,本申请实施例中还提供了一种与图2 所示的伸缩策略处理方法一一对应的伸缩策略处理装置,应理解,该装置 500与上述图2方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置500具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。装置500包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在电子设备的操作系统(operating system,OS)中的软件功能模块。具体地,该装置500包括:
接收单元510,用于接收监控系统发送的执行请求。
执行单元520,用于执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与性能监控数据匹配的伸缩策略。
可选地,与所述性能监控数据匹配的目标伸缩策略为多个,接收单元 510,还用于:接收监控系统发送的与多个目标伸缩策略对应的多个执行请求,其中,每个执行请求用于所述伸缩组执行与所述每个执行请求对应的目标伸缩策略。
可选地,执行单元520,还用于:从所述多个执行请求中确定出最先收到的执行请求;将所述最先收到的执行请求作为目标执行请求;执行所述目标执行请求所对应的目标伸缩策略。
在一可能的实施例中,所述装置500还包括:设置单元,用于在所述执行所述目标执行请求所对应的目标伸缩策略之后,确定自身进入冷却期,其中,在所述冷却期期间不执行除与所述目标执行请求以外的其余执行请求。
基于同一发明构思,本申请还提供一种电子设备,图6为本申请实施例中的电子设备600的结构框图,电子设备600可以包括处理器610、通信接口620、存储器630和至少一个通信总线640。其中,通信总线640用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口620 用于与其他节点设备进行信令或数据的通信。处理器610可以是一种集成电路芯片,具有信号的处理能力。
上述的处理器610可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列 (FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器610也可以是任何常规的处理器等。
存储器630可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器 (Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。存储器630中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器610执行时,电子设备600可以执行上述图1或图2方法实施例涉及的各个步骤。
可选地,电子设备600还可以包括存储控制器。
所述存储器630、存储控制器、处理器610、各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线640实现电性连接。所述处理器610用于执行存储器630中存储的可执行模块,例如装置400包括的软件功能模块或计算机程序。并且,装置400用于执行下述方法:获取伸缩组内的云主机的性能监控数据;从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。又例如,装置500包括的软件功能模块或计算机程序。并且,装置500用于执行下述方法:接收监控系统发送的执行请求;执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与伸缩组的性能监控数据匹配的伸缩策略。
可以理解,图6所示的结构仅为示意,所述电子设备600还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置。图6 中所示的各组件可以采用硬件、软件或其组合实现。
本申请实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
本申请还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种伸缩策略处理方法,其特征在于,所述方法包括:
获取伸缩组内的云主机的性能监控数据;
从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;
向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
2.根据权利要求1所述的方法,其特征在于,所述从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略,包括:
将所述性能监控数据与所述多个伸缩策略中的每个伸缩策略进行匹配,确定出与所述性能监控数据匹配的目标伸缩策略。
3.根据权利要求1或2所述的方法,其特征在于,与所述性能监控数据匹配的目标伸缩策略为多个,向所述伸缩组发送执行请求,包括:
向所述伸缩组发送与多个目标伸缩策略对应的多个执行请求,其中,每个执行请求用于请求所述伸缩组执行与所述每个执行请求对应的目标伸缩策略;所述伸缩组用于在接收到所述多个执行请求后,从所述多个执行请求中确定出最先收到的执行请求,并执行所述最先收到的执行请求所对应的目标伸缩策略,丢弃除所述最先收到的执行请求以外的其余执行请求。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收伸缩组发起的待监控的新建伸缩策略;
将所述新建伸缩策略加入监测组。
5.一种伸缩策略处理方法,其特征在于,所述方法包括:
接收监控系统发送的执行请求;
执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与伸缩组的性能监控数据匹配的伸缩策略。
6.根据权利要求5所述的方法,其特征在于,与所述性能监控数据匹配的目标伸缩策略为多个,所述接收监控系统发送的执行请求,包括:
接收监控系统发送的与多个目标伸缩策略对应的多个执行请求。
7.根据权利要求6所述的方法,其特征在于,执行所述执行请求所对应的所述目标伸缩策略,包括:
从所述多个执行请求中确定出最先收到的执行请求;
将所述最先收到的执行请求作为目标执行请求;
执行所述目标执行请求所对应的目标伸缩策略。
8.根据权利要求7所述的方法,其特征在于,在所述执行所述目标执行请求所对应的目标伸缩策略之后,还包括:
确定自身进入冷却期,其中,在所述冷却期期间不执行除与所述目标执行请求以外的其余执行请求。
9.一种伸缩策略处理装置,其特征在于,包括:
监测单元,用于获取伸缩组内的云主机的性能监控数据;
处理单元,用于从预先存储的多个伸缩策略中确定出与所述性能监控数据匹配的目标伸缩策略;
发送单元,用于向所述伸缩组发送执行请求,所述执行请求用于请求所述伸缩组执行所述目标伸缩策略。
10.一种伸缩策略处理装置,其特征在于,包括:
接收单元,用于接收监控系统发送的执行请求;
执行单元,用于执行所述执行请求所对应的目标伸缩策略,所述目标伸缩策略为所述监控系统从预先存储的多个伸缩策略中确定出的与性能监控数据匹配的伸缩策略。
11.一种电子设备,其特征在于,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-4任一项所述伸缩策略处理方法;或者,所述处理器执行所述计算机程序时实现如权利要求5-8任一项所述伸缩策略处理方法。
12.一种存储介质,其特征在于,所述存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-4任一项所述伸缩策略处理方法;或者,当所述指令在计算机上运行时,使得所述计算机执行如权利要求5-8任一项所述伸缩策略处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910697820.3A CN110554904A (zh) | 2019-07-30 | 2019-07-30 | 伸缩策略处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910697820.3A CN110554904A (zh) | 2019-07-30 | 2019-07-30 | 伸缩策略处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110554904A true CN110554904A (zh) | 2019-12-10 |
Family
ID=68736797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910697820.3A Pending CN110554904A (zh) | 2019-07-30 | 2019-07-30 | 伸缩策略处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110554904A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116382923A (zh) * | 2023-06-01 | 2023-07-04 | 苏州浪潮智能科技有限公司 | 云主机弹性伸缩调度方法、装置、电子设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150248418A1 (en) * | 2013-10-09 | 2015-09-03 | Rahul M. Bhardwaj | Technology for managing cloud storage |
CN106961351A (zh) * | 2017-03-03 | 2017-07-18 | 南京邮电大学 | 基于Docker容器集群的智能弹性伸缩方法 |
CN109240822A (zh) * | 2018-08-07 | 2019-01-18 | 东软集团股份有限公司 | 应用程序弹性伸缩的方法、装置和存储介质以及电子设备 |
CN109783577A (zh) * | 2019-01-05 | 2019-05-21 | 咪付(广西)网络技术有限公司 | 一种基于策略的云端数据库弹性伸缩方法 |
-
2019
- 2019-07-30 CN CN201910697820.3A patent/CN110554904A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150248418A1 (en) * | 2013-10-09 | 2015-09-03 | Rahul M. Bhardwaj | Technology for managing cloud storage |
CN106961351A (zh) * | 2017-03-03 | 2017-07-18 | 南京邮电大学 | 基于Docker容器集群的智能弹性伸缩方法 |
CN109240822A (zh) * | 2018-08-07 | 2019-01-18 | 东软集团股份有限公司 | 应用程序弹性伸缩的方法、装置和存储介质以及电子设备 |
CN109783577A (zh) * | 2019-01-05 | 2019-05-21 | 咪付(广西)网络技术有限公司 | 一种基于策略的云端数据库弹性伸缩方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116382923A (zh) * | 2023-06-01 | 2023-07-04 | 苏州浪潮智能科技有限公司 | 云主机弹性伸缩调度方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109840142B (zh) | 基于云监控的线程控制方法、装置、电子设备及存储介质 | |
CN111049705B (zh) | 一种监控分布式存储系统的方法及装置 | |
WO2019169724A1 (zh) | 服务器并发数控制方法、装置、计算机设备及存储介质 | |
CN109218133B (zh) | 网络速度测试系统、方法、装置及计算机可读存储介质 | |
CN109117252B (zh) | 基于容器的任务处理的方法、系统及容器集群管理系统 | |
CN102984214A (zh) | 一种实现电信云中业务迁移的方法及装置 | |
US20170090904A1 (en) | Application management device, application management method, and computer-readable recording medium | |
CN109840141B (zh) | 基于云监控的线程控制方法、装置、电子设备及存储介质 | |
CN109522043B (zh) | 一种配置数据的管理方法、装置及存储介质 | |
CN109684048B (zh) | 事务提交系统中处理事务的方法及装置 | |
CN113067875A (zh) | 基于微服务网关动态流控的访问方法和装置以及设备 | |
CN110022257B (zh) | 分布式消息系统 | |
CN111371585A (zh) | 用于cdn节点的配置方法及装置 | |
CN115858221A (zh) | 存储设备的管理方法、装置、存储介质及电子设备 | |
CN110554904A (zh) | 伸缩策略处理方法、装置、设备及存储介质 | |
CN110569157B (zh) | 存储测试方法、装置、服务器及存储介质 | |
US20150079966A1 (en) | Methods for facilitating telecommunication network administration and devices thereof | |
CN112073329A (zh) | 分布式限流方法、装置、电子设备和存储介质 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN109962941B (zh) | 通信方法、装置以及服务器 | |
US9742687B2 (en) | Management system and method for execution of virtual machines | |
CN110569163A (zh) | 监测伸缩组内云主机健康状态的方法、装置、设备及介质 | |
CN115984022A (zh) | 分布式支付系统统一对账方法和装置 | |
CN107632890B (zh) | 一种数据流体系结构中动态节点分配方法和系统 | |
CN115658745A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191210 |