CN107370783A - 一种云计算集群资源的调度方法及装置 - Google Patents
一种云计算集群资源的调度方法及装置 Download PDFInfo
- Publication number
- CN107370783A CN107370783A CN201610320213.1A CN201610320213A CN107370783A CN 107370783 A CN107370783 A CN 107370783A CN 201610320213 A CN201610320213 A CN 201610320213A CN 107370783 A CN107370783 A CN 107370783A
- Authority
- CN
- China
- Prior art keywords
- calculate node
- virtual machine
- represent
- resources
- weight factor
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施方式提供一种云计算集群资源的调度方法及装置,其中所述云计算集群中包括多个计算节点,在各计算节点上预先分配虚拟机资源,所述方法包括:确定各计算节点的综合资源使用率;根据所述综合资源使用率,确定各计算节点的静态权重因子;根据所述静态权重因子,将云计算集群中的计算节点划分为活跃计算节点和空闲计算节点,并在所述活跃计算节点中进行虚拟机资源调度。本发明实施方式能够精确地对云计算集群中的计算节点进行负载均衡。
Description
技术领域
本发明实施方式涉及云计算集群技术领域,尤其涉及一种云计算集群资源的调度方法及装置。
背景技术
在通常的云计算集群架构中,往往包括多个计算节点,这些计算节点可以是通过物理机组成的。在各计算节点上,可以预先分配虚拟机资源,以处理各种各样的网络业务
然而,预先分配的虚拟机资源往往与实际运行时所需的资源相差较大,例如,实际运行时虚拟机所需的CPU和内存与预先分配的CPU和内存往往不同,预先分配的CPU和内存是基于虚拟机处于满负荷运行的情况考虑的,然而实际上在虚拟机运行时,很少能够达到满负荷运行,因此,大量的资源都被浪费了。
另外,还可以在云计算集群的计算节点上进行负载均衡,从而保证各个计算节点上的负载持平。在现有技术中,对于负载均衡的处理方法同样是基于预先分配的虚拟机资源来实现的。具体地,现有技术中可以通过下述公式来计算各个计算节点对应的权重因子:
其中,ωs表示计算节点对应的权重因子,Rs表示计算节点上预先分配的虚拟机资源,ω当前表示计算节点上当前虚拟机资源对应的权重因子,R表示计算节点上预先分配的当前虚拟机资源的数据量。
由上可见,现有技术中在云计算集群中的计算节点进行负载均衡时,仅仅考虑了预先分配的虚拟机资源,而没有考虑计算节点当前的运行状态,那么根据现有技术中的方法对云计算集群中的计算节点进行负载均衡时往往是不准确的。
发明内容
本发明实施方式的目的在于提供一种云计算集群资源的调度方法及装置,以精确地对云计算集群中的计算节点进行负载均衡。
为实现上述目的,本发明实施方式提供一种云计算集群资源的调度方法,所述云计算集群中包括由物理机组成的计算节点,在计算节点上分配有虚拟机资源,所述方法包括:确定各计算节点的综合资源使用率;根据所述综合资源使用率,确定各计算节点的静态权重因子;根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点,并在所述活跃计算节点中进行虚拟机资源调度。
进一步地,所述确定各计算节点的综合资源使用率的公式为:
其中,β表示计算节点的综合资源使用率;ωc表示计算节点的中央处理器权重因子;βc表示计算节点的中央处理器的使用率;ωr表示计算节点的存储器权重因子;βr表示计算节点的存储器的使用率。
进一步地,所述确定各计算节点的静态权重因子的公式为:
其中,ωs表示计算节点的静态权重因子;Rs表示在计算节点上预先分配的虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rs当前表示当前虚拟机资源预先分配的数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率;β上限表示计算节点的上限综合资源使用率。
进一步地,所述当前虚拟机资源的权重因子的计算公式为:
其中,W当前表示当前虚拟机资源的权重配值;Wi表示计算节点上分配的第i种虚拟机资源的权重配值;N表示虚拟机资源的数量。
进一步地,根据所述静态权重因子在活跃计算节点中进行虚拟机资源调度,包括:预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集;从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
进一步地,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:获取计算节点上的实时虚拟机资源;根据所述实时虚拟机资源以及所述综合资源使用率,确定计算节点的动态权重因子;根据所述动态权重因子,在活跃计算节点中进行实时虚拟机资源的调度。
进一步地,所述确定计算节点的动态权重因子的公式为:
其中,ωd表示计算节点的动态权重因子;Rd表示在计算节点上的实时虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rd当前表示当前虚拟机资源的实时数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率,β上限表示计算节点的上限综合资源使用率。
进一步地,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:预先设置空闲计算节点的数量阈值;如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
本发明实施方式还提供一种云计算集群资源的调度装置,所述云计算集群中包括由物理机组成的计算节点,在计算节点上分配有虚拟机资源,所述装置包括:综合资源使用率确定单元,用于确定各计算节点的综合资源使用率;静态权重因子确定单元,用于根据所述综合资源使用率,确定各计算节点的静态权重因子;划分单元,用于根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点;第一调度单元,用于在所述活跃计算节点中进行虚拟机资源调度。
进一步地,所述第一调度单元,包括:权重阈值设置模块,用于预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;计算节点集提取模块,用于从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集,从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;资源调度模块,用于将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
进一步地,所述装置还包括:实时资源获取单元,用于获取各计算节点上的实时虚拟机资源;动态权重因子确定单元,用于根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;第二调度单元,用于根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
进一步地,所述装置还包括:数量阈值设置单元,用于预先设置空闲计算节点的数量阈值;电源管理单元,用于如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
由上可见,本发明实施方式提供的一种云计算集群资源的调度方法及装置,包括:确定计算节点的综合资源使用率;根据所述综合资源使用率,确定计算节点的静态权重因子;根据所述静态权重因子,将计算节点划分为活跃计算节点和空闲计算节点;根据所述静态权重因子,在活跃计算节点中进行虚拟机资源调度。本发明实施例通过引入综合资源使用率,从而根据综合资源使用率,确定计算节点的权重因子,在根据计算节点的权重因子进行资源调度时,能够使得调度的结果更加符合计算节点本身的性能,从而实现了准确地对云计算集群中的计算节点进行负载均衡。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施方式的一种云计算集群资源的调度方法流程图;
图2为本发明实施方式中基于实时虚拟机资源进行资源调度的方法流程图;
图3为本发明实施方式的一种云计算集群资源的调度装置的结构示意图;
图4为本发明实施方式提供的一种第一调度装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明实施方式提供的一种云计算集群资源的调度方法流程图。在本发明实施方式中,所述云计算集群中包括由物理机组成的多个计算节点,在各计算节点上预先分配有虚拟机资源。
如图1所示,所述方法包括:
步骤S1:确定各计算节点的综合资源使用率。
在本实施方式中,各个计算节点上的虚拟机资源可以从云计算集群的数据库中获取,一个计算节点可以对应多个虚拟机资源,也就是说,在一个计算节点上,可以支持多个虚拟机资源的复用。
在本实施方式中,为了准确地实现对云计算集群进行负载均衡,可以对计算节点当前的运行状态进行分析,以生成该计算节点对应的综合资源使用率。其中,计算节点当前的运行状态可以包括计算节点的中央处理器权重以及存储器权重,另外,还可以包括计算节点的中央处理器使用率以及存储器使用率。
具体地,在本发明一优选实施方式中,可以按照下述公式确定计算节点对应的综合资源使用率:
其中,β表示计算节点的综合资源使用率;ωc表示计算节点的中央处理器权重因子;βc表示计算节点的中央处理器的使用率;ωr表示计算节点的存储器权重因子;βr表示计算节点的存储器的使用率。
上述公式中,所述中央处理器使用率和存储器使用率均可以通过使用量除以总量来求得。例如,对于中央处理器使用率,可以用当前中央处理器的使用量除以该中央处理器的总量来求得。
步骤S2:根据所述综合资源使用率,确定各计算节点的静态权重因子。
在本实施方式中,静态权重因子可以表征计算节点能够承载负载的能力。所述静态权重因子越大,则表明计算节点能够承载的负载越多,从而可以向该计算节点迁移更多的虚拟机资源。相反地,所述静态权重因子越小,则表明计算节点能够承载的负载越少,从而可以向从该计算节点处撤离更多的虚拟机资源。
在本实施方式中,可以基于在各个计算节点上的虚拟机资源来确定计算节点的静态权重因子。静态权重因子计算的依据是预先分配的虚拟机资源,而不是实时检测得到的虚拟机资源。
在本实施方式中,可以按照下述公式确定计算节点的静态权重因子:
其中,ωs表示计算节点的静态权重因子;Rs表示在计算节点上预先分配的虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rs当前表示当前虚拟机资源预先分配的数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率;β上限表示计算节点的上限综合资源使用率。
在本实施方式中,上述的下限综合资源使用率以及上限综合资源使用率均可以为云计算集群的管理员预先设定的。
由上式可见,根据本发明方案计算得到的静态权重因子,不仅考虑了计算节点上预先分配的各个虚拟机的资源,同时通过所述综合资源使用率,还考虑了计算节点的运行状态,这样,所述静态权重因子能够更加准确地表征各个计算节点能够承载负载的能力。
在本发明一优选实施方式中,当前虚拟机资源的权重因子可以通过下式进行确定:
其中,W当前表示当前虚拟机资源的权重配值;Wi表示计算节点上分配的第i种虚拟机资源的权重配值;N表示虚拟机资源的数量。
由上式可见,本发明该实施方式中,综合考虑了计算节点上分配的各个虚拟机资源,从而可以确定某一个虚拟机资源对应的权重因子,这样求得的权重因子能够更加准确地表征该虚拟机资源在所有虚拟机资源中所占的比重。
步骤S3:根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点,并在所述活跃计算节点中进行虚拟机资源调度。
在本实施方式中,可以根据所述静态权重因子,将云计算集群中的计算节点划分为活跃计算节点和空闲计算节点。具体地,可以根据所述静态权重因子的大小对计算节点进行排序,并预先设置一比例系数,通过将云计算集群中的计算节点的总数与该比例系数相乘,得到活跃计算节点的数量。例如,计算节点的总数为50个,预先设置的比例系数为80%,那么得到的活跃计算节点的数量便可以为40个。这样,可以将排序的前40个计算节点确定为活跃计算节点,而将剩下的10个计算节点确定为空闲计算节点。
在本实施方式中,所述活跃计算节点可以作为主计算节点负责处理云计算集群中涉及的各种业务数据,而所述空闲计算节点则可以作为备用计算节点,当活跃计算节点的负载饱和或者接近饱和时,为活跃计算节点分摊一部分的业务数据,以保证云计算集群能够正常运行。
在本实施方式中,由于不同的计算节点能够承载的负载不同,因此预先分配的虚拟机资源往往与计算节点本身的运行能力不符。因此,在本实施方式中,可以根据所述静态权重因子的大小,在活跃计算节点中将预先分配的虚拟机资源进行调度,即在活跃计算节点中进行负载均衡。
具体地,在本实施方式中,可以预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值。其中,所述第一权重阈值可以用来筛选出活跃计算节点中静态权重因子较大的计算节点。因此,可以从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的第一计算节点集,所述第一计算节点集中的各个计算节点能够承载的负载均较大。所述第二权重阈值则可以用来筛选出活跃计算节点中静态权重因子较小的计算节点。因此,可以从所述活跃计算节点中提取静态权重因子小于或等于所述第二权重阈值的第二计算节点集,所述第二计算节点集中的各个计算节点能够承载的负载均较小。这样,便可以将所述第二计算节点集中的各个计算节点上预先分配的虚拟机资源调度至所述第一计算节点集中的计算节点上。
在本实施方式中,对资源进行调度的过程可以根据预先设定的调度参数来实现。具体地,所述调度参数可以包括每次调度的数据量以及调度次数。那么在对虚拟机资源调度了预设的调度次数后,则可以停止调度。另外,所述调度参数还可以包括调度的总数据量,这样,当调度的总数据量达到预设的总数据量时,则可以停止调度。
在本发明一优选实施方式中,考虑到在计算节点上预先分配的虚拟机资源往往与虚拟机实际运行所需的资源不同,因此,在本发明该实施方式中,可以针对计算节点上实时运行的虚拟机资源来对计算节点上的资源进行调度。
请参阅图2。在本实施方式中,可以通过下述步骤来实现基于实时虚拟机资源来进行资源调度。
步骤S4:获取各计算节点上的实时虚拟机资源;
步骤S5:根据实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
步骤S6:根据所述动态权重因子,在活跃计算节点中进行实时虚拟机资源的调度。
在本实施方式中,可以通过访问计算节点的API(Application ProgrammingInterface,应用程序编程接口),以获取各个计算节点当前实时运行的虚拟机资源。那么基于计算节点上的实时虚拟机资源以及所述综合资源使用率,可以确定计算节点的动态权重因子。在本实施方式中,可以按照下述公式确定计算节点的动态权重因子:
其中,ωd表示计算节点的动态权重因子;Rd表示在计算节点上的实时虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rd当前表示当前虚拟机资源的实时数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率,β上限表示计算节点的上限综合资源使用率。
在本实施方式中,所述下限综合资源使用率以及上限综合资源使用率均可以为云计算集群的管理员预先设定的。
由上式可见,根据本发明方案计算得到的动态权重因子,由于是根据计算节点上实时检测的虚拟机资源进行确定的,因此能够更加准确地反映当前计算节点能够承载负载的能力。这样,在本实施方式的后续步骤中,可以基于计算的所述动态权重因子,对所述活跃计算节点重新进行排序,并根据排序结果对实时的虚拟机资源进行调度。具体地排序和调度过程均与步骤S3中的描述类似,这里便不再赘述。
在现有技术中处理空闲计算节点时,往往将空闲计算节点的物理机关闭或直接进入节电模式,那么在后续有线上请求时再开启计算节点以提供服务。但由于对空闲计算节点进行开启和关闭的电源管理系统往往与云计算的集群管理系统相独立,因此难以预知线上请求的时间及期望。那么在大压力需求的极端情况下,会存在部分连续的线上请求无法响应的情况,导致用户体验急剧下降。
鉴于此,在本发明一优选实施方式中,在确定出空闲计算节点后,可以预先设置空闲计算节点的数量阈值。该数量阈值的空闲计算节点可以作为线上请求的缓冲计算节点,这部分的空闲计算节点可以处于开机状态,那么当线上请求压力过大,活跃计算节点无法处理时,可以直接由这部分空闲计算节点来分摊,而无需再次启动空闲计算节点。那么,在设置了所述数量阈值后,可以将当前空闲计算节点的数量与所述数量阈值进行比较,当所述当前空闲计算节点的数量大于所述数量阈值时,则可以将所述当前空闲计算节点中预设数量的计算节点关闭,以使得当前空闲计算节点的数量与所述数量阈值相同;此外,当所述当前空闲计算节点的数量小于所述数量阈值时,则可以将处于关闭状态的预设数量的计算节点开启并将开启的计算节点列入当前空闲计算节点,以使得当前空闲计算节点的数量与所述数量阈值相同。
在本实施方式中,可以按照预设周期实时地统计当前处于开启状态的空闲计算节点的数量,并通过对处于开启状态的空闲计算节点的数量进行实时控制,从而可以能够应对较大压力下的线上请求,同时也避免将所有的空闲计算节点都处于开启状态时,增加云计算集群的功耗。
本发明还提供一种云计算集群资源的调度装置,所述云计算集群中包括由物理机组成的计算节点,在各计算节点上预先分配虚拟机资源。请参阅图3和图4,所述装置包括:
综合资源使用率确定单元10,用于确定各计算节点的综合资源使用率;
静态权重因子确定单元20,用于根据所述综合资源使用率,确定各计算节点的静态权重因子;
划分单元30,用于根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点;
第一调度单元40,用于在所述活跃计算节点中进行虚拟机资源调度。
在本实施方式中,所述综合资源使用率确定单元10可以从云计算集群的数据库中获取各个计算节点上的虚拟机资源,一个计算节点可以对应多个虚拟机资源,也就是说,在一个计算节点上,可以支持多个虚拟机资源的复用。
在本实施方式中,为了准确地实现对云计算集群进行负载均衡,可以对计算节点当前的运行状态进行分析,以生成该计算节点对应的综合资源使用率。其中,计算节点当前的运行状态可以包括计算节点的中央处理器权重以及存储器权重,另外,还可以包括计算节点的中央处理器使用率以及存储器使用率。
具体地,在本发明一优选实施方式中,可以按照下述公式确定计算节点对应的综合资源使用率:
其中,β表示计算节点的综合资源使用率;ωc表示计算节点的中央处理器权重因子;βc表示计算节点的中央处理器的使用率;ωr表示计算节点的存储器权重因子;βr表示计算节点的存储器的使用率。
上述公式中,所述中央处理器使用率和存储器使用率均可以通过使用量除以总量来求得。例如,对于中央处理器使用率,可以用当前中央处理器的使用量除以该中央处理器的总量来求得。
在本实施方式中,静态权重因子可以表征计算节点能够承载负载的能力。所述静态权重因子越大,则表明计算节点能够承载的负载越多,从而可以向该计算节点迁移更多的虚拟机资源。相反地,所述静态权重因子越小,则表明计算节点能够承载的负载越少,从而可以向从该计算节点处撤离更多的虚拟机资源。
在本实施方式中,所述静态权重因子确定单元20可以基于在各个计算节点上的虚拟机资源来确定计算节点的静态权重因子。静态权重因子计算的依据是预先分配的虚拟机资源,而不是实时检测得到的虚拟机资源。
在本实施方式中,可以按照下述公式确定计算节点的静态权重因子:
其中,ωs表示计算节点的静态权重因子;Rs表示在计算节点上预先分配的虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rs当前表示当前虚拟机资源预先分配的数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率;β上限表示计算节点的上限综合资源使用率。
在本实施方式中,上述的下限综合资源使用率以及上限综合资源使用率均可以为云计算集群的管理员预先设定的。
由上式可见,根据本发明方案计算得到的静态权重因子,不仅考虑了计算节点上预先分配的各个虚拟机的资源,同时通过所述综合资源使用率,还考虑了计算节点的运行状态,这样,所述静态权重因子能够更加准确地表征各个计算节点能够承载负载的能力。
在本发明一优选实施方式中,当前虚拟机资源的权重因子可以通过下式进行确定:
其中,W当前表示当前虚拟机资源的权重配值;Wi表示计算节点上分配的第i种虚拟机资源的权重配值;N表示虚拟机资源的数量。
由上式可见,本发明该实施方式中,综合考虑了计算节点上分配的各个虚拟机资源,从而可以确定某一个虚拟机资源对应的权重因子,这样求得的权重因子能够更加准确地表征该虚拟机资源在所有虚拟机资源中所占的比重。
由于不同的计算节点能够承载的负载不同,因此预先分配的虚拟机资源往往与计算节点本身的运行能力不符。因此,在本实施方式中,可以根据所述静态权重因子的大小,在活跃计算节点中将预先分配的虚拟机资源进行调度,即在活跃计算节点中进行负载均衡。
具体地,在本发明一优选实施方式中,所述第一调度单元40具体包括:
权重阈值设置模块41,用于预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;
计算节点集提取模块42,用于从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集,从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;
资源调度模块43,用于将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
在本发明一优选实施方式中,考虑到在计算节点上预先分配的虚拟机资源往往与虚拟机实际运行所需的资源不同,因此,在本发明该实施方式中,可以针对计算节点上实时运行的虚拟机资源来对计算节点上的资源进行调度。具体地,在本发明一优选实施方式中,所述装置还包括:
实时资源获取单元50,用于获取各计算节点上的实时虚拟机资源;
动态权重因子确定单元60,用于根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
第二调度单元70,用于根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
在本实施方式中,所述实时资源获取单元50可以通过访问计算节点的API(Application Programming Interface,应用程序编程接口),以获取各个计算节点当前实时运行的虚拟机资源。那么,所述动态权重因子确定单元60基于计算节点上的实时虚拟机资源以及所述综合资源使用率,可以确定计算节点的动态权重因子。在本实施方式中,可以按照下述公式确定计算节点的动态权重因子:
其中,ωd表示计算节点的动态权重因子;Rd表示在计算节点上的实时虚拟机资源;ω当前表示当前虚拟机资源的权重因子;Rd当前表示当前虚拟机资源的实时数据量;R最小表示当前虚拟机资源最小的数据量;R最大表示当前虚拟机资源最大的数据量;ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;β当前表示计算节点当前的综合资源使用率;β下限表示计算节点的下限综合资源使用率,β上限表示计算节点的上限综合资源使用率。
在本实施方式中,所述下限综合资源使用率以及上限综合资源使用率均可以为云计算集群的管理员预先设定的。
由上式可见,根据本发明方案计算得到的动态权重因子,由于是根据计算节点上实时检测的虚拟机资源进行确定的,因此能够更加准确地反映当前计算节点能够承载负载的能力。这样,在本实施方式的后续步骤中,所述第二调度单元70可以基于计算的所述动态权重因子,对所述活跃计算节点重新进行排序,并根据排序结果对实时的虚拟机资源进行调度。
在现有技术中处理空闲计算节点时,往往将空闲计算节点的物理机关闭或直接进入节电模式,那么在后续有线上请求时再开启计算节点以提供服务。但由于对空闲计算节点进行开启和关闭的电源管理系统往往与云计算的集群管理系统相独立,因此难以预知线上请求的时间及期望。那么在大压力需求的极端情况下,会存在部分连续的线上请求无法响应的情况,导致用户体验急剧下降。
鉴于此,在本发明一优选实施方式中,所述装置还包括:
数量阈值设置单元80,用于预先设置空闲计算节点的数量阈值;
电源管理单元90,用于如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
需要说明的是,上述各个功能模块的具体实现方式均与方法实施方式中的描述一致,这里便不再赘述。
由上可见,本发明实施例通过引入综合资源使用率,从而根据综合资源使用率,确定计算节点的权重因子,在根据计算节点的权重因子进行资源调度时,能够使得调度的结果更加符合计算节点本身的性能,从而实现了准确地对云计算集群中的计算节点进行负载均衡。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (12)
1.一种云计算集群资源的调度方法,其特征在于,所述云计算集群中包括多个计算节点,在各计算节点上预先分配虚拟机资源,所述方法包括:
确定各计算节点的综合资源使用率;
根据所述综合资源使用率,确定各计算节点的静态权重因子;
根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点,并在所述活跃计算节点中进行虚拟机资源调度。
2.根据权利要求1所述的方法,其特征在于,所述确定各计算节点的综合资源使用率的公式为:
<mrow>
<mi>&beta;</mi>
<mo>=</mo>
<mfrac>
<msub>
<mi>&omega;</mi>
<mi>c</mi>
</msub>
<mrow>
<msub>
<mi>&omega;</mi>
<mi>c</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&omega;</mi>
<mi>r</mi>
</msub>
</mrow>
</mfrac>
<mo>*</mo>
<msub>
<mi>&beta;</mi>
<mi>c</mi>
</msub>
<mo>+</mo>
<mfrac>
<msub>
<mi>&omega;</mi>
<mi>r</mi>
</msub>
<mrow>
<msub>
<mi>&omega;</mi>
<mi>c</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&omega;</mi>
<mi>r</mi>
</msub>
</mrow>
</mfrac>
<mo>*</mo>
<msub>
<mi>&beta;</mi>
<mi>r</mi>
</msub>
</mrow>
其中,β表示计算节点的综合资源使用率;
ωc表示计算节点的中央处理器权重因子;
βc表示计算节点的中央处理器的使用率;
ωr表示计算节点的存储器权重因子;
βr表示计算节点的存储器的使用率。
3.根据权利要求1所述的方法,其特征在于,所述确定各计算节点的静态权重因子的公式为:
其中,ωs表示计算节点的静态权重因子;
Rs表示在计算节点上预先分配的虚拟机资源;
ω当前表示当前虚拟机资源的权重因子;
Rs当前表示当前虚拟机资源预先分配的数据量;
R最小表示当前虚拟机资源最小的数据量;
R最大表示当前虚拟机资源最大的数据量;
ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;
ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;
β当前表示计算节点当前的综合资源使用率;
β下限表示计算节点的下限综合资源使用率;
β上限表示计算节点的上限综合资源使用率。
4.根据权利要求3所述的方法,其特征在于,所述当前虚拟机资源的权重因子的计算公式为:
其中,W当前表示当前虚拟机资源的权重配值;
Wi表示计算节点上分配的第i种虚拟机资源的权重配值;
N表示虚拟机资源的数量。
5.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度,包括:
预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;
从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集;
从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;
将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
6.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:
获取各计算节点上的实时虚拟机资源;
根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
7.根据权利要求6所述的方法,其特征在于,所述确定各计算节点的动态权重因子的公式为:
其中,ωd表示计算节点的动态权重因子;
Rd表示在计算节点上的实时虚拟机资源;
ω当前表示当前虚拟机资源的权重因子;
Rd当前表示当前虚拟机资源的实时数据量;
R最小表示当前虚拟机资源最小的数据量;
R最大表示当前虚拟机资源最大的数据量;
ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;
ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;
β当前表示计算节点当前的综合资源使用率;
β下限表示计算节点的下限综合资源使用率,β上限表示计算节点的上限综合资源使用率。
8.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:
预先设置空闲计算节点的数量阈值;
如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;
如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
9.一种云计算集群资源的调度装置,其特征在于,所述云计算集群中包括多个计算节点,在各计算节点上预先分配虚拟机资源,所述装置包括:
综合资源使用率确定单元,用于确定各计算节点的综合资源使用率;
静态权重因子确定单元,用于根据所述综合资源使用率,确定各计算节点的静态权重因子;
划分单元,用于根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点;
第一调度单元,用于在所述活跃计算节点中进行虚拟机资源调度。
10.根据权利要求9所述的装置,其特征在于,所述第一调度单元包括:
权重阈值设置模块,用于预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;
计算节点集提取模块,用于从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集,从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;
资源调度模块,用于将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
实时资源获取单元,用于获取各计算节点上的实时虚拟机资源;
动态权重因子确定单元,用于根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
第二调度单元,用于根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
12.根据权利要求9所述的装置,其特征在于,所述装置还包括:
数量阈值设置单元,用于预先设置空闲计算节点的数量阈值;
电源管理单元,用于如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610320213.1A CN107370783B (zh) | 2016-05-13 | 2016-05-13 | 一种云计算集群资源的调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610320213.1A CN107370783B (zh) | 2016-05-13 | 2016-05-13 | 一种云计算集群资源的调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107370783A true CN107370783A (zh) | 2017-11-21 |
CN107370783B CN107370783B (zh) | 2019-12-31 |
Family
ID=60304219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610320213.1A Active CN107370783B (zh) | 2016-05-13 | 2016-05-13 | 一种云计算集群资源的调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107370783B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108718338A (zh) * | 2018-05-23 | 2018-10-30 | 深圳市茁壮网络股份有限公司 | 一种节点确定方法及装置 |
CN110474940A (zh) * | 2018-05-10 | 2019-11-19 | 北京金山安全软件有限公司 | 请求调度方法、装置、电子设备、及介质 |
CN111597023A (zh) * | 2020-05-12 | 2020-08-28 | 湖北美和易思教育科技有限公司 | 一种基于学习状态的集群智能调度方法及装置 |
CN113568746A (zh) * | 2021-07-27 | 2021-10-29 | 北京达佳互联信息技术有限公司 | 负载均衡方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100177709A1 (en) * | 2009-01-09 | 2010-07-15 | Qualcomm Incorporated | Methods and systems for uplink scheduling using weighted qos parameters |
CN103812886A (zh) * | 2012-11-09 | 2014-05-21 | 中国科学院上海高等研究院 | 计算机集群资源分配系统和方法 |
CN104375897A (zh) * | 2014-10-27 | 2015-02-25 | 西安工程大学 | 基于最小相对负载不均衡度的云计算资源调度方法 |
CN105516347A (zh) * | 2015-12-31 | 2016-04-20 | 浙江大华系统工程有限公司 | 一种流媒体服务器的负载均衡调配的方法及装置 |
-
2016
- 2016-05-13 CN CN201610320213.1A patent/CN107370783B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100177709A1 (en) * | 2009-01-09 | 2010-07-15 | Qualcomm Incorporated | Methods and systems for uplink scheduling using weighted qos parameters |
CN103812886A (zh) * | 2012-11-09 | 2014-05-21 | 中国科学院上海高等研究院 | 计算机集群资源分配系统和方法 |
CN104375897A (zh) * | 2014-10-27 | 2015-02-25 | 西安工程大学 | 基于最小相对负载不均衡度的云计算资源调度方法 |
CN105516347A (zh) * | 2015-12-31 | 2016-04-20 | 浙江大华系统工程有限公司 | 一种流媒体服务器的负载均衡调配的方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110474940A (zh) * | 2018-05-10 | 2019-11-19 | 北京金山安全软件有限公司 | 请求调度方法、装置、电子设备、及介质 |
CN108718338A (zh) * | 2018-05-23 | 2018-10-30 | 深圳市茁壮网络股份有限公司 | 一种节点确定方法及装置 |
CN108718338B (zh) * | 2018-05-23 | 2021-06-15 | 深圳市茁壮网络股份有限公司 | 一种节点确定方法及装置 |
CN111597023A (zh) * | 2020-05-12 | 2020-08-28 | 湖北美和易思教育科技有限公司 | 一种基于学习状态的集群智能调度方法及装置 |
CN111597023B (zh) * | 2020-05-12 | 2023-07-07 | 武汉美和易思数字科技有限公司 | 一种基于学习状态的集群智能调度方法及装置 |
CN113568746A (zh) * | 2021-07-27 | 2021-10-29 | 北京达佳互联信息技术有限公司 | 负载均衡方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107370783B (zh) | 2019-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104317658B (zh) | 一种基于MapReduce的负载自适应任务调度方法 | |
CN107346264A (zh) | 一种虚拟机负载均衡调度的方法、装置和服务器设备 | |
CN106790726A (zh) | 一种基于Docker云平台的优先级队列动态反馈负载均衡资源调度方法 | |
CN103729246B (zh) | 一种任务调度方法和装置 | |
CN107370783A (zh) | 一种云计算集群资源的调度方法及装置 | |
CN106598733A (zh) | 一种云计算能耗关键的三维度虚拟资源调度方法 | |
WO2021159638A1 (zh) | 集群队列资源的调度方法、装置、设备及存储介质 | |
CN106199696B (zh) | 地震数据处理系统和方法 | |
CN108572873A (zh) | 一种解决Spark数据倾斜问题的负载均衡方法及装置 | |
CN105808341B (zh) | 一种资源调度的方法、装置和系统 | |
CN107861796A (zh) | 一种支持云数据中心能耗优化的虚拟机调度方法 | |
CN111209077A (zh) | 深度学习框架设计方法 | |
CN109271232A (zh) | 一种基于云计算平台的集群资源分配方法 | |
CN104820616B (zh) | 一种任务调度的方法及装置 | |
CN106919449A (zh) | 一种计算任务的调度控制方法及电子设备 | |
CN103823714A (zh) | 一种基于虚拟化下NUMA节点内存QoS的调节方法及装置 | |
Zhou et al. | Concurrent workflow budget-and deadline-constrained scheduling in heterogeneous distributed environments | |
CN103425536A (zh) | 一种面向分布式系统性能测试的测试资源管理方法 | |
CN106897136A (zh) | 一种任务调度方法及装置 | |
CN108574600B (zh) | 云计算服务器的功耗和资源竞争协同控制的服务质量保障方法 | |
CN105242966A (zh) | 一种面向自主获能异构系统的非精确实时任务调度方法 | |
CN106293947B (zh) | 虚拟化云环境下gpu-cpu混合资源分配系统和方法 | |
CN106326011A (zh) | 云计算中面向资源成本优化的多资源调度方法 | |
Li et al. | A frequency-aware and energy-saving strategy based on DVFS for Spark | |
CN107273527A (zh) | 一种Hadoop集群和分布式系统 |
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 |