CN109144658B - 有限资源的负载均衡方法、装置及电子设备 - Google Patents
有限资源的负载均衡方法、装置及电子设备 Download PDFInfo
- Publication number
- CN109144658B CN109144658B CN201710499500.8A CN201710499500A CN109144658B CN 109144658 B CN109144658 B CN 109144658B CN 201710499500 A CN201710499500 A CN 201710499500A CN 109144658 B CN109144658 B CN 109144658B
- Authority
- CN
- China
- Prior art keywords
- load
- virtual cpu
- data
- resource
- utilization
- 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.)
- Active
Links
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/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/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- 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/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5022—Workload threshold
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
本发明实施例提供一种有限资源的负载均衡方法、装置及电子设备,其中,方法包括:获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。本发明实施例的方案可以对有限的云服务资源实现负载均衡。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种有限资源的负载均衡方法、装置及电子设备。
背景技术
云服务器(Elastic Compute Service,ECS)是一种处理能力可弹性伸缩的计算服务,其管理方式比物理服务器更简单高效,其最大的优点在于能够动态调配计算资源,在平台总容量可以接纳、应用软件可以根据硬件资源的变化进行相应的优化的情况下能够有效解决高峰时期的处理速度。
大促上云,云端会在多地呈现多个云单元,每个云单元对应服务一个相对完整的业务群,也就是说云单元是封闭的,一个云单元可以完整独立的提供大促期间的各项业务服务。在资源分配部署过程中,将结合业务流量配比,并基于单元的整体性来进行资源分配部署。在初次资源申请排序、分配后,业务容量初始化完成,开始验证业务正确性,然后进入全链路压测验收。在压测过程中,存在物理机负载表现不均,应用部分结点负载偏高的现象。为了解决业务结点整体负载均衡,需要进行有效的资源腾挪,实现负载均衡。与常规的负载均衡实施的差异:云单元资源池往往是事先预算的、并且明确了本单元承载的流量,这个是实现负载均衡的目标和限制条件。基于这个限制条件,负载均衡需要集中降低“过热”结点的比例,或者说降低“热点”负载的最大值。
现有技术的缺陷:
现有技术中针对云单元资源的负载均衡方案:高负载结点执行下线处理,然后重新申请资源。这种方法简单直接,但是,不能确保物理机的内部负载趋向均衡;另外,高负载结点持续异常负载,一定程度反应业务内部出现了问题,如果下线处理,则不能保留实例,进而不能有效排查问题。采用限流的方式属于有损的方案,虽然可以将应用负载限制一定范围,但是却不能将低负载的结点利用率提升。
另外,在云单元资源初始化之后,资源池中剩余资源是有限的、并且物理机上已经部署了部分实例,想要大面积扩容的概率很小,因为初始化容量申请的时候都是按预估一步到位的。大范围的资源腾挪迁移成本较高,腾挪迁移后还会引入新的变更,这又需要全链路压测进行检验,引入更高的成本。
发明内容
本发明提供了一种有限资源的负载均衡方法、装置及电子设备,以对有限的服务资源实现负载均衡。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种有限资源的负载均衡方法,包括:
获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
第二方面,提供了另一种有限资源的负载均衡方法,包括:
获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
第三方面,提供了一种有限资源的负载均衡装置,包括:
第一资源数据获取模块,用于获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
第二负载数据统计模块,用于对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第三资源调配模块,用于如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
第四方面,提供了另一种有限资源的负载均衡装置,包括:
第二资源数据获取模块,用于获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
第二负载数据统计模块,用于对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第二资源调配模块,用于对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
第五方面,提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,以用于:
获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
第六方面,提供了另一种电子设备,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,以用于:
获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
本发明提供的有限资源的负载均衡方法、装置及电子设备,通过对物理机上的虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对同一负载类型下的负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限云服务资源的负载均衡。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例的有限资源的负载均衡的逻辑示意图;
图2为本发明实施例的有限资源的负载均衡的***结构图;
图3a为本发明实施例的有限资源的负载均衡方法流程图一;
图3b为本发明实施例的有限资源的负载均衡方法流程图二;
图4a为本发明实施例的有限资源的负载均衡装置结构图一;
图4b为本发明实施例的有限资源的负载均衡装置结构图二;
图5为本发明实施例的电子设备的结构示意图一;
图6为本发明实施例的电子设备的结构示意图二。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明改变了现有技术中,针对云单元资源的负载均衡方案中,只是盲目的对高负载节点执行下线处理,并重新申请资源,其核心思想在于,针对云单元上各物理机上的虚拟CPU的资源利用数据,按不同的负载类型进行数据统计,然后将统计的负载统计数据与相应阈值进行比较来判定服务资源是否满足对应负载类型下的负载均衡处理条件,如果满足,则表明该服务资源需要进行与该负载类型相适应的资源调配处理,从而有针对性对不同类型的负载不均衡的情况进行不同方式的资源调配处理,实现有限服务资源的负载均衡。
如图1所示,为本发明实施例的有限资源的负载均衡的逻辑示意图。在该逻辑图中,用于判别服务资源是否存在负载不均衡以及对负载不均衡的情况进行资源调配的根本依据,是每个云单元上物理机中的虚拟CPU的资源利用数据(能够反映资源利用情况的数据),如虚拟CPU的利用率、加载(load)以及输入/输出(I/O)的利用率等。虚拟CPU的资源利用数据不仅可以反映每个虚拟CPU的资源利用情况,而且通过对虚拟CPU的资源利用数据按不同的层面或角度进行统计,还可以得到不同负载类型下对应的负载统计数据。所述的负载类型是指能够反映服务资源对应的负载情况的层面或角度,例如对云单元的服务资源对应的负载情况,可以从物理机、应用、单个虚拟CPU等不同层面,即不同负载类型来进行描述。
需要说明的是,物理机、应用、单个虚拟CPU之间在资源划分上的关系如下:
一个云单元用于向指定的应用集群提供服务资源。一个云单元由多个物理机构成。所述的云单元是从物理机上虚拟化出的ECS虚拟机,也可视为是针对固定应用集群提供云服务的云主机,本发明中物理机可以与ECS虚拟机等同,即可将一个物理机虚拟化成一个ECS虚拟机,在这个ECS虚拟机上面,再进行容器化虚拟机分配,即把这个ECS虚拟机看做是一个物理机。本发明中物理机也可以视为一个ECS虚拟机的承载实体,如多个物理机被虚拟化为多个虚拟机,且这些虚拟机用于向指定的应用集群提供服务资源,从而构成一个ECS虚拟机)。每个物理机上设置多个实例,每个实例对应一项具体业务内容。物理机有物理芯片计算单元。例如,我们通常说的32核CPU实际上可以是一个物理机上的16个物理计算单元,通过超线程技术虚拟化之后,变为32核。这32核也可看成是32个虚拟CPU。或者称为VCPU。一个应用可包括多个实例,一个实例会占用n(n为大于0的整数)个虚拟CPU。例如对32核CPU进行编号0到31,一个实例可占用其中编号为0、1、2、3,这4个编号的虚拟CPU。多个虚拟CPU对应于一个物理计算单元,例如,一种虚拟CPU编号规则是:0、1、2,…31,其中可能0,15对应同一个物理计算单元,1,16对应同一个物理计算单元,依次类推15,31对应同一个物理计算单元。换言之,15,31由一个物理计算单元虚拟化之后,变成两个虚拟CPU,编号定义为15、31。
基于上述内容,在得到一云单元上的物理机上的各虚拟CPU的资源利用数据后,就可以对该云单元上的服务资源按照物理机、应用、单个虚拟CPU这三个层面分别判定其负载情况。
在图1所示的逻辑示意图中,将云单元上的物理机上的各虚拟CPU的资源利用数据按不同的负载类型进行统计,从而得到物理机负载数据、应用集群负载数据和虚拟CPU负载数据这三个层面的负载统计数据,然后对这三种负载统计数据进行负载数据计算,从而得到物理机高负载节点、应用高负载节点、虚拟CPU高负载节点以及对应的负载值。最后,根据各负载值对当前云单元服务资源的负载不均衡问题进行归类计算,可以得到三种负载不均衡的情况:
1,资源分配不均,指物理机层面的负载不均衡,即每个物理机之间整体上体现出负载不均衡,此时可以将物理机高负载节点上的实例定点迁移到其他物理机低负载节点上,来达到各物理机之间的负载均衡。
2,应用容量不足,指应用层面的负载不均衡,即每个应用的实例之间整体上体现出负载不均衡,此时可以将应用高负载节点上的资源进行扩容,以满足该应用使用资源的需求,从而达到各应用之间的负载均衡。
3,业务自身问题,指各应用内部的各实例所占用的虚拟CPU层面的负载不均衡,并且这种不均衡体现在某些实例所占用的虚拟CPU总是持续性的表现出高负载的,而在资源的初始分配时,预留给该实例的资源是充足的。这种情况下很可能是业务本身(代码层面)出现问题。此时,可以关闭该业务对应的服务,以进行缺陷排查,从根本上解决该实例所占用的虚拟CPU高负载的情况,实现各虚拟CPU之间的负载均衡。
最后,在确定负载不均衡的情形后,就可依据上述列举的与各负载类型对应的资源调配方案,对需要进行资源调配的对象(物理机、应用、虚拟CPU)进行资源调配处理。根据执行结果进一步跟进,并对稳定的服务资源节点进行锁定,不参与下一次的资源调配。
基于图1所示的有限资源的负载均衡的逻辑示意图,本发明实施例提供了一种有限资源的负载均衡***,用以计算云单元在不同负载类型下的负载统计数据,并根据负载统计数据得到相应的高负载节点的负载类型,依据负载类型进行合理的资源调配,从而实现云端服务资源的负载均衡。如图2所示,该***包括:云端210和有限资源的负载均衡装置220;其中,如图2中所示,有限资源的负载均衡装置220可与云端210分开设置,也可以包含在云端210中,但和云端的各云单元之间是分开设置的。有限资源的负载均衡装置220可以是设置在网络中的调度平台,它可以收集全链路压测过程中,各云单元上的资源、数据等信息,并可对需要执行负载均衡的结点执行资源腾挪等负载均衡的操作。
云端210包括:
多个云单元(云单元1,...,云单元n),每个云单元内可包括多个物理机(物理机1,…,物理机n),每个物理机可虚拟化出多个虚拟CPU(虚拟CPU1,...,虚拟CPUn)。一个云单元可用于向指定的应用集群提供服务资源。
其中,本实施例中的所谓单元是指包含如交易浏览、下单、支付、物流等相对闭环的业务群,也就是说一个单元包含完整的:数据库、中间件、业务实例。当这些单元运行在云提供的物理机上,则称为云单元,不是云提供的物理机,则称为非云单元;例如,淘宝、天猫等网上购物平台,大都包含了由商品信息查询、下单、支付、交易浏览等很多业务构成的业务群,在云上运行这些业务群所需要或占用物理机的各种资源,包括数据库、各种中间件以及业务实例等都可以统一概括为一个云单元,即在每一个云单元上都可以执行类似淘宝、天猫等平台的完整业务群。当然,随着业务群的划分边界不同,一个云单元所指向的业务群的具体业务内容也不同。
有限资源的负载均衡装置220包括:
资源数据获取模块,用于获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个物理机上被虚拟化出多个虚拟CPU,一个云单元用于向指定的应用集群提供服务资源;
其中,各虚拟CPU的资源利用数据为能够反映虚拟机资源利用情况的数据,如虚拟CPU的利用率、加载(load)以及输入/输出(I/O)的利用率等。
负载数据统计模块,用于对各虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
其中,所述的负载类型是指能够反映服务资源对应的负载情况的层面或角度,例如对云单元的服务资源对应的负载情况,可以从物理机、应用、单个虚拟CPU等不同层面,即不同负载类型来进行描述。
资源调配模块,用于如果负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
每个负载类型都对应一个负载均衡处理条件,该负载均衡处理条件用于衡量被统计的资源对象是否需要被执行资源调配,以达到负载均衡的目的。具体地,如果负载统计数据满足相应负载类型下的负载均衡处理条件,则说明该资源对象存在负载不均,确切的说是存在高负载节点,此时,需要对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
进一步地,上述各虚拟CPU的资源利用数据具体可以为虚拟CPU的利用率(虚拟CPU的利用率远大于load和I/O的利用率,因此后两者在实际计算时可忽略)。
进一步地,上述负载类型可包括:物理机负载类型、应用集群负载类型和业务缺陷负载类型中的至少一种。
其中,物理机负载类型,应用集群负载类型和业务缺陷负载类型依次为以物理机、应用、虚拟CPU这三个层面来对服务资源的负载情况进行描述。
在此基础上,从物理机负载类型,应用集群负载类型和业务缺陷负载类型三个角度出发,可进一步地对上述负载数据统计模块和资源调配模块进行相对应的模块细化。
负载数据统计模块可进一步包括:
物理机负载数据统计单元,用于将各虚拟CPU的资源利用数据以物理机为单位进行统计,以得到各物理机上的虚拟CPU的资源利用情况,并将统计的结果数据作为物理机负载类型下的负载统计数据。例如,每个物理机上,各虚拟CPU的利用率具体是多少。
相应的,物理机负载类型下的负载均衡处理条件可以为:物理机上各虚拟CPU的利用率均大于第一阈值。该第一阈值为经验值,如35%。实际上,当某一物理机上所有虚拟CPU的利用率都大于35%时,说明该物理机整体上被分配给自身的资源就不足,需要整体对物理机的服务资源进行扩容。
相应的,资源调配模块可进一步包括:
物理机资源调配单元,用于针对物理机上各虚拟CPU的利用率均大于第一阈值的物理机,进行整体资源扩容和/或资源隔离,和/或将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上。
对物理机实现扩容的方式有以下几种:可以对整个物理机上的资源进行扩容,从而增加该物理机上运行实例所占用的虚拟CPU的资源;也可以对该物理机上运行的实例所占用的资源进行资源隔离,从而不再增加该物理机的负载量;也可以将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上,从而增加该物理机上已有实例对虚拟CPU的资源的使用量。
进一步地,针对将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上的资源调配方案,物理机资源调配单元,还可用于统计云单元中,虚拟CPU的利用率最小的虚拟CPU,并将上述占用该物理机上的部分虚拟CPU的实例与虚拟CPU的利用率最小的虚拟CPU上占用的实例进行位置互换,从而实现局部的,点对点的资源腾挪,以保证云单元在整体上的稳定性是一致的,毕竟局部迁移也是变更,反复的迁移也是不合理的。
负载数据统计模块可进一步包括:
应用集群负载数据统计单元,用于将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为所述应用集群负载类型下的负载统计数据。例如,每个应用所包含的实例,在相应占用的虚拟CPU的利用率是多少。
相应的,应用集群负载类型下的负载均衡处理条件可以为:
应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值。例如,一个应用所包含的实例中,超过10%的实例,其应占用的虚拟CPU的利用率均超过了第二阈值,如45%。实际上,当某一应用所包含的实例中,出现大于10%的比例的实例,其占用的虚拟CPU的利用率都大于45%时,说明该应用整体上被分配给自身的资源就不足,需要整体对该应用的服务资源进行扩容。
相应的,资源调配模块可进一步包括:
应用集群资源调配单元,用于针对应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
负载数据统计模块可进一步包括:
业务缺陷负载数据统计单元,用于将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为业务缺陷负载类型下的负载统计数据。例如,每个应用所包含的实例,在相应占用的虚拟CPU的利用率是多少。
相应的,业务缺陷负载类型下的负载均衡处理条件可以为:
应用所包含的实例在其占用的虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值。例如,一个应用所包含的实例中,出现固定的某些节点实例,其占用的虚拟CPU的利用率一直居高不下,且均持续超过了第三阈值,如80%。实际上,当某一应用所包含的某个实例,其占用的虚拟CPU的利用率长时间处于大于80%的状态,说明该实例本身可能存在业务缺陷,如从业务代码层面就存在缺陷,因而导致其实际占用的虚拟CPU的利用率比预期的利用率要大很多。
相应的,资源调配模块可进一步包括:
业务缺陷资源调配单元,用于针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值的应用,确定该应用中的该实例存在业务缺陷,并关闭该实例对应的服务,以进行缺陷排查。
当确定实例本身出现业务缺陷时,需要关闭该实例对应的服务,进行缺陷排查,优化实例,以从根本上解决高负载问题。
本发明实施例提供的有限资源的负载均衡***,通过对云单元上的物理机上的各虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对负载统计数据进行相应负载类型下的负载均衡处理条件判定,如果符合负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限云服务资源的负载均衡。
下面通过多个实施例来进一步说明本申请的技术方案。
实施例一
基于上述按负载类型进行有限资源的负载均衡的方案思想,如图3a所示,其为本发明实施例示出的有限资源的负载均衡方法流程图一,该方法的执行主为图2中所示的有限资源的负载均衡装置。如图3a所示,该有限资源的负载均衡方法包括如下步骤:
S310,获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个物理机上被虚拟化出多个虚拟CPU,一个云单元用于向指定的应用集群提供服务资源。
具体地,通过监控装置对云单元的物理机上的各虚拟CPU的资源利用数据进行监测和获取。其中,所述的虚拟CPU的资源利用数据为能够反映资源利用情况的数据,如虚拟CPU的利用率、加载(load)以及输入/输出(I/O)的利用率等。
S320,对各虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
虚拟CPU的资源利用数据不仅可以反映每个虚拟CPU的资源利用情况,而且通过对虚拟CPU的资源利用数据按不同的层面或角度进行统计,还可以得到不同负载类型下对应的负载统计数据。所述的负载类型是指能够反映服务资源对应的负载情况的层面或角度,例如对云单元的服务资源对应的负载情况,可以从物理机、应用、单个虚拟CPU等不同层面,即不同负载类型来进行描述。
不同负载类型下对应的负载统计数据可以定量的反映以该负载类型来描述的负载情况。这里的负载统计数据为针对各虚拟CPU的资源利用数据按负载类型进行统计的数据,统计的具体方法和形式不做限定。
S330,如果负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
每个负载类型都对应一个负载均衡处理条件,该负载均衡处理条件用于衡量被统计的资源对象是否需要被执行资源调配,以达到负载均衡的目的。具体地,如果负载统计数据满足相应负载类型下的负载均衡处理条件,则说明该资源对象存在负载不均,确切的说是存在高负载节点,此时,需要对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
这里需要说明的是,关于负载均衡处理条件的设定,以及相应进行资源调配的具体实施方式在本方案中是不做限定的,本领域技术人员可以参考前述内容中列举的负载类型的具体方面,来设定更多样化的负载类型的内容,以及与该负载类型对应的负载均衡处理条件和资源调配方案。但需要指出的是,不论本领域技术设定的具体方案如何,均在本方按所保护的技术范围之内。
进一步地,上述各虚拟CPU的资源利用数据具体可以为虚拟CPU的利用率(虚拟CPU的利用率远大于load和I/O的利用率,因此后两者在实际计算时可忽略)。
进一步地,上述负载类型可包括:物理机负载类型、应用集群负载类型和业务缺陷负载类型中的至少一种。
其中,物理机负载类型,应用集群负载类型和业务缺陷负载类型依次为以物理机、应用、虚拟CPU这三个层面来对服务资源的负载情况进行描述。
在此基础上,从物理机负载类型,应用集群负载类型和业务缺陷负载类型三个角度出发,可进一步地对上述步骤S320和S330的内容进行细化。
进一步地,在步骤S320的一种具体实现方式中,可将各虚拟CPU的资源利用数据以物理机为单位进行统计,以得到各物理机上的虚拟CPU的资源利用情况,并将统计的结果数据作为物理机负载类型下的负载统计数据。例如,每个物理机上,各虚拟CPU的利用率具体是多少。
相应的,物理机负载类型下的负载均衡处理条件可以为:物理机上各虚拟CPU的利用率均大于第一阈值。该第一阈值为经验值,如35%。实际上,当某一物理机上所有虚拟CPU的利用率都大于35%时,说明该物理机整体上被分配给自身的资源就不足,需要整体对物理机的服务资源进行扩容。
相应的,在步骤S330的一种具体实现方式中,可针对物理机上各虚拟CPU的利用率均大于第一阈值的物理机,进行整体资源扩容和/或资源隔离,和/或将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上。
对物理机实现扩容的方式有以下几种:可以对整个物理机上的资源进行扩容,从而增加该物理机上运行实例所占用的虚拟CPU的资源;也可以对该物理机上运行的实例所占用的资源进行资源隔离,从而不再增加该物理机的负载量;也可以将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上,从而增加该物理机上已有实例对虚拟CPU的资源的使用量。
进一步地,针对将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上的资源调配方案,还可以进一步统计云单元中,虚拟CPU的利用率最小的虚拟CPU,并将上述占用该物理机上的部分虚拟CPU的实例与虚拟CPU的利用率最小的虚拟CPU上占用的实例进行位置互换,从而实现局部的,点对点的资源腾挪,以保证云单元在整体上的稳定性是一致的,毕竟局部迁移也是变更,反复的迁移也是不合理的。
进一步地,在步骤S320的另一种具体实现方式中,可将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为所述应用集群负载类型下的负载统计数据。例如,每个应用所包含的实例,在相应占用的虚拟CPU的利用率是多少。
相应的,应用集群负载类型下的负载均衡处理条件可以为:
应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值。例如,一个应用所包含的实例中,超过10%的实例,其应占用的虚拟CPU的利用率均超过了第二阈值,如45%。实际上,当某一应用所包含的实例中,出现大于10%的比例的实例,其占用的虚拟CPU的利用率都大于45%时,说明该应用整体上被分配给自身的资源就不足,需要整体对该应用的服务资源进行扩容。
相应的,在步骤S330的另一种具体实现方式中,可针对应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
进一步地,在步骤S320的另一种具体实现方式中,可将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为业务缺陷负载类型下的负载统计数据。例如,每个应用所包含的实例,在相应占用的虚拟CPU的利用率是多少。
相应的,业务缺陷负载类型下的负载均衡处理条件可以为:
应用所包含的实例在其占用的虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值。例如,一个应用所包含的实例中,出现固定的某些节点实例,其占用的虚拟CPU的利用率一直居高不下,且均持续超过了第三阈值,如80%。实际上,当某一应用所包含的某个实例,其占用的虚拟CPU的利用率长时间处于大于80%的状态,说明该实例本身可能存在业务缺陷,如从业务代码层面就存在缺陷,因而导致其实际占用的虚拟CPU的利用率比预期的利用率要大很多。
相应的,在步骤S330的另一种具体实现方式中,可针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值的应用,确定该应用中的该实例存在业务缺陷,并关闭该实例对应的服务,以进行缺陷排查。
当确定实例本身出现业务缺陷时,需要关闭该实例对应的服务,进行缺陷排查,优化实例,以从根本上解决高负载问题。
本发明实施例提供的有限资源的负载均衡方法,通过对云单元上的物理机上的各虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对负载统计数据进行相应负载类型下的负载均衡处理条件判定,如果符合负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限云服务资源的负载均衡。
实施例二
基于上述按负载类型进行有限资源的负载均衡的方案思想,如图3b所示,其为本发明实施例示出的有限资源的负载均衡方法流程图二,该方法在图3a的基础上做了少许改动。如图3b所示,该有限资源的负载均衡方法包括如下步骤:
S340,获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源。
本步骤中与步骤S310的执行过程基本相同,区别点在于,本实施例中的有限资源不局限于云单元,还包括非云单元上的物理机,即所有目标物理机上的虚拟CPU的资源都可以作为负载均衡的处理对象,并且可以选取任意数量的虚拟CPU的资源进行负载均衡的处理。
S350,对上述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
本步骤发的执行过程可参见步骤S320的内容。
S360,对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
本步骤与步骤S330相比较,在确定资源调配时去掉了关于负载均衡条件的判定过程,即在任何情况下都可以对服务资源进行与其对应的资源利用数据的负载类型相适应的资源调配,具体调配过程可参见步骤S320的内容。
另外,关于实施例一中其他的方法步骤,也同样适用于本实施例的方法中,在此不做赘述。
本发明实施例提供的有限资源的负载均衡方法,通过对目标物理机上的至少一个虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限资源的负载均衡。
实施例三
如图4a所示,为本发明实施例的有限资源的负载均衡装置结构图一,该有限资源的负载均衡装置可用于执行如图3a所示的方法步骤,其包括:
第一资源数据获取模块410,用于获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个物理机上被虚拟化出多个虚拟CPU,一个云单元用于向指定的应用集群提供服务资源;
第一负载数据统计模块420,用于对各虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第一资源调配模块430,用于如果负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
进一步地,上述各虚拟CPU的资源利用数据为虚拟CPU的利用率。
进一步地,上述负载类型包括:物理机负载类型、应用集群负载类型和业务缺陷负载类型中的至少一种。
在此基础上,第一负载数据统计模块420可包括:
物理机负载数据统计单元,用于将各虚拟CPU的资源利用数据以物理机为单位进行统计,以得到各物理机上的虚拟CPU的资源利用情况,并将统计的结果数据作为物理机负载类型下的负载统计数据。
相应的,所述物理机负载类型下的负载均衡处理条件可以为:物理机上各虚拟CPU的利用率均大于第一阈值。
相应的,第一资源调配模块430可包括:
物理机资源调配单元,用于针对物理机上各虚拟CPU的利用率均大于第一阈值的物理机,进行整体资源扩容和/或资源隔离,和/或将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上。
进一步地,所述物理机资源调配单元具体用于,统计云单元中,虚拟CPU的利用率最小的虚拟CPU,并将占用该物理机上的部分虚拟CPU的实例与虚拟CPU的利用率最小的虚拟CPU上占用的实例进行位置互换。
进一步地,所述第一负载数据统计模块420还可包括:
应用集群负载数据统计单元,用于将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据。
相应的,所述应用集群负载类型下的负载均衡处理条件可以为:应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值。
相应的,第一资源调配模块430可包括:
应用集群资源调配单元,用于针对应用所包含的实例在其占用的虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
进一步地,所述第一负载数据统计模块420还可包括:
业务缺陷负载数据统计单元,用于将各虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的虚拟CPU的资源利用情况,并将统计的结果数据作为所述业务缺陷负载类型下的负载统计数据。
相应的,所述业务缺陷负载类型下的负载均衡处理条件可以为:应用所包含的实例在其占用的虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值。
相应的,第一资源调配模块430可包括:
业务缺陷资源调配单元,用于针对应用所包含的实例在其占用的虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值的应用,确定该应用中的该实例存在业务缺陷,并关闭该实例对应的服务,以进行缺陷排查。
本发明实施例提供的有限资源的负载均衡装置,通过对云单元上的物理机上的各虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对负载统计数据进行相应负载类型下的负载均衡处理条件判定,如果符合负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限云服务资源的负载均衡。
实施例四
如图4b所示,为本发明实施例的有限资源的负载均衡装置结构图二,该有限资源的负载均衡装置可用于执行如图3b所示的方法步骤,其包括:
第二资源数据获取模块440,用于获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
第二负载数据统计模块450,用于对至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第二资源调配模块460,用于对同一负载类型下的负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
本发明实施例提供的有限资源的负载均衡装置,通过对目标物理机上的至少一个虚拟CPU的资源利用数据按不同的负载类型进行数据统计,从而得到不同负载类型下对应的负载统计数据,然后对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,从而实现有限资源的负载均衡。
实施例五
前面实施例三中描述了有限资源的负载均衡装置的整体架构,该装置的功能可借助一种电子设备实现完成,如图5所示,其为本发明实施例的电子设备的结构示意图,具体包括:存储器510和处理器520。
存储器510,用于存储程序。
除上述程序之外,存储器510还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器510可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器520,耦合至存储器510,用于执行存储器510中的程序,以用于:
获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
上述的具体处理操作已经在前面实施例中进行了详细说明,在此不再赘述。
进一步,如图5所示,电子设备还可以包括:通信组件530、电源组件540、音频组件550、显示器560等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
通信组件530被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件530经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,通信组件530还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件540,为电子设备的各种组件提供电力。电源组件540可以包括电源管理***,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件550被配置为输出和/或输入音频信号。例如,音频组件550包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器510或经由通信组件530发送。在一些实施例中,音频组件550还包括一个扬声器,用于输出音频信号。
显示器560包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
实施例六
前面实施例四中描述了有限资源的负载均衡装置的整体架构,该装置的功能可借助一种电子设备实现完成,如图6所示,其为本发明实施例的电子设备的结构示意图,具体包括:存储器610和处理器620。
存储器610,用于存储程序。
除上述程序之外,存储器610还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器610可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器620,耦合至存储器610,用于执行存储器610中的程序,以用于:
获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配。
上述的具体处理操作已经在前面实施例中进行了详细说明,在此不再赘述。
进一步,如图6所示,电子设备还可以包括:通信组件630、电源组件640、音频组件650、显示器660等其它组件。图6中仅示意性给出部分组件,并不意味着电子设备只包括图6所示组件。
通信组件630被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件630经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,通信组件630还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件640,为电子设备的各种组件提供电力。电源组件640可以包括电源管理***,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件650被配置为输出和/或输入音频信号。例如,音频组件650包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器610或经由通信组件630发送。在一些实施例中,音频组件650还包括一个扬声器,用于输出音频信号。
显示器660包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (13)
1.一种有限资源的负载均衡方法,其特征在于,包括:
获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
2.根据权利要求1所述的方法,其特征在于,所述各虚拟CPU的资源利用数据为虚拟CPU的利用率。
3.根据权利要求2所述的方法,其特征在于,所述负载类型包括:物理机负载类型、应用集群负载类型和业务缺陷负载类型中的至少一种。
4.根据权利要求3所述的方法,其特征在于,所述对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以物理机为单位进行统计,以得到各所述物理机上的虚拟CPU的资源利用情况,并将统计的结果数据作为所述物理机负载类型下的负载统计数据。
5.根据权利要求4所述的方法,其特征在于,所述物理机负载类型下的负载均衡处理条件为:
所述物理机上各虚拟CPU的利用率均大于第一阈值;
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述物理机上各虚拟CPU的利用率均大于第一阈值的物理机,进行整体资源扩容和/或资源隔离,和/或将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上。
6.根据权利要求5所述的方法,其特征在于,所述将占用该物理机上的部分虚拟CPU的实例迁移到其他物理机上的虚拟CPU上包括:
统计所述云单元中,虚拟CPU的利用率最小的虚拟CPU,并将所述占用该物理机上的部分虚拟CPU的实例与所述虚拟CPU的利用率最小的虚拟CPU上占用的实例进行位置互换。
7.根据权利要求3所述的方法,其特征在于,所述对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为所述业务缺陷负载类型下的负载统计数据。
8.根据权利要求7所述的方法,其特征在于,所述业务缺陷负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值;
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,同一实例所占用的虚拟CPU的利用率持续大于第三阈值的应用,确定该应用中的该实例存在业务缺陷,并关闭该实例对应的服务,以进行缺陷排查。
9.一种有限资源的负载均衡方法,其特征在于,包括:
获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述对所述至少一个虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
10.一种有限资源的负载均衡装置,其特征在于,包括:
第一资源数据获取模块,用于获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
第一负载数据统计模块,用于对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第一资源调配模块,用于如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述第一负载数据统计模块进一步用于:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述第一资源调配模块进一步用于:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
11.一种有限资源的负载均衡装置,其特征在于,包括:
第二资源数据获取模块,用于获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
第二负载数据统计模块,用于对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
第二资源调配模块,用于对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述第二负载数据统计模块进一步用于:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述第二资源调配模块进一步用于:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
12.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,以用于:
获取所属同一云单元的物理机上的各虚拟CPU的资源利用数据;所述云单元由多个物理机组成,每个所述物理机上被虚拟化出多个虚拟CPU,一个所述云单元用于向指定的应用集群提供服务资源;
对各所述虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
如果所述负载统计数据满足相应负载类型下的负载均衡处理条件,则对该负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述对各虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
13.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,以用于:
获取目标物理机上的至少一个虚拟CPU的资源利用数据;每个所述物理机上被虚拟化出多个虚拟CPU,用于向指定的应用集群提供服务资源;
对所述至少一个虚拟CPU的资源利用数据按负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据;
对同一负载类型下的所述负载统计数据对应的服务资源进行与该负载类型相适应的资源调配;
其中,所述对所述至少一个虚拟CPU的资源利用数据按预设的负载类型进行数据统计,以得到不同负载类型下对应的负载统计数据包括:
将各所述虚拟CPU的资源利用数据以服务的对象应用为单位进行统计,以得到各应用所包含的实例在其被占用的所述虚拟CPU的资源利用情况,并将统计的结果数据作为应用集群负载类型下的负载统计数据,并且
所述应用集群负载类型下的负载均衡处理条件为:
所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值,
所述对负载统计数据对应的服务资源进行与该负载类型相适应的资源调配,包括:
针对所述应用所包含的实例在其占用的所述虚拟CPU的利用率中,超过固定比例的实例,其占用的虚拟CPU的利用率均大于第二阈值的应用,将该应用所占用的资源进行整体资源扩容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710499500.8A CN109144658B (zh) | 2017-06-27 | 2017-06-27 | 有限资源的负载均衡方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710499500.8A CN109144658B (zh) | 2017-06-27 | 2017-06-27 | 有限资源的负载均衡方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109144658A CN109144658A (zh) | 2019-01-04 |
CN109144658B true CN109144658B (zh) | 2022-07-15 |
Family
ID=64805043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710499500.8A Active CN109144658B (zh) | 2017-06-27 | 2017-06-27 | 有限资源的负载均衡方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144658B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110545258B (zh) * | 2019-07-25 | 2022-05-03 | 浙江大华技术股份有限公司 | 流媒体服务器资源配置方法、装置和服务器 |
CN110673928B (zh) * | 2019-09-29 | 2021-12-14 | 天津卓朗科技发展有限公司 | 线程绑定方法、装置、存储介质及服务器 |
CN111427673B (zh) * | 2020-03-16 | 2023-04-07 | 杭州迪普科技股份有限公司 | 一种负载均衡方法、装置及设备 |
CN111400049A (zh) * | 2020-03-26 | 2020-07-10 | 北京搜房科技发展有限公司 | 资源调整方法及装置 |
CN111881476B (zh) * | 2020-07-28 | 2023-07-28 | 平安科技(深圳)有限公司 | 对象存储控制方法、装置、计算机设备及存储介质 |
CN115391021A (zh) * | 2021-05-24 | 2022-11-25 | 北京灵汐科技有限公司 | 核心控制方法及装置、处理核心、***、电子设备、介质 |
CN115529242B (zh) * | 2022-09-23 | 2023-07-18 | 浙江大学 | 一种在最优水位下实现云网络资源分配的方法 |
CN117687799A (zh) * | 2024-02-02 | 2024-03-12 | 中国科学院空天信息创新研究院 | 一种面向遥感解译应用的分布流式加速方法及计算终端 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102710503A (zh) * | 2012-05-15 | 2012-10-03 | 浪潮电子信息产业股份有限公司 | 一种基于“云海os”的网络负载均衡方法 |
CN104166594A (zh) * | 2014-08-19 | 2014-11-26 | 杭州华为数字技术有限公司 | 负载均衡控制方法及相关装置 |
CN104375897A (zh) * | 2014-10-27 | 2015-02-25 | 西安工程大学 | 基于最小相对负载不均衡度的云计算资源调度方法 |
CN104850461A (zh) * | 2015-05-12 | 2015-08-19 | 华中科技大学 | 一种面向numa架构的虚拟cpu调度优化方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504620A (zh) * | 2009-03-03 | 2009-08-12 | 华为技术有限公司 | 一种虚拟化集群***负载平衡方法、装置及*** |
CN102096461B (zh) * | 2011-01-13 | 2013-06-19 | 浙江大学 | 基于虚拟机迁移和负载感知整合的云数据中心节能方法 |
CN104836819A (zh) * | 2014-02-10 | 2015-08-12 | 阿里巴巴集团控股有限公司 | 动态负载均衡的方法、***及监控调度设备 |
CN103955398B (zh) * | 2014-04-28 | 2017-01-11 | 浙江大学 | 一种基于处理器性能监控的虚拟机共生调度方法 |
CN104102543B (zh) * | 2014-06-27 | 2018-09-11 | 北京奇艺世纪科技有限公司 | 一种云计算环境中负载调整的方法和装置 |
US10255091B2 (en) * | 2014-09-21 | 2019-04-09 | Vmware, Inc. | Adaptive CPU NUMA scheduling |
CN104484220B (zh) * | 2014-11-28 | 2017-12-22 | 杭州华为数字技术有限公司 | 虚拟化集群的动态资源调度的方法及装置 |
-
2017
- 2017-06-27 CN CN201710499500.8A patent/CN109144658B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102710503A (zh) * | 2012-05-15 | 2012-10-03 | 浪潮电子信息产业股份有限公司 | 一种基于“云海os”的网络负载均衡方法 |
CN104166594A (zh) * | 2014-08-19 | 2014-11-26 | 杭州华为数字技术有限公司 | 负载均衡控制方法及相关装置 |
CN104375897A (zh) * | 2014-10-27 | 2015-02-25 | 西安工程大学 | 基于最小相对负载不均衡度的云计算资源调度方法 |
CN104850461A (zh) * | 2015-05-12 | 2015-08-19 | 华中科技大学 | 一种面向numa架构的虚拟cpu调度优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109144658A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109144658B (zh) | 有限资源的负载均衡方法、装置及电子设备 | |
US11507430B2 (en) | Accelerated resource allocation techniques | |
US9389798B2 (en) | Dynamic reconfiguration of storage system | |
US10691647B2 (en) | Distributed file system metering and hardware resource usage | |
US10379898B2 (en) | Virtual machine consolidation | |
US11206193B2 (en) | Method and system for provisioning resources in cloud computing | |
US8862738B2 (en) | Reallocating resource capacity among resource pools in a cloud computing environment | |
US8751657B2 (en) | Multi-client storage system and storage system management method | |
US20140317283A1 (en) | Forecasting capacity available for processing workloads in a networked computing environment | |
US10353738B2 (en) | Resource allocation based on social networking trends in a networked computing environment | |
US9432300B2 (en) | Allocation of storage resources in a networked computing environment based on energy utilization | |
CN109684074A (zh) | 物理机资源分配方法及终端设备 | |
US10432491B2 (en) | Control device for estimation of power consumption and energy efficiency of application containers | |
JP2015146154A (ja) | ジョブスケジューリング装置、ジョブスケジューリング方法、およびジョブスケジューリングプログラム | |
CN107968810A (zh) | 一种服务器集群的资源调度方法、装置和*** | |
Di Valerio et al. | Optimal virtual machines allocation in mobile femto-cloud computing: An MDP approach | |
US20120323821A1 (en) | Methods for billing for data storage in a tiered data storage system | |
CN104580194A (zh) | 面向视频应用的虚拟化资源管理方法及装置 | |
CN108874502A (zh) | 云计算集群的资源管理方法、装置及设备 | |
CN107851041A (zh) | 多处理器/多核心计算***的动态调优 | |
CN112527509A (zh) | 一种资源分配方法、装置、电子设备及存储介质 | |
CN104657216A (zh) | 一种资源池的资源分配方法及装置 | |
CN109992408A (zh) | 一种资源分配方法、装置、电子设备和存储介质 | |
Eilam | Towards transparent and trustworthy cloud carbon accounting | |
US20220147380A1 (en) | Optimizing Hybrid Cloud Usage |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230526 Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province, 310030 Patentee after: Aliyun Computing Co.,Ltd. Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK Patentee before: ALIBABA GROUP HOLDING Ltd. |