CN116431341A - 资源规格调整方法、设备及存储介质 - Google Patents
资源规格调整方法、设备及存储介质 Download PDFInfo
- Publication number
- CN116431341A CN116431341A CN202310356850.4A CN202310356850A CN116431341A CN 116431341 A CN116431341 A CN 116431341A CN 202310356850 A CN202310356850 A CN 202310356850A CN 116431341 A CN116431341 A CN 116431341A
- Authority
- CN
- China
- Prior art keywords
- virtual instance
- resource
- resource specification
- target
- virtual
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000003860 storage Methods 0.000 title claims abstract description 29
- 230000008569 process Effects 0.000 claims abstract description 31
- 230000002159 abnormal effect Effects 0.000 claims description 39
- 238000009826 distribution Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 16
- 230000008447 perception Effects 0.000 abstract description 6
- 238000007726 management method Methods 0.000 description 45
- 238000004422 calculation algorithm Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 17
- 238000012545 processing Methods 0.000 description 13
- 238000005070 sampling Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 10
- 238000007906 compression Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 10
- 230000005856 abnormality Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000002222 downregulating effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006735 deficit Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供一种资源规格调整方法、设备及存储介质。本申请实施例可对计算集群中虚拟实例的资源规格进行动态调整。一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的QoS抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
Description
技术领域
本申请涉及云计算技术领域,尤其涉及一种资源规格调整方法、设备及存储介质。
背景技术
为提高服务器的资源利用率,降低使用成本。计算集群是将多台虚拟机或物理机组成为一个有机的整体,进行统一管理,通过虚拟化技术将物理资源抽象为存储、计算、网络等各种资源组成的资源池,通过按需申请资源的方式提供给用户。
在实际应用中,容器资源管理系统提供了“资源请求”(Request)的资源语义描述,当容器指定了资源请求时,调度器会将其与节点的“资源容量”(Capacity)进行匹配,决定其应该被分配到哪个节点。
一般地,用户可以根据容器的实际需求声明资源规格,这种方式有效提升了集群资源的管理效率。然而,若声明的资源规格过高会导致大量的资源浪费,而声明的资源规格过低又会为应用带来潜在的稳定性风险。因此,需要对计算集群中容器的资源规格进行动态调整。
发明内容
本申请的多个方面提供一种资源规格调整方法、设备及存储介质,用以基于虚拟实例的服务质量对计算集群中虚拟实例的资源规格进行动态调整,有助于保证虚拟实例的服务质量。
本申请实施例提供一种资源规格调整方法,包括:
获取计算集群中虚拟实例的目标资源规格;
利用逐次逼近所述目标资源规格的方式,逐步调整所述虚拟实例的资源规格;
在逐步调整所述虚拟实例的资源规格的过程中,获取所述虚拟实例的服务质量;
在所述虚拟实例的服务质量满足设定要求或所述虚拟实例的资源规格调整至所述目标资源规格的情况下,退出所述逐步调整所述虚拟实例的资源规格的操作。
本申请实施例还提供一种计算设备,包括:存储器和处理器;其中,所述存储器,用于存储计算机程序;
所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行上述资源规格调整方法中的步骤。
本申请实施例还提供一种存储有计算机指令的计算机可读存储介质,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行上述资源规格调整方法中的步骤。
本申请实施例提出对计算集群中虚拟实例的资源规格进行动态调整的方案,一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的服务质量(Quality ofService,QoS)抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为传统方案提供的集群管理系统进行容器资源管理的过程示意图;
图2为本申请实施例提供的计算系统的结构示意图;
图3为本申请实施例提供的基于统计直方图的样本压缩算法的原理示意图;
图4为本申请实施例提供的目标资源规格确定过程及资源规格调整过程示意图;
图5为本申请实施例提供的半衰期时间窗口的示意图;
图6为本申请实施例提供的资源规格调整过程示意图;
图7为本申请实施例提供的资源规格调整方法的流程示意图;
图8为本申请实施例提供的计算设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为传统方案提供的集群管理系统进行容器资源管理的过程示意图。如图1所示,用户可提交工作负载请求,该请求包括工作负载的资源描述信息,包括但不局限于:资源请求(Request)及待部署实例的数量。集群管理系统中的调度器可根据资源描述信息和计算节点的资源容量(Capacity)进行匹配,在计算集群中确定出资源容量可满足资源请求的目标计算节点;并在目标计算节点上部署对应的实例,向用户提供服务。
在该过程中,若用户声明的资源请求过高会导致大量的资源浪费,若声明的资源请求过低又会为应用带来潜在的稳定性风险。若应用存在突发流量,实例的资源规格过低则会影响服务质量,影响计算集群的稳定性。
在本申请实施例中,为了解决上述技术问题,在本申请实施例提出对计算集群中虚拟实例的资源规格进行动态调整的方案,一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的服务质量(Quality of Service,QoS)抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
以下结合附图,详细说明本申请各实施例提供的技术方案。
应注意到:相同的标号在下面的附图以及实施例中表示同一物体,因此,一旦某一物体在一个附图或实施例中被定义,则在随后的附图和实施例中不需要对其进行进一步讨论。
图2为本申请实施例提供的一种计算系统的结构示意图。如图2所示,计算系统包括:管控节点10和计算集群20。计算集群20包括:多个计算节点(Workers)201。多个是指2个或2个以上。
管控节点10是指可以进行计算节点管理,可响应用户端30的服务请求,通过调度计算节点201为用户提供计算服务的计算机设备,一般具备承担服务并保障服务的能力。管控节点10可以为单一服务器设备,也可以云化的服务器阵列,或者为云化的服务器阵列中运行的虚拟机(Virtual Machine,VM)、容器等。另外,服务端设备也可以指具备相应服务能力的其他计算设备,例如电脑等终端设备(运行服务程序)等。在本实施例中,管控节点10可部署于云端,例如边缘云系统的中心云中。
计算节点201是指提供计算资源的计算机设备。关于计算节点201的具体实现形态,可参见管控节点10的实现形态,在此不再赘述。在本实施例中,计算节点201除了提供计算资源之外,还可提供其他硬件资源和软件资源。其中,硬件资源可包括:处理器等计算资源,内存、磁盘等存储资源及输入/输出(Input/Output,IO)资源等。其中,处理器可以为中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)和/或现场可编程门阵列(Field-Programmable Gate Array,FPGA)等等。计算节点201可部署于中心云中,也可实现为边缘云网络中的边缘节点等。
其中,管控节点10和计算节点201之间可以是无线或有线连接。可选地,服计算节点201可以通过移动网络和计算节点201通信连接,相应地,移动网络的网络制式可以为2G(如全球移动通信系统(Global System for Mobile Communications,GSM)等)、2.5G(如,通用无线分组服务(General Packet Radio Service,GPRS)等)、3G(如宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、时分同步码分多址(TimeDivision-Synchronous Code Division Multiple Access,TD-SCDMA)、码分多址2000(Code Division Multiple Access 2000,CDMA2000)、通用移动通信系统(UniversalMobile Telecommunications System,UTMS)等)、4G(如长期演进(Long Term Evolution,LTE)等)、4G+(如升级版长期演进(LTE-Advanced,LTE-A)等)、5G、全球微波接入互操作性(World Interoperability for Microwave Access,WiMax)等中的任意一种。可选地,计算节点201也可以通过蓝牙、WiFi、红外线等方式和管控节点10通信连接。
在本实施例中,在本实施例中,用户端30在请求工作负载时,可发起针对该工作负载的虚拟实例调度请求。在本实施例中,虚拟实例是指可提供计算资源的计算实体,可为虚拟机(VM)、容器组(如Pod)或容器(Container)等。容器组包括一个或多个容器(Container),多个是指2个或2个以上。多个容器共享命名空间。
相应地,虚拟实例调度请求可包括:工作负载的声明。工作负载的声明包括:待部署实例副本数(如Pod副本数)及待部署实例的资源规格(即资源请求量)等。在一些实施例中,工作负载的声明还可包括:调度亲和性规则、容忍度规则、标签(Label)以及调度优先级等。其中,虚拟实例的资源规格用于表明虚拟实例的资源请求量,可采用如下硬件资源的至少之一进行度量:处理器的物理核数量及内存的大小等。以下实施例中,均以资源规格包括物理核和内存为例进行说明。例如,虚拟实例的资源规格是2核1G内存,即虚拟实例占用2个处理器,1G的内存的硬件资源。
在本实施例中,管控节点10可获取用户的工作负载声明,对计算节点201进行资源调度,选择出满足工作负载声明需求的目标计算节点,并利用满足工作负载声明的资源,在目标计算节点上部署虚拟实例,以利用虚拟实例向用户提供相关服务。
若用户声明的资源规格过高会导致大量的资源浪费,而声明的资源规格过低又会为应用带来潜在的稳定性风险。因此,在保证虚拟实例的QoS的前提下,尽可能地降低虚拟实例的资源规格,即在保障虚拟实例的QoS的前提下,以尽可能少的资源提供服务,是本领域需要持续研究的技术问题,这就需要对计算集群中虚拟实例的资源规格进行合理性调整。其中,QoS用于描述工作负载所使用物理资源的质量。QoS等级越高,使用的物理资源的质量越高。
上述对资源规格的调整可称为纵向资源规格的自动伸缩(Vertical PodAutoscaler,VPA),即通过调整容器组(Pod)的资源规格达到优化资源配置效果的目的。这就需要准确合理地确定出计算节点的虚拟实例的目标资源规格。目标资源规格是指虚拟实例待调整至的资源规格。
为了能够确定出合理的目标资源规格,引入虚拟实例的资源画像,通过对虚拟实例的历史资源使用数据进行分析,实现虚拟实例的资源画像。资源画像,指的是确定虚拟实例的资源消耗的特征,既包括CPU、内存这类集群物理资源,也包括网络带宽、磁盘IO这类相对抽象的类型。虚拟实例的资源画像可确定虚拟实例的目标资源规格提供依据,使虚拟实例的目标资源规格的设置能够做到有的放矢。
具体地,管控节点10可获取计算集群20中虚拟实例在历史时间段的资源使用数据。历史时间段可为距离当前最近的设定时间段,如最近1周或多周、最近1个月或多个月等。当然,历史时间段也可为从计算节点的虚拟实例启动至当前时刻的历史资源使用数据。
资源画像依赖的是虚拟实例的历史资源使用数据,这些数据的采样粒度往往是分钟级甚至秒级,资源画像又需要大量的历史数据积累。如果把所有数据都保存下来,供画像算法定期迭代分析,其存储和计算的开销都很大。基于此,在本实施例中,可对采集的计算集群中虚拟实例的资源使用数据进行压缩存储。
在本申请实施例中,不限定对资源使用数据进行压缩存储的具体压缩算法。在一些实施例中,可利用基于统计直方图的样本压缩算法,对采集的虚拟实例的资源使用数据进行压缩处理,以得到压缩处理后的资源使用数据;并存储压缩处理后的资源使用数据,这样可降低资源使用数据占用的存储空间,有助于节约存储资源。
具体地,可基于各维度的资源使用量,设置多个采样点,相邻的两个采样点之间的资源量间隔可为设定的资源量间隔。例如,采样点以5%的幅度增加,即相邻两个采样点之间的资源量间隔为5%。进一步,可统计采集的虚拟实例的资源使用数据中,各采样点出现的次数,并存储采样点和相应次数,从而实现基于统计直方图的样本压缩算法,对采集的虚拟实例的资源使用数据进行压缩处理。
例如,如图3所示,直方图的横轴表示为资源量,纵轴定义为采样点的计数次数,统计间隔以5%的幅度增加。同一个工作负载的数千个虚拟实例(如容器组)的资源使用数据,可以压缩到一个直方图中,完成空间维度数据压缩,降低了保存的数据量,有助于节约存储资源。
基于上述压缩存储的资源使用数据,管控节点10在资源画像时,可获取计算集群中虚拟实例在历史时间段对应的压缩存储的资源使用数据;并对虚拟实例在历史时间段对应的压缩存储的资源使用数据进行解压缩处理,以得到计算集群中虚拟实例在历史时间段的资源使用数据。
进一步,结合图2中步骤1和2及图4中步骤1-4,管控节点10可根据计算集群中虚拟实例在历史时间段的资源使用数据,对虚拟实例进行资源画像,以得到虚拟实例的资源画像。
具体地,如图4所示,管控节点10中的QoS管理组件101可获取虚拟实例的QoS的运行指标(对应图4步骤2)。QoS的运行指标是指可衡量QoS优劣的指标,可包括:处理器(如CPU)的降频幅度(CPU throttling)、三级缓存未命中次数(L3 Cache miss)、内存延迟(Memory Latency)及每条指令执行所需的时钟周期数量(Cycle Per Instruction,CPI)等。
进一步,QoS管理组件101可根据QoS的运行指标的历史分布情况,对虚拟实例的QoS的运行指标进行异常检测。
可选地,可根据历史分布情况,判断虚拟实例的QoS的运行指标的分布情况是否与历史分布情况相符合;若相符合,则确定虚拟实例的QoS的运行指标正常。若不符合,则确定虚拟实例的QoS的运行指标异常。进一步,若虚拟实例的QoS的运行指标异常,确定虚拟实例的QoS异常。若虚拟实例的QoS的运行指标正常,确定虚拟实例的QoS正常。
进一步,可从采集的计算集群中虚拟实例在历史时间段的资源使用数据中,筛选QoS正常的资源使用数据,作为画像用的资源使用数据,即作为上述计算集群中虚拟实例在历史时间段的资源使用数据(对应图4中步骤3)。
在本申请实施例中,不限定对虚拟实例进行资源画像的具体实施方式。在一些实施例中,可按照采样峰值算法、加权平均算法或分位值算法对虚拟实例进行资源画像。
在时间维度,考虑到应用的工作负载的资源使用情况,通常存在周期性特征,资源画像需要应用的虚拟实例的历史资源使用数据,但历史数据在对虚拟实例进行资源画像时的参考价值不同。其中,距离当前时间越近的资源使用数据,越能反映虚拟实例的资源使用特征。基于此,在根据历史时间段的资源使用数据的时间信息,确定资源使用数据的置信度;其中,时间信息越早的资源使用数据对应的置信度越小。
在一些实施例中,可预先设定置信度衰减策略,在置信度衰减策略中,同一画像周期T1内的资源使用数据的置信度相同,越早的画像周期的资源使用数据的置信度越小。上述历史时间段可包括:多个画像周期,多个是指2个或2个以上。基于此,可根据计算集群中虚拟实例在历史时间段的资源使用数据的时间信息,确定多个画像周期各自对应的资源使用数据;针对任一画像周期T1,可根据该画像周期T1的资源使用数据的时间信息和预先设定的置信度衰减策略,确定该画像周期T1的资源使用数据的置信度。
在一些实施例中,置信度衰减策略可为半衰期滑动窗口算法。半衰期滑动窗口算法可表示为:
在式(1)中,其中τ为资源使用数据的时间信息,t1/2为半衰期,表示每经过t1/2时间间隔,前一个t1/2时间窗口内的资源使用数据的置信度就降低一半。例如,在图5中,横坐标表示时间,纵坐标表示资源使用数据,则前一个t1/2时间窗口内的资源使用数据的置信度,比后一个t1/2时间窗口内的资源使用数据的置信度降低一半。
在确定出计算集群中虚拟实例在历史时间段的资源使用数据的置信度之后,可根据计算集群中虚拟实例在历史时间段的资源使用数据的置信度,及计算集群中虚拟实例在历史时间段的资源使用数据,对计算集群中虚拟实例进行资源画像,以得到虚拟实例的资源画像(对应图4步骤4,利用半衰期滑动窗口算法进行资源画像)。
可选地,一个画像周期T1可包括:多个统计周期T2。相应地,可根据多个统计周期的资源使用数据,确定多个统计周期各自对应的资源用量峰值和/或资源用量均值,进而得到该画像周期T1对应的资源用量峰值序列和/或资源用量峰值序列;进一步,可根据多个画像周期的资源使用数据的置信度,及多个画像周期各自对应的资源用量峰值序列和/或资源用量均值序列,对虚拟实例进行资源画像,以得到该虚拟实例的资源画像。
例如,在一些实施例中,可根据多个画像周期的资源使用数据的置信度及多个画像周期各自对应的资源用量峰值序列,对虚拟实例进行资源画像。具体地,可利用每个画像周期的资源使用数据的置信度乘以该画像周期对应的资源用量峰值序列,得到虚拟实例在该画像周期的资源画像;并将虚拟实例在每个画像周期的资源画像,作为虚拟实例的资源画像。
在另一些实施例中,可根据多个画像周期的资源使用数据的置信度及多个画像周期各自对应的资源用量均值序列,对虚拟实例进行资源画像。具体地,可利用每个画像周期的资源使用数据的置信度乘以该画像周期对应的资源用量均值序列,得到虚拟实例在该画像周期的资源画像;并将虚拟实例在每个画像周期的资源画像,作为虚拟实例的资源画像。
在又一些实施例中,可根据多个画像周期的资源使用数据的置信度及多个画像周期各自对应的资源用量峰值序列和资源用量均值序列,对虚拟实例进行资源画像。具体地,可利用每个画像周期的资源使用数据的置信度乘以该画像周期对应的资源用量峰值序列,并利用该画像周期的资源使用数据的置信度乘以该画像周期对应的资源用量均值序列,得到虚拟实例在该画像周期的资源画像,该资源画像包括:加权后的资源用量峰值序列和加权后的资源用量均值序列。进一步,可将虚拟实例在每个画像周期的资源画像,作为虚拟实例的资源画像。
在得到虚拟实例的资源画像之后,可根据虚拟实例的资源画像,确定虚拟实例的目标资源规格(对应图4“规格推荐”)。例如,可从虚拟实例在多个画像周期的资源画像中,取资源用量峰值,作为虚拟实例的目标资源规格等。
上述实施例示出的目标资源规格确定方法的过程仅为示例性说明,但不构成限定。在本实施例中,通过虚拟实例的历史资源使用数据,对虚拟实例进行资源画像;并根据虚拟实例的资源画像,确定目标资源规格,实现了以虚拟实例的历史资源实际使用情况为依据,来确定目标资源规格,使得目标资源规格有据可依,可提高确定出的目标资源规格的准确性和合理性。
在确定出目标资源规格之后,管控节点10可将目标资源规格托管到平台即服务(Platform as a Service,PaaS)平台(对应图4步骤5)。相应地,管控节点10在调整计算集群中虚拟实例的资源规格时,可从该PaaS平台获取虚拟实例的目标资源规格(对应图4步骤6和图6步骤1)。当然,管控节点10在调整计算集群中虚拟实例的资源规格时,也可使用上述实施例提供的目标资源规格的确定方式进行实时计算,得到目标资源规格。
进一步,管控节点10可基于目标资源规格,调整计算集群中虚拟实例的资源规格,即基于目标资源规格,对计算集群进行资源规格的自动伸缩(VPA)。
为了降低资源规格调整过程中虚拟实例的QoS抖动,管控节点10可利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,该资源规格调整方式也可称为渐进式调整资源规格(对应图2步骤4、图4步骤7及图6步骤2-5)。这样,可防止一次性将计算集群中虚拟实例的资源规格调整至目标资源规格而导致QoS出现大范围抖动。
为进一步降低资源规格调整导致虚拟实例的QoS出现大范围抖动,在调整计算集群中虚拟实例的资源规格时,还可控制计算集群中虚拟实例的灰度比例,分批次调整计算集群中的虚拟实例的资源规格,即每批次调整设定比例的虚拟实例的资源规格。
具体地,管控节点10可确定待调整的虚拟实例的比例,并根据待调整的虚拟实例的比例,确定待调整的目标虚拟实例;利用逐次逼近目标资源规格的方式,逐步调整目标虚拟实例的资源规格。待调整的虚拟实例的比例是指待调整的虚拟实例占计算集群中总的虚拟实例的比例,该比例大于0,小于1。例如,待调整的虚拟实例的比例,可为10%,即目标虚拟实例为计算集群中总的虚拟实例的10%。
在本申请实施例中,可采用优先在目标虚拟实例所在源计算节点的本地原地调整目标虚拟实例的资源规格,可避免虚拟实例迁移对应用带来的影响。具体地,管控节点10可确定目标虚拟实例所在的源计算节点;并根据目标资源规格、源计算节点的资源容量及源计算节点的资源使用量,判断是否支持在源计算节点内调整目标虚拟实例的资源规格。例如,可根据源计算节点的资源容量与资源使用量,计算源计算节点的资源剩余量;若源计算节点的资源剩余量小于(目标资源规格-虚拟实例的原资源规格),确定不支持在源计算节点内调整目标虚拟实例的资源规格,可根据目标资源规格,从计算集群中确定目标虚拟实例待迁移至的目标计算节点。
可选地,管控节点10可从计算集群中,选择资源剩余量大于或等于目标资源规格的计算节点,作为目标计算节点。
进一步,管控节点10可将目标虚拟实例迁移至所述目标计算节点;之后,利用逐次逼近所述目标资源规格的方式,在目标计算节点上逐步调整目标虚拟实例的资源规格。
相应地,若源计算节点的资源剩余量大于或等于(目标资源规格-虚拟实例的原资源规格),确定支持在源计算节点内调整目标虚拟实例的资源规格,可利用逐次逼近目标资源规格的方式,在源计算节点上逐步调整目标虚拟实例的资源规格。
具体地,如图6所示,管控节点10中的VPA控制器可基于目标资源规格和虚拟实例的原资源规格,生成调整计划(对应图6步骤2“调整计划”)。其中,本实施例中,调整计划为渐进式调整计划,可包括:每次调整的梯度及待调整的虚拟实例的灰度比例等。进一步,VPA控制器可通过API服务组件将调整计划发送给管控节点10中的调度器。调度器可基于调整计划,执行上述判断是否支持在源计算节点内调整目标虚拟实例的资源规格的步骤。进一步,若支持在源计算节点内调整目标虚拟实例的资源规格,则调度器触发VPA控制器在源计算节点内调整目标虚拟实例的资源规格。若不支持在源计算节点内调整目标虚拟实例的资源规格,则调度器可执行确定目标计算节点的步骤,并将目标虚拟实例调度至目标计算节点;之后触发VPA控制器在目标计算节点内调整目标虚拟实例的资源规格。这部分内容对应图6步骤3“触发调整资源规格”)。
进一步,VPA控制器可利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格(图6步骤4“渐进式调整”)。此处调整的虚拟实例可为上述目标虚拟实例。目标虚拟实例在源计算节点或目标计算节点。
相应地,计算节点(源计算节点或目标计算节点)中的节点代理组件可在VPA控制器的控制下,调整虚拟实例的资源规格(图6步骤5“调整资源规格”)。
在本申请实施例中,为了防止盲目调整虚拟实例的资源规格,导致QoS抖动较大,可在逐步调整虚拟实例的资源规格的过程中,获取虚拟实例的QoS(对应图2步骤5和图6步骤6)。
具体地,管控节点10可在每次调整虚拟实例的资源规格之后,获取虚拟实例在当前次调整资源规格之后的QoS的运行指标(图6步骤6)。计算节点201中的QoS代理组件可采集虚拟实例在当前次调整资源规格之后的QoS的运行指标,并上传至管控节点10中的QoS管理组件。其中,QoS代理组件在一定程度上可保障虚拟实例的QoS。当虚拟实例出现QoS异常(比如CPU throttling)时,QoS代理组件可根据虚拟实例所在计算节点的资源空闲情况,自动调整虚拟实例的资源配置,允许使用短时间的资源峰值满足突发的资源需求,避免虚拟实例的服务受损,即图6中“QoS感知自动突发”。短时间是指小于或等于设定的时长阈值,该时长阈值可为秒量级,如1秒、2秒或30秒等,但不限于此。
基于上述虚拟实例在当前次调整资源规格之后的QoS的运行指标,管控节点10可根据虚拟实例在当前次调整资源规格之后的QoS的运行指标,确定虚拟实例在当前次调整资源规格之后的QoS。
在一些实施例中,管控节点10可获取在虚拟实例的QoS正常时的运行指标的历史分布情况;并根据该历史分布情况,对虚拟实例在当前次调整资源规格之后的QoS的运行指标进行异常检测。
可选地,可根据历史分布情况,判断虚拟实例在当前次调整资源规格之后的QoS的运行指标的分布情况是否与历史分布情况相符合;若相符合,则确定虚拟实例在当前次调整资源规格之后的QoS的运行指标正常。若不符合,则确定虚拟实例在当前次调整资源规格之后的QoS的运行指标异常。
进一步,若虚拟实例在当前次调整资源规格之后的QoS的运行指标异常,确定虚拟实例在当前次调整资源规格之后的QoS异常。若虚拟实例在当前次调整资源规格之后的QoS的运行指标正常,确定虚拟实例在当前次调整资源规格之后的QoS正常。
管控节点10可根据虚拟实例在当前次调整资源规格之后的QoS,判断是否继续执行上述利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格的步骤。如图6所示,该过程可由管控节点10中的QoS管理组件执行。
例如,在一些实施例中,目标资源规格大于虚拟实例的原资源规格。原资源规格是指未对虚拟实例进行资源规格调整前虚拟实例的资源规格,则可利用逐次逼近目标资源规格的方式,每次将虚拟实例的资源规格调大设定的梯度(定义为第一梯度);并在每次将虚拟实例的资源规格调大第一梯度之后,判断虚拟实例在当前次调整资源规格之后的QoS是否正常;若虚拟实例在当前次调整资源规格之后的QoS异常,说明需要继续调大资源规格,则可继续执行上述利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格的步骤,即继续将虚拟实例的资源规格调大第一梯度,直至虚拟实例在当前次调整资源规格之后的QoS正常,则退出上述逐步调整虚拟实例的资源规格的操作,即停止调整虚拟实例的资源规格。退出上述逐步调整虚拟实例的资源规格的操作时,虚拟实例的资源规格即为实际使用的资源规格。
若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然异常,则可继续调大虚拟实例的资源规格直至虚拟实例的QoS正常。或者,若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然异常,则可停止调整虚拟实例的资源规格,并申请人工介入或进行横向扩容等。横向扩容是指通过增加应用的虚拟实例的数量达到优化资源配置效果。
在另一些实施例中,目标资源规格小于虚拟实例的原资源规格,则可利用逐次逼近目标资源规格的方式,每次将虚拟实例的资源规格调小设定的另一梯度(定义为第二梯度),并在每次将虚拟实例的资源规格调小第二梯度之后,确定虚拟实例在当前次调整资源规格之后的QoS是否正常;若虚拟实例在当前次调整资源规格之后的QoS正常,说明可继续缩小虚拟实例的资源规格,则继续将虚拟实例的资源规格调小第二梯度,直至虚拟实例在当前次调整资源规格之后的QoS异常。对于虚拟实例在当前次调整资源规格之后QoS异常的情况,可退出上述逐步调整虚拟实例的资源规格的操作,并将虚拟实例的资源规格调整至QoS异常时(即当前次)的前一次调整到的资源规格,之后停止调整虚拟实例的资源规格。若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然正常,则虚拟实例可维持目标资源规格运行等。
需要说明的是,上述第一梯度和第二梯度可以相同,也可不同。优选地,第一梯度大于第二梯度。这主要是因为第一梯度是上调梯度,QoS异常的虚拟实例的资源规格的上调梯度较大,可使得虚拟实例的QoS尽可能快速调整至QoS正常。第二梯度是下调梯度,虚拟实例的QoS是正常的,可保证虚拟实例的服务性能,所以可平缓将目标资源规格逼近。
基于上述分析,管控节点10可在虚拟实例的服务质量满足设定要求的情况下,退出上述逐步调整虚拟实例的资源规格的操作(对应图2步骤6和图6步骤7“中断调整计划”)。VPA控制器可响应中断调整计划,退出上述逐步调整虚拟实例的资源规格。
其中,在目标资源规格大于虚拟实例的原资源规格的实施例中,虚拟实例的服务质量满足设定要求可实现为:在当前次调整资源规格之后虚拟实例的QoS正常。在目标资源规格小于虚拟实例的原资源规格的实施例中,虚拟实例的服务质量满足设定要求可实现为:在当前次调整资源规格之后虚拟实例的QoS异常。
在本申请实施例提出对计算集群中虚拟实例的资源规格进行动态调整的方案,一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的QoS抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
在每次调整资源规格之后,获取当前次调整资源规格之后的虚拟实例的QoS,可对资源规格调整后的虚拟实例的QoS及时感知,若QoS异常可及时发现并停止继续调整虚拟实例的资源规格,可降低应用风险。
在本申请实施例中,管控节点10还可保存停止调整计算集群中虚拟实例的资源规格时,虚拟实例调整到的资源规格(定义为第一资源规格)。对于目标资源规格大于虚拟实例的原资源规格的实施例,停止调整计算集群中虚拟实例的资源规格是指退出逐步调整虚拟实例的资源规格。对于目标资源规格小于虚拟实例的原资源规格的实施例,停止调整计算集群中虚拟实例的资源规格是指在虚拟实例的服务质量满足设定要求的情况下,将虚拟实例的资源规格调整至QoS异常时(即当前次)的前一次调整到的资源规格之后,停止调整虚拟实例的资源规格。其中,第一资源规格可以为目标资源规格,也可为大于(下调资源规格时)或小于(上调资源规格时)目标资源规格。这样,后续有虚拟实例部署请求时,可根据第一资源规格,在计算集群中创建新的虚拟实例。该新的虚拟实例的资源规格为第一资源规格。
例如,管控节点10可将第一资源规格托管至管控节点10中的准入控制器。其中准入控制器是一段代码,它会在请求通过认证和鉴权之后、对象被持久化之前拦截到达API服务组件的请求。在本实施例中,准入控制器可拦截到达API服务组件的虚拟实例部署请求(即图6步骤8“拦截虚拟实例部署请求”),并基于虚拟实例部署请求,在计算集群中创建具有第一资源规格的新的虚拟实例。
在停止调整计算集群中虚拟实例的资源规格之后,计算集群中的目标虚拟实例调整至上述第一资源规格。当然,在目标虚拟实例调整至第一资源规格之后,管控节点10还可调整下一批次的目标虚拟实例,实现计算集群中虚拟实例的分批次资源规格调整。
对于上述目标资源规格大于原资源规格的实施例,若目标虚拟实例在调整至目标资源规格之后,目标虚拟实例的QoS仍然异常,则不进行下一批次的灰度调整。
对于虚拟实例调整至第一资源规格之后,QoS正常的实施例,管控节点10可获取第一资源规格的虚拟实例的QoS和资源使用数据(对应图6步骤6、步骤9和10);并从第一资源规格的虚拟实例的资源使用数据中,选择QoS正常的资源使用数据。之后,可根据QoS正常的资源使用数据,调整虚拟实例的资源画像,以得到调整后的资源画像;并根据调整后的资源画像,确定新的目标资源规格,实现目标资源规格的更新(图6步骤11“更新资源画像”)。其中,图6仅以结合半衰期滑动窗口算法,更新资源画像为例进行图示,但不构成限定。这样,可基于新的目标资源规格调整虚拟实例的资源规格。关于基于新的目标资源规格调整虚拟实例的资源规格的实施方式,可参见上述基于目标资源规格,调整虚拟实例的资源规格的相关内容,在此不再赘述。
除了上述系统实施例之外,本申请实施例还提供资源规格调整方法,下面对本申请实施例提供的资源规格调整方法进行示例性说明。
图7为本申请实施例提供的资源规格调整方法的流程示意图。如图7所示,该资源规格调整方法,主要包括:
701、获取计算集群中虚拟实例的目标资源规格。
702、利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格。
703、在逐步调整虚拟实例的资源规格的过程中,获取虚拟实例的服务质量。
704、在虚拟实例的服务质量满足设定要求的情况下,退出上述逐步调整虚拟实例的资源规格的操作。
为了能够确定出合理的目标资源规格,引入虚拟实例的资源画像,通过对虚拟实例的历史资源使用数据进行分析,实现虚拟实例的资源画像。虚拟实例的资源画像可确定虚拟实例的目标资源规格提供依据,使虚拟实例的目标资源规格的设置能够做到有的放矢。
具体地,可获取计算集群中虚拟实例在历史时间段的资源使用数据。历史时间段可为距离当前最近的设定时间段,如最近1周或多周、最近1个月或多个月等。当然,历史时间段也可为从计算节点的虚拟实例启动至当前时刻的历史资源使用数据。
资源画像依赖的是虚拟实例的历史资源使用数据,这些数据的采样粒度往往是分钟级甚至秒级,资源画像又需要大量的历史数据积累。如果把所有数据都保存下来,供画像算法定期迭代分析,其存储和计算的开销都很大。基于此,可对采集的计算集群中虚拟实例的资源使用数据进行压缩存储。
在本申请实施例中,不限定对资源使用数据进行压缩存储的具体压缩算法。在一些实施例中,可利用基于统计直方图的样本压缩算法,对采集的虚拟实例的资源使用数据进行压缩处理,以得到压缩处理后的资源使用数据;并存储压缩处理后的资源使用数据,这样可降低资源使用数据占用的存储空间,有助于节约存储资源。
具体地,可基于各维度的资源使用量,设置多个采样点,相邻的两个采样点之间的资源量间隔可为设定的资源量间隔。进一步,可统计采集的虚拟实例的资源使用数据中,各采样点出现的次数,并存储采样点和相应次数,从而实现基于统计直方图的样本压缩算法,对采集的虚拟实例的资源使用数据进行压缩处理。
基于上述压缩存储的资源使用数据,在资源画像时,可获取计算集群中虚拟实例在历史时间段对应的压缩存储的资源使用数据;并对虚拟实例在历史时间段对应的压缩存储的资源使用数据进行解压缩处理,以得到计算集群中虚拟实例在历史时间段的资源使用数据。
进一步,可根据计算集群中虚拟实例在历史时间段的资源使用数据,对虚拟实例进行资源画像,以得到虚拟实例的资源画像。
具体地,可获取虚拟实例的QoS的运行指标,并根据QoS的运行指标的历史分布情况,对虚拟实例的QoS的运行指标进行异常检测。
可选地,可根据历史分布情况,判断虚拟实例的QoS的运行指标的分布情况是否与历史分布情况相符合;若相符合,则确定虚拟实例的QoS的运行指标正常。若不符合,则确定虚拟实例的QoS的运行指标异常。进一步,若虚拟实例的QoS的运行指标异常,确定虚拟实例的QoS异常。若虚拟实例的QoS的运行指标正常,确定虚拟实例的QoS正常。
进一步,可从采集的计算集群中虚拟实例在历史时间段的资源使用数据中,筛选QoS正常的资源使用数据,作为画像用的资源使用数据,即作为上述计算集群中虚拟实例在历史时间段的资源使用数据。
在本申请实施例中,不限定对虚拟实例进行资源画像的具体实施方式。在一些实施例中,可按照采样峰值算法、加权平均算法或分位值算法对虚拟实例进行资源画像。
在时间维度,考虑到应用的工作负载的资源使用情况,通常存在周期性特征,资源画像需要应用的虚拟实例的历史资源使用数据,但历史数据在对虚拟实例进行资源画像时的参考价值不同。其中,距离当前时间越近的资源使用数据,越能反映虚拟实例的资源使用特征。基于此,在根据历史时间段的资源使用数据的时间信息,确定资源使用数据的置信度;其中,时间信息越早的资源使用数据对应的置信度越小。
在一些实施例中,可预先设定置信度衰减策略,在置信度衰减策略中,同一画像周期T1内的资源使用数据的置信度相同,越早的画像周期的资源使用数据的置信度越小。上述历史时间段可包括:多个画像周期,多个是指2个或2个以上。基于此,可根据计算集群中虚拟实例在历史时间段的资源使用数据的时间信息,确定多个画像周期各自对应的资源使用数据;针对任一画像周期T1,可根据该画像周期T1的资源使用数据的时间信息和预先设定的置信度衰减策略,确定该画像周期T1的资源使用数据的置信度。
在确定出计算集群中虚拟实例在历史时间段的资源使用数据的置信度之后,可根据计算集群中虚拟实例在历史时间段的资源使用数据的置信度,及计算集群中虚拟实例在历史时间段的资源使用数据,对计算集群中虚拟实例进行资源画像,以得到虚拟实例的资源画像。
可选地,一个画像周期T1可包括:多个统计周期T2。相应地,可根据多个统计周期的资源使用数据,确定多个统计周期各自对应的资源用量峰值和/或资源用量均值,进而得到该画像周期T1对应的资源用量峰值序列和/或资源用量峰值序列;进一步,可根据多个画像周期的资源使用数据的置信度,及多个画像周期各自对应的资源用量峰值序列和/或资源用量均值序列,对虚拟实例进行资源画像,以得到该虚拟实例的资源画像。
在得到虚拟实例的资源画像之后,可根据虚拟实例的资源画像,确定虚拟实例的目标资源规格。例如,可从虚拟实例在多个画像周期的资源画像中,取资源用量峰值,作为虚拟实例的目标资源规格等。
上述实施例示出的目标资源规格确定方法的过程仅为示例性说明,但不构成限定。在本实施例中,通过虚拟实例的历史资源使用数据,对虚拟实例进行资源画像;并根据虚拟实例的资源画像,确定目标资源规格,实现了以虚拟实例的历史资源实际使用情况为依据,来确定目标资源规格,使得目标资源规格有据可依,可提高确定出的目标资源规格的准确性和合理性。
在确定出目标资源规格之后,在进行资源规格调整时,在步骤701中,可获取虚拟实例的目标资源规格。在一些实施例中,可将目标资源规格托管到PaaS平台。相应地,在调整计算集群中虚拟实例的资源规格时,可从该PaaS平台获取虚拟实例的目标资源规格。当然,在调整计算集群中虚拟实例的资源规格时,也可使用上述实施例提供的目标资源规格的确定方式进行实时计算,得到目标资源规格。
进一步,可基于目标资源规格,调整计算集群中虚拟实例的资源规格,即基于目标资源规格,对计算集群进行资源规格的自动伸缩(VPA)。
为了降低资源规格调整过程中虚拟实例的QoS抖动,在步骤702中,可利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,该资源规格调整方式也可称为渐进式调整资源规格(。这样,可防止一次性将计算集群中虚拟实例的资源规格调整至目标资源规格而导致QoS出现大范围抖动。
为进一步降低资源规格调整导致虚拟实例的QoS出现大范围抖动,在调整计算集群中虚拟实例的资源规格时,还可控制计算集群中虚拟实例的灰度比例,分批次调整计算集群中的虚拟实例的资源规格,即每批次调整设定比例的虚拟实例的资源规格。
具体地,可确定待调整的虚拟实例的比例,并根据待调整的虚拟实例的比例,确定待调整的目标虚拟实例;利用逐次逼近目标资源规格的方式,逐步调整目标虚拟实例的资源规格。待调整的虚拟实例的比例是指待调整的虚拟实例占计算集群中总的虚拟实例的比例,该比例大于0,小于1。
在本申请实施例中,可采用优先在目标虚拟实例所在源计算节点的本地原地调整目标虚拟实例的资源规格,可避免虚拟实例迁移对应用带来的影响。具体地,可确定目标虚拟实例所在的源计算节点;并根据目标资源规格、源计算节点的资源容量及源计算节点的资源使用量,判断是否支持在源计算节点内调整目标虚拟实例的资源规格。例如,可根据源计算节点的资源容量与资源使用量,计算源计算节点的资源剩余量;若源计算节点的资源剩余量小于(目标资源规格-虚拟实例的原资源规格),确定不支持在源计算节点内调整目标虚拟实例的资源规格,可根据目标资源规格,从计算集群中确定目标虚拟实例待迁移至的目标计算节点。
可选地,可从计算集群中,选择资源剩余量大于或等于目标资源规格的计算节点,作为目标计算节点。
进一步,可将目标虚拟实例迁移至所述目标计算节点;之后,利用逐次逼近所述目标资源规格的方式,在目标计算节点上逐步调整目标虚拟实例的资源规格。
相应地,若源计算节点的资源剩余量大于或等于(目标资源规格-虚拟实例的原资源规格),确定支持在源计算节点内调整目标虚拟实例的资源规格,可利用逐次逼近目标资源规格的方式,在源计算节点上逐步调整目标虚拟实例的资源规格。
在本申请实施例中,为了防止盲目调整虚拟实例的资源规格,导致QoS抖动较大,在步骤703中,可在逐步调整虚拟实例的资源规格的过程中,获取虚拟实例的QoS。
具体地,可在每次调整虚拟实例的资源规格之后,获取虚拟实例在当前次调整资源规格之后的QoS的运行指标。基于上述虚拟实例在当前次调整资源规格之后的QoS的运行指标,可根据虚拟实例在当前次调整资源规格之后的QoS的运行指标,确定虚拟实例在当前次调整资源规格之后的QoS。
在一些实施例中,可获取在虚拟实例的QoS正常时的运行指标的历史分布情况;并根据该历史分布情况,对虚拟实例在当前次调整资源规格之后的QoS的运行指标进行异常检测。
可选地,可根据历史分布情况,判断虚拟实例在当前次调整资源规格之后的QoS的运行指标的分布情况是否与历史分布情况相符合;若相符合,则确定虚拟实例在当前次调整资源规格之后的QoS的运行指标正常。若不符合,则确定虚拟实例在当前次调整资源规格之后的QoS的运行指标异常。
进一步,若虚拟实例在当前次调整资源规格之后的QoS的运行指标异常,确定虚拟实例在当前次调整资源规格之后的QoS异常。若虚拟实例在当前次调整资源规格之后的QoS的运行指标正常,确定虚拟实例在当前次调整资源规格之后的QoS正常。
可根据虚拟实例在当前次调整资源规格之后的QoS,判断是否继续执行上述利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格的步骤。
例如,在一些实施例中,目标资源规格大于虚拟实例的原资源规格。原资源规格是指未对虚拟实例进行资源规格调整前虚拟实例的资源规格,则可利用逐次逼近目标资源规格的方式,每次将虚拟实例的资源规格调大设定的梯度(定义为第一梯度);并在每次将虚拟实例的资源规格调大第一梯度之后,确定虚拟实例在当前次调整资源规格之后的QoS是否正常;若虚拟实例在当前次调整资源规格之后的QoS异常,说明需要继续调大资源规格,则可继续执行上述利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格的步骤,即继续将虚拟实例的资源规格调大第一梯度,直至虚拟实例在当前次调整资源规格之后的QoS正常,则退出上述逐步调整虚拟实例的资源规格的操作,即停止调整虚拟实例的资源规格。退出上述逐步调整虚拟实例的资源规格的操作时,虚拟实例的资源规格即为实际使用的资源规格。
若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然异常,则可继续调大虚拟实例的资源规格直至虚拟实例的QoS正常。或者,若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然异常,则可停止调整虚拟实例的资源规格,并申请人工介入或进行横向扩容等。横向扩容是指通过增加应用的虚拟实例的数量达到优化资源配置效果。
在另一些实施例中,目标资源规格小于虚拟实例的原资源规格,则可利用逐次逼近目标资源规格的方式,每次将虚拟实例的资源规格调小设定的另一梯度(定义为第二梯度),并在每次将虚拟实例的资源规格调小第二梯度之后,确定虚拟实例在当前次调整资源规格之后的QoS是否正常;若虚拟实例在当前次调整资源规格之后的QoS正常,说明可继续缩小虚拟实例的资源规格,则继续将虚拟实例的资源规格调小第二梯度,直至虚拟实例在当前次调整资源规格之后的QoS异常。对于虚拟实例在当前次调整资源规格之后QoS异常的情况,退出上述逐步调整虚拟实例的资源规格的操作,并将虚拟实例的资源规格调整至QoS异常时(即当前次)的前一次调整到的资源规格,并停止调整虚拟实例的资源规格。若在虚拟实例的资源规格调整至目标资源规格时,虚拟实例的QoS仍然正常,则虚拟实例可维持目标资源规格运行等。
需要说明的是,上述第一梯度和第二梯度可以相同,也可不同。优选地,第一梯度大于第二梯度。这主要是因为第一梯度是上调梯度,QoS异常的虚拟实例的资源规格的上调梯度较大,可使得虚拟实例的QoS尽可能快速调整至QoS正常。第二梯度是下调梯度,虚拟实例的QoS是正常的,可保证虚拟实例的服务性能,所以可平缓将目标资源规格逼近。
基于上述分析,在步骤704中,可在虚拟实例的服务质量满足设定要求的情况下,退出上述逐步调整虚拟实例的资源规格的操作。其中,在目标资源规格大于虚拟实例的原资源规格的实施例中,虚拟实例的服务质量满足设定要求可实现为:在当前次调整资源规格之后虚拟实例的QoS正常。在目标资源规格小于虚拟实例的原资源规格的实施例中,虚拟实例的服务质量满足设定要求可实现为:在当前次调整资源规格之后虚拟实例的QoS异常。
在本申请实施例提出对计算集群中虚拟实例的资源规格进行动态调整的方案,一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的QoS抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
在每次调整资源规格之后,获取当前次调整资源规格之后的虚拟实例的QoS,可对资源规格调整后的虚拟实例的QoS及时感知,若QoS异常可及时发现并停止继续调整虚拟实例的资源规格,可降低应用风险。
在本申请实施例中,还可保存停止调整计算集群中虚拟实例的资源规格时,虚拟实例调整到的资源规格(定义为第一资源规格)。其中,第一资源规格可以为目标资源规格,也可为大于(下调资源规格时)或小于(上调资源规格时)目标资源规格。这样,后续有虚拟实例部署请求时,可根据第一资源规格,在计算集群中创建新的虚拟实例。该新的虚拟实例的资源规格为第一资源规格。
在停止调整计算集群中虚拟实例的资源规格之后,计算集群中的目标虚拟实例调整至上述第一资源规格。当然,在目标虚拟实例调整至第一资源规格之后,还可调整下一批次的目标虚拟实例,实现计算集群中虚拟实例的分批次资源规格调整。
对于上述目标资源规格大于原资源规格的实施例,若目标虚拟实例在调整至目标资源规格之后,目标虚拟实例的QoS仍然异常,则不进行下一批次的灰度调整。
对于虚拟实例调整至第一资源规格之后,QoS正常的实施例,可获取第一资源规格的虚拟实例的QoS和资源使用数据;并从第一资源规格的虚拟实例的资源使用数据中,选择QoS正常的资源使用数据。之后,可根据QoS正常的资源使用数据,调整虚拟实例的资源画像,以得到调整后的资源画像;并根据调整后的资源画像,确定新的目标资源规格,实现目标资源规格的更新。这样,可基于新的目标资源规格调整虚拟实例的资源规格。关于基于新的目标资源规格调整虚拟实例的资源规格的实施方式,可参见上述基于目标资源规格,调整虚拟实例的资源规格的相关内容,在此不再赘述。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤701和702的执行主体可以为设备A;又比如,步骤701的执行主体可以为设备A,步骤702的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如702、703等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
相应地,本申请实施例还提供一种存储有计算机指令的计算机可读存储介质,当计算机指令被一个或多个处理器执行时,致使一个或多个处理器执行上述资源规格调整方法中的步骤。
图8为本申请实施例提供的计算设备的结构示意图。如图8所示,该计算设备主要包括:存储器80a和处理器80b。存储器80a,用于存储计算机程序。
处理器80b耦合至存储器80a,用于执行计算机程序以用于:获取计算集群中虚拟实例的目标资源规格;利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格;在逐步调整虚拟实例的资源规格的过程中,获取虚拟实例的服务质量;以及,在虚拟实例的服务质量满足设定要求的情况下,退出上述逐步调整虚拟实例的资源规格的操作。
在一些实施例中,处理器80b在逐步调整虚拟实例的资源规格的过程中,获取计算集群的服务质量时,具体用于:在每次调整虚拟实例的资源规格之后,获取虚拟实例在当前次调整资源规格之后的服务质量的运行指标;根据虚拟实例在当前次调整资源规格之后的服务质量的运行指标,确定虚拟实例在当前次调整资源规格之后的服务质量。
可选地,处理器80b在根据虚拟实例在当前次调整资源规格之后的服务质量的运行指标,确定虚拟实例在当前次调整资源规格之后的服务质量时,具体用于:获取在虚拟实例的服务质量正常时的运行指标的历史分布情况;根据历史分布情况,对虚拟实例在当前次调整资源规格之后的服务质量的运行指标进行异常检测;若虚拟实例在当前次调整资源规格之后的服务质量的运行指标异常,确定虚拟实例在当前次调整资源规格之后的服务质量异常。
在一些实施例中,目标资源规格小于虚拟实例的原资源规格。相应地,处理器80b在虚拟实例的服务质量满足设定要求的情况下,退出逐步调整虚拟实例的资源规格的操作时,具体用于:若虚拟实例在当前次调整资源规格之后的服务质量异常,确定虚拟实例的服务质量满足设定要求,并退出逐步调整虚拟实例的资源规格的操作;以及在虚拟实例的服务质量满足设定要求的情况下,将虚拟实例的资源规格调整至当前次的前一次调整到的资源规格。
在另一些实施例中,目标资源规格大于虚拟实例的原资源规格。相应地,处理器80b在虚拟实例的服务质量满足设定要求或虚拟实例的资源规格调整至目标资源规格的情况下,停止调整虚拟实例的资源规格时,具体用于:若虚拟实例在当前次调整资源规格之后的服务质量正常,确定虚拟实例的服务质量满足设定要求,并退出逐步调整虚拟实例的资源规格的操作。
相应地,处理器80b还用于:若虚拟实例在当前次调整资源规格之后的服务质量异常,继续执行利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格的步骤,直至虚拟实例的服务质量正常。
在一些实施例中,处理器80b还用于:保存停止调整虚拟实例的资源规格时虚拟实例调整至的第一资源规格,以根据第一资源规格在计算集群中创建新的虚拟实例。
在本申请一些实施例中,处理器80b在获取计算集群的虚拟实例的目标资源规格时,具体用于:获取计算集群的虚拟实例在历史时间段的资源使用数据;根据资源使用数据,确定虚拟实例的目标资源规格。
可选地,处理器80b在根据资源使用数据,确定虚拟实例的目标资源规格时,具体用于:根据资源使用数据,对虚拟实例进行资源画像,以得到虚拟实例的资源画像;根据资源画像,确定虚拟实例的目标资源规格。
进一步,处理器80b在根据资源使用数据,对虚拟实例进行资源画像时,具体用于:根据资源使用数据的时间信息,确定资源使用数据的置信度;其中,时间信息越早的资源使用数据对应的置信度越小;根据资源使用数据及资源使用数据的置信度,对虚拟实例进行资源画像,以得到资源画像。
可选地,历史时间段包括:多个画像周期。处理器80b在根据资源使用数据的时间信息,确定资源使用数据的置信度时,具体用于:根据资源使用数据的时间信息,确定多个画像周期各自对应的资源使用数据;针对任一画像周期,根据任一画像周期的资源使用数据的时间信息和预先设定的置信度衰减策略,确定任一画像周期的资源使用数据的置信度;其中,越早的画像周期的资源使用数据的置信度越小。
进一步,任一画像周期包括:多个统计周期。处理器80b在根据资源使用数据及资源使用数据的置信度,对虚拟实例进行资源画像时,具体用于:根据多个统计周期的资源使用数据,确定多个统计周期各自对应的资源用量峰值和/或资源用量均值,以得到任一画像周期对应的资源用量峰值序列和资源用量均值序列;以及,根据多个画像周期的资源使用数据的置信度,及多个画像周期各自对应的资源用量峰值序列和/或资源用量均值序列,对虚拟实例进行资源画像,以得到资源画像。
在本实施例中,处理器80b还用于:对采集的虚拟实例的资源使用数据进行压缩存储。相应地,处理器80b在获取计算集群的虚拟实例在历史时间段的资源使用数据时,具体用于:获取虚拟实例在历史时间段对应的压缩存储的资源使用数据;对虚拟实例在历史时间段对应的压缩存储的数据进行解压缩处理,以得到资源使用数据。
可选地,处理器80b在对采集的虚拟实例的资源使用数据进行压缩存储时,具体用于:利用基于统计直方图的样本压缩算法,对采集的虚拟实例的资源使用数据进行压缩处理,以得到压缩处理后的资源使用数据;存储压缩处理后的资源使用数据。
在另一些实施例中,处理器80b在利用逐次逼近目标资源规格的方式,逐步调整虚拟实例的资源规格时,具体用于:确定待调整的虚拟实例的比例;根据待调整的虚拟实例的比例,确定待调整的目标虚拟实例;并利用逐次逼近目标资源规格的方式,逐步调整目标虚拟实例的资源规格。
可选地,处理器80b还用于:在利用逐次逼近目标资源规格的方式,逐步调整目标虚拟实例的资源规格之前,确定目标虚拟实例所在的源计算节点;根据目标资源规格、源计算节点的资源容量和源计算节点的资源使用量,判断是否支持在源计算节点内调整目标虚拟实例的资源规格;若判断结果为是,则利用逐次逼近目标资源规格的方式,在源计算节点上逐步调整目标虚拟实例的资源规格。若判断结果为否,根据目标资源规格,从计算集群中确定目标虚拟实例待迁移至的目标计算节点;将目标虚拟实例迁移至目标计算节点;以及,利用逐次逼近目标资源规格的方式,在目标计算节点上逐步调整目标虚拟实例的资源规格。
可选地,处理器80b还用于:获取第一资源规格的虚拟实例的服务质量和资源使用数据;第一资源规格为停止调整虚拟实例的资源规格时虚拟实例调整至的资源规格;从第一资源规格的虚拟实例的资源使用数据中,选择服务质量正常的资源使用数据;根据服务质量正常的资源使用数据,调整虚拟实例的资源画像,以得到调整后的资源画像;根据调整后的资源画像,确定新的目标资源规格,以基于新的目标资源规格调整虚拟实例的资源规格。
在一些可选实施方式中,如图8所示,该计算设备还可以包括:通信组件80c及电源组件80d等组件。在一些实施例中,计算设备还可实现为电脑等终端设备。相应地,计算设备还可包括:显示组件80e及音频组件80f等组件。图8中仅示意性给出部分组件,并不意味着计算设备必须包含图8所示全部组件,也不意味着计算设备只能包括图8所示组件。
本实施例提供的计算设备,可对计算集群中虚拟实例的资源规格进行动态调整。一方面,利用逐次逼近目标资源规格的方式,逐步调整计算集群中虚拟实例的资源规格,相较于将虚拟实例的资源规格一次性调整至目标资源规格,可降低调整过程中虚拟实例的QoS抖动。另一方面,在逐步调整虚拟实例的资源规格的过程中,引入了对虚拟实例的QoS感知技术,基于虚拟实例的QoS,调整虚拟实例的资源规格,可在实现对虚拟实例实现资源规格调整的同时,保证资源规格调整后的虚拟实例的QoS。
在本申请实施例中,存储器用于存储计算机程序,并可被配置为存储其它各种数据以支持在其所在设备上的操作。其中,处理器可执行存储器中存储的计算机程序,以实现相应控制逻辑。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM),可擦除可编程只读存储器(Electrical Programmable Read Only Memory,EPROM),可编程只读存储器(Programmable Read Only Memory,PROM),只读存储器(Read Only Memory,ROM),磁存储器,快闪存储器,磁盘或光盘。
在本申请实施例中,处理器可以为任意可执行上述方法逻辑的硬件处理设备。可选地,处理器可以为中央处理器(Central Processing Unit,CPU)、图形处理器(GraphicsProcessing Unit,GPU)或微控制单元(Microcontroller Unit,MCU);也可以为现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程阵列逻辑器件(ProgrammableArray Logic,PAL)、通用阵列逻辑器件(General Array Logic,GAL)、复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)等可编程器件;或者为专用集成电路(Application Specific Integrated Circuit,ASIC)芯片;或者为先进精简指令集(Reduced Instruction Set Compute,RISC)处理器(Advanced RISC Machines,ARM)或系统芯片(System on Chip,SoC)等等,但不限于此。
在本申请实施例中,通信组件被配置为便于其所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如无线保真(Wireless Fidelity,WiFi),2G或3G,4G,5G或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还可基于近场通信(Near Field Communication,NFC)技术、射频识别(Radio Frequency Identification,RFID)技术、红外数据协会(Infrared DataAssociation,IrDA)技术、超宽带(Ultra Wide Band,UWB)技术、蓝牙(Bluetooth,BT)技术或其他技术来实现。
在本申请实施例中,显示组件可以包括液晶显示器(Liquid Crystal Display,LCD)和触摸面板(Touch Panel,TP)。如果显示组件包括触摸面板,显示组件可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
在本申请实施例中,电源组件被配置为其所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
在本申请实施例中,音频组件可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(Microphone,MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。例如,对于具有语言交互功能的设备,可通过音频组件实现与用户的语音交互等。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
还需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(或系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(如CPU等)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(Random-Access Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(Flash RAM)。内存是计算机可读介质的示例。
计算机的存储介质为可读存储介质,也可称为可读介质。可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(Phase-Change Memory,PRAM)、静态随机存取存储器(Static Random-Access Memory,SRAM)、动态随机存取存储器(Dynamic Random Access Memory,DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read Only Memory,EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(Digital Video Disc,DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(Transitory Media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上内容仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (14)
1.一种资源规格调整方法,其特征在于,包括:
获取计算集群中虚拟实例的目标资源规格;
利用逐次逼近所述目标资源规格的方式,逐步调整所述虚拟实例的资源规格;
在逐步调整所述虚拟实例的资源规格的过程中,获取所述虚拟实例的服务质量;
在所述虚拟实例的服务质量满足设定要求的情况下,退出所述逐步调整所述虚拟实例的资源规格的操作。
2.根据权利要求1所述的方法,其特征在于,所述在逐步调整所述虚拟实例的资源规格的过程中,获取所述计算集群的服务质量,包括:
在每次调整所述虚拟实例的资源规格之后,获取所述虚拟实例在当前次调整资源规格之后的服务质量的运行指标;
根据所述虚拟实例在当前次调整资源规格之后的服务质量的运行指标,确定所述虚拟实例在当前次调整资源规格之后的服务质量。
3.根据权利要求2所述的方法,其特征在于,所述根据所述虚拟实例在当前次调整资源规格之后的服务质量的运行指标,确定所述虚拟实例在当前次调整资源规格之后的服务质量,包括:
获取在所述虚拟实例的服务质量正常时的运行指标的历史分布情况;
根据所述历史分布情况,对所述虚拟实例在当前次调整资源规格之后的服务质量的运行指标进行异常检测;
若所述虚拟实例在当前次调整资源规格之后的服务质量的运行指标异常,确定所述虚拟实例在当前次调整资源规格之后的服务质量异常。
4.根据权利要求2所述的方法,其特征在于,所述目标资源规格小于所述虚拟实例的原资源规格;所述在所述虚拟实例的服务质量满足设定要求的情况下,退出所述逐步调整所述虚拟实例的资源规格的操作,包括:
若所述虚拟实例在当前次调整资源规格之后的服务质量异常,确定所述虚拟实例的服务质量满足设定要求,并退出所述逐步调整所述虚拟实例的资源规格的操作;
所述方法还包括:
在所述虚拟实例的服务质量满足设定要求的情况下,将所述虚拟实例的资源规格调整至所述当前次的前一次调整到的资源规格。
5.根据权利要求2所述的方法,其特征在于,所述目标资源规格大于所述虚拟实例的原资源规格;所述在所述虚拟实例的服务质量满足设定要求的情况下,退出所述逐步调整所述虚拟实例的资源规格的操作,包括:
若所述虚拟实例在当前次调整资源规格之后的服务质量正常,确定所述虚拟实例的服务质量满足设定要求,并退出所述逐步调整所述虚拟实例的资源规格的操作。
6.根据权利要求5所述的方法,其特征在于,还包括:
若所述虚拟实例在当前次调整资源规格之后的服务质量异常,继续执行所述利用逐次逼近所述目标资源规格的方式,逐步调整所述虚拟实例的资源规格的步骤,直至所述虚拟实例的服务质量正常。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述获取计算集群的虚拟实例的目标资源规格,包括:
获取计算集群的虚拟实例在历史时间段的资源使用数据;
根据所述资源使用数据,对所述虚拟实例进行资源画像,以得到所述虚拟实例的资源画像;
根据所述资源画像,确定所述虚拟实例的目标资源规格。
8.根据权利要求7所述的方法,其特征在于,所述根据所述资源使用数据,对所述虚拟实例进行资源画像,包括:
根据所述资源使用数据的时间信息,确定所述资源使用数据的置信度;其中,时间信息越早的资源使用数据对应的置信度越小;
根据所述资源使用数据及所述资源使用数据的置信度,对所述虚拟实例进行资源画像,以得到所述资源画像。
9.根据权利要求8所述的方法,其特征在于,所述历史时间段包括:多个画像周期;所述根据所述资源使用数据的时间信息,确定所述资源使用数据的置信度,包括:
根据所述资源使用数据的时间信息,确定所述多个画像周期各自对应的资源使用数据;
针对任一画像周期,根据所述任一画像周期的资源使用数据的时间信息和预先设定的置信度衰减策略,确定所述任一画像周期的资源使用数据的置信度;其中,越早的画像周期的资源使用数据的置信度越小。
10.根据权利要求1-6任一项所述的方法,其特征在于,所述利用逐次逼近所述目标资源规格的方式,逐步调整所述虚拟实例的资源规格,包括:
确定待调整的虚拟实例的比例;
根据所述待调整的虚拟实例的比例,确定待调整的目标虚拟实例;
利用逐次逼近所述目标资源规格的方式,逐步调整所述目标虚拟实例的资源规格。
11.根据权利要求10所述的方法,其特征在于,在利用逐次逼近所述目标资源规格的方式,逐步调整所述目标虚拟实例的资源规格之前,还包括:
确定所述目标虚拟实例所在的源计算节点;
根据所述目标资源规格、所述源计算节点的资源容量和所述源计算节点的资源使用量,判断是否支持在所述源计算节点内调整所述目标虚拟实例的资源规格;若判断结果为是,则利用逐次逼近所述目标资源规格的方式,在源计算节点上逐步调整所述目标虚拟实例的资源规格;
若判断结果为否,根据所述目标资源规格,从所述计算集群中确定所述目标虚拟实例待迁移至的目标计算节点;将所述目标虚拟实例迁移至所述目标计算节点;利用逐次逼近所述目标资源规格的方式,在所述目标计算节点上逐步调整所述目标虚拟实例的资源规格。
12.根据权利要求7所述的方法,其特征在于,还包括:
获取第一资源规格的虚拟实例的服务质量和资源使用数据;所述第一资源规格为停止调整所述虚拟实例的资源规格时所述虚拟实例调整至的资源规格;
从所述第一资源规格的虚拟实例的资源使用数据中,选择服务质量正常的资源使用数据;
根据所述服务质量正常的资源使用数据,调整所述虚拟实例的资源画像,以得到调整后的资源画像;
根据所述调整后的资源画像,确定新的目标资源规格,以基于所述新的目标资源规格调整所述虚拟实例的资源规格。
13.一种计算设备,其特征在于,包括:存储器和处理器;其中,所述存储器,用于存储计算机程序;
所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求1-12任一项所述方法中的步骤。
14.一种存储有计算机指令的计算机可读存储介质,其特征在于,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行权利要求1-12任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310356850.4A CN116431341A (zh) | 2023-03-30 | 2023-03-30 | 资源规格调整方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310356850.4A CN116431341A (zh) | 2023-03-30 | 2023-03-30 | 资源规格调整方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116431341A true CN116431341A (zh) | 2023-07-14 |
Family
ID=87093884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310356850.4A Pending CN116431341A (zh) | 2023-03-30 | 2023-03-30 | 资源规格调整方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116431341A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885812A (zh) * | 2012-12-21 | 2014-06-25 | 华为技术有限公司 | 虚拟机规格调整方法及装置 |
CN104038392A (zh) * | 2014-07-04 | 2014-09-10 | 云南电网公司 | 一种云计算资源服务质量评估方法 |
CN109710484A (zh) * | 2017-10-25 | 2019-05-03 | 中国电信股份有限公司 | 设备能耗的调整方法、装置以及计算机可读存储介质 |
CN111399970A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种预留资源管理方法、装置和存储介质 |
CN113886010A (zh) * | 2021-09-27 | 2022-01-04 | 阿里巴巴(中国)有限公司 | 容器资源的控制方法、设备及计算机存储介质 |
CN114637586A (zh) * | 2022-03-17 | 2022-06-17 | 浪潮云信息技术股份公司 | 一种数据驱动的在线预测和实现k8s资源超售的方法 |
CN115098326A (zh) * | 2022-06-24 | 2022-09-23 | 中国建设银行股份有限公司 | 一种系统异常检测方法及装置、存储介质及电子设备 |
CN115391028A (zh) * | 2022-07-28 | 2022-11-25 | 阿里云计算有限公司 | 资源分配系统、方法及装置 |
CN115408182A (zh) * | 2021-05-27 | 2022-11-29 | 中移动信息技术有限公司 | 业务系统故障定位方法及装置 |
CN115712487A (zh) * | 2022-11-28 | 2023-02-24 | 中国电信股份有限公司 | 资源的调度方法及装置 |
-
2023
- 2023-03-30 CN CN202310356850.4A patent/CN116431341A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103885812A (zh) * | 2012-12-21 | 2014-06-25 | 华为技术有限公司 | 虚拟机规格调整方法及装置 |
CN104038392A (zh) * | 2014-07-04 | 2014-09-10 | 云南电网公司 | 一种云计算资源服务质量评估方法 |
CN109710484A (zh) * | 2017-10-25 | 2019-05-03 | 中国电信股份有限公司 | 设备能耗的调整方法、装置以及计算机可读存储介质 |
CN111399970A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种预留资源管理方法、装置和存储介质 |
CN115408182A (zh) * | 2021-05-27 | 2022-11-29 | 中移动信息技术有限公司 | 业务系统故障定位方法及装置 |
CN113886010A (zh) * | 2021-09-27 | 2022-01-04 | 阿里巴巴(中国)有限公司 | 容器资源的控制方法、设备及计算机存储介质 |
CN114637586A (zh) * | 2022-03-17 | 2022-06-17 | 浪潮云信息技术股份公司 | 一种数据驱动的在线预测和实现k8s资源超售的方法 |
CN115098326A (zh) * | 2022-06-24 | 2022-09-23 | 中国建设银行股份有限公司 | 一种系统异常检测方法及装置、存储介质及电子设备 |
CN115391028A (zh) * | 2022-07-28 | 2022-11-25 | 阿里云计算有限公司 | 资源分配系统、方法及装置 |
CN115712487A (zh) * | 2022-11-28 | 2023-02-24 | 中国电信股份有限公司 | 资源的调度方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110308782B (zh) | 功耗预测、控制方法、设备及计算机可读存储介质 | |
WO2019114833A1 (en) | Method, device, terminal and storage medium for processing application | |
CN112286644B (zh) | Gpu虚拟化算力的弹性调度方法、系统、设备和存储介质 | |
CN104424031B (zh) | 一种处理器工作频率的控制方法及装置 | |
US20170371773A1 (en) | Optimizing Execution Order of System Interval Dependent Test Cases | |
CN112954707A (zh) | 基站的节能方法、装置、基站和计算机可读存储介质 | |
CN113315671A (zh) | 流量限速与信息配置方法、路由节点、系统及存储介质 | |
EP4354292A1 (en) | Resource configuration method and apparatus, and storage medium and computing system | |
CN115080341A (zh) | 计算集群及其数据采集方法、设备及存储介质 | |
CN112925634A (zh) | 异构资源调度方法和系统 | |
US10917840B2 (en) | Selecting a communication service provider according to constraint criteria | |
CN111506425B (zh) | 服务质量数据处理方法和装置 | |
CN114968509A (zh) | 任务执行方法及装置 | |
CN116431341A (zh) | 资源规格调整方法、设备及存储介质 | |
CN112380088A (zh) | 测试方法、装置和电子设备 | |
CN114466365B (zh) | 频谱资源获取方法、装置和计算机可读存储介质 | |
WO2023066035A1 (zh) | 资源分配方法以及资源分配装置 | |
US10382630B2 (en) | Telecommunication service subscription integration system | |
CN110647401B (zh) | 调频方法、调频装置、存储介质与电子设备 | |
CN110119364B (zh) | 一种输入/输出批量提交的方法和系统 | |
CN114416326A (zh) | 大数据管控方法、装置、管控系统及可读存储介质 | |
US11844188B2 (en) | Distribution of available power to devices in a group | |
CN116610266B (zh) | 虚拟机磁盘读写性能的调整方法、装置及相关设备 | |
CN110764916B (zh) | 一种信息处理方法、装置、存储介质及设备 | |
WO2024109787A1 (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 |