CN107370783B - 一种云计算集群资源的调度方法及装置 - Google Patents

一种云计算集群资源的调度方法及装置 Download PDF

Info

Publication number
CN107370783B
CN107370783B CN201610320213.1A CN201610320213A CN107370783B CN 107370783 B CN107370783 B CN 107370783B CN 201610320213 A CN201610320213 A CN 201610320213A CN 107370783 B CN107370783 B CN 107370783B
Authority
CN
China
Prior art keywords
virtual machine
computing
representing
node
computing nodes
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
Application number
CN201610320213.1A
Other languages
English (en)
Other versions
CN107370783A (zh
Inventor
张伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201610320213.1A priority Critical patent/CN107370783B/zh
Publication of CN107370783A publication Critical patent/CN107370783A/zh
Application granted granted Critical
Publication of CN107370783B publication Critical patent/CN107370783B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols 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 (11)

1.一种云计算集群资源的调度方法,其特征在于,所述云计算集群中包括多个计算节点,在各计算节点上预先分配虚拟机资源,所述方法包括:
根据各计算节点的至少两种资源的使用率,确定各计算节点的综合资源使用率;
根据所述综合资源使用率,确定各计算节点的静态权重因子;
根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点,并在所述活跃计算节点中进行虚拟机资源调度;
其中,所述确定各计算节点的静态权重因子的公式为:
其中,ωs表示计算节点的静态权重因子;
Rs表示在计算节点上预先分配的虚拟机资源;
ω当前表示当前虚拟机资源的权重因子;
Rs当前表示当前虚拟机资源预先分配的数据量;
R最小表示当前虚拟机资源最小的数据量;
R最大表示当前虚拟机资源最大的数据量;
ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;
ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;
β当前表示计算节点当前的综合资源使用率;
β下限表示计算节点的下限综合资源使用率;
β上限表示计算节点的上限综合资源使用率。
2.根据权利要求1所述的方法,其特征在于,所述确定各计算节点的综合资源使用率的公式为:
其中,β表示计算节点的综合资源使用率;
ωc表示计算节点的中央处理器权重因子;
βc表示计算节点的中央处理器的使用率;
ωr表示计算节点的存储器权重因子;
βr表示计算节点的存储器的使用率。
3.根据权利要求1所述的方法,其特征在于,所述当前虚拟机资源的权重因子的计算公式为:
其中,W当前表示当前虚拟机资源的权重配值;
Wi表示计算节点上分配的第i种虚拟机资源的权重配值;
N表示虚拟机资源的数量。
4.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度,包括:
预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;
从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集;
从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;
将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
5.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:
获取各计算节点上的实时虚拟机资源;
根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
6.根据权利要求5所述的方法,其特征在于,所述确定各计算节点的动态权重因子的公式为:
其中,ωd表示计算节点的动态权重因子;
Rd表示在计算节点上的实时虚拟机资源;
ω当前表示当前虚拟机资源的权重因子;
Rd当前表示当前虚拟机资源的实时数据量;
R最小表示当前虚拟机资源最小的数据量;
R最大表示当前虚拟机资源最大的数据量;
ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;
ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;
β当前表示计算节点当前的综合资源使用率;
β下限表示计算节点的下限综合资源使用率,β上限表示计算节点的上限综合资源使用率。
7.根据权利要求1所述的方法,其特征在于,在所述活跃计算节点中进行虚拟机资源调度之后,所述方法还包括:
预先设置空闲计算节点的数量阈值;
如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;
如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
8.一种云计算集群资源的调度装置,其特征在于,所述云计算集群中包括多个计算节点,在各计算节点上预先分配虚拟机资源,所述装置包括:
综合资源使用率确定单元,用于根据各计算节点的至少两种资源的使用率,确定各计算节点的综合资源使用率;
静态权重因子确定单元,用于根据所述综合资源使用率,确定各计算节点的静态权重因子;
划分单元,用于根据所述静态权重因子,确定云计算集群中为活跃计算节点的计算节点;
第一调度单元,用于在所述活跃计算节点中进行虚拟机资源调度;
其中,所述确定各计算节点的静态权重因子的公式为:
其中,ωs表示计算节点的静态权重因子;
Rs表示在计算节点上预先分配的虚拟机资源;
ω当前表示当前虚拟机资源的权重因子;
Rs当前表示当前虚拟机资源预先分配的数据量;
R最小表示当前虚拟机资源最小的数据量;
R最大表示当前虚拟机资源最大的数据量;
ω使用下限表示计算节点上的虚拟机资源的使用下限权重因子;
ω使用上限表示计算节点上的虚拟机资源的使用上限权重因子;
β当前表示计算节点当前的综合资源使用率;
β下限表示计算节点的下限综合资源使用率;
β上限表示计算节点的上限综合资源使用率。
9.根据权利要求8所述的装置,其特征在于,所述第一调度单元包括:
权重阈值设置模块,用于预先设置第一权重阈值和第二权重阈值,所述第一权重阈值大于所述第二权重阈值;
计算节点集提取模块,用于从所述活跃计算节点中提取静态权重因子大于或等于所述第一权重阈值的计算节点组成第一计算节点集,从所述活跃计算节点中提取静态权重因子小于所述第二权重阈值的计算节点组成第二计算节点集;
资源调度模块,用于将所述第二计算节点集中的计算节点上的虚拟机资源调度至所述第一计算节点集中的计算节点上。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
实时资源获取单元,用于获取各计算节点上的实时虚拟机资源;
动态权重因子确定单元,用于根据所述实时虚拟机资源以及所述综合资源使用率,确定各计算节点的动态权重因子;
第二调度单元,用于根据所述动态权重因子,进行活跃计算节点中实时虚拟机资源的调度。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括:
数量阈值设置单元,用于预先设置空闲计算节点的数量阈值;
电源管理单元,用于如果当前空闲计算节点的数量大于所述数量阈值,通过关闭空闲计算节点达到当前空闲计算节点的数量与所述数量阈值相同;如果所述当前空闲计算节点的数量小于所述数量阈值,通过开启处于关闭状态的计算节点达到当前空闲计算节点的数量与所述数量阈值相同。
CN201610320213.1A 2016-05-13 2016-05-13 一种云计算集群资源的调度方法及装置 Active CN107370783B (zh)

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 CN107370783A (zh) 2017-11-21
CN107370783B true 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)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110474940B (zh) * 2018-05-10 2023-01-13 超级魔方(北京)科技有限公司 请求调度方法、装置、电子设备、及介质
CN108718338B (zh) * 2018-05-23 2021-06-15 深圳市茁壮网络股份有限公司 一种节点确定方法及装置
CN111597023B (zh) * 2020-05-12 2023-07-07 武汉美和易思数字科技有限公司 一种基于学习状态的集群智能调度方法及装置
CN113568746B (zh) * 2021-07-27 2024-01-02 北京达佳互联信息技术有限公司 负载均衡方法、装置、电子设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8842676B2 (en) * 2009-01-09 2014-09-23 Qualcomm Incorporated Methods and systems for uplink scheduling using weighted QoS parameters
CN103812886B (zh) * 2012-11-09 2018-04-17 中国科学院上海高等研究院 计算机集群资源分配系统和方法
CN104375897B (zh) * 2014-10-27 2018-02-27 西安工程大学 基于最小相对负载不均衡度的云计算资源调度方法
CN105516347B (zh) * 2015-12-31 2019-03-26 浙江大华系统工程有限公司 一种流媒体服务器的负载均衡调配的方法及装置

Also Published As

Publication number Publication date
CN107370783A (zh) 2017-11-21

Similar Documents

Publication Publication Date Title
CN109597685B (zh) 任务分配方法、装置和服务器
CN112162865B (zh) 服务器的调度方法、装置和服务器
CN104102543B (zh) 一种云计算环境中负载调整的方法和装置
CN107370783B (zh) 一种云计算集群资源的调度方法及装置
WO2021136137A1 (zh) 一种资源调度方法、装置及相关设备
WO2021159638A1 (zh) 集群队列资源的调度方法、装置、设备及存储介质
CN105389211B (zh) 适用于numa架构的内存分配方法及延时感知-内存分配装置
CN107220108B (zh) 一种实现云数据中心负载均衡的方法和系统
CN111225050B (zh) 云计算资源分配方法及装置
CN104298550A (zh) 一种面向Hadoop的动态调度方法
US9807008B2 (en) Tournament scheduling
CN107861796A (zh) 一种支持云数据中心能耗优化的虚拟机调度方法
CN103488538B (zh) 云计算系统中的应用扩展装置和应用扩展方法
CN104753977A (zh) 基于模糊聚类的地震处理解释基础设施云资源调度方法
CN113568759B (zh) 一种基于云计算的大数据处理方法及其系统
JP2013196695A (ja) 仮想マシン割り当てシステム及びその方法
CN112948113A (zh) 一种集群资源管理调度方法、装置、设备及可读存储介质
CN110413393B (zh) 集群资源管理方法、装置、计算机集群及可读存储介质
CN111475251A (zh) 一种集群容器调度方法、系统、终端及存储介质
CN109144664B (zh) 一种基于用户服务质量需求差异的虚拟机动态迁移方法
CN107341060B (zh) 一种虚拟机内存分配方法和装置
CN114201306B (zh) 基于负载均衡技术的多维地理空间实体分布方法及系统
CN115712487A (zh) 资源的调度方法及装置
US20140047454A1 (en) Load balancing in an sap system
CN115842828A (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
GR01 Patent grant
GR01 Patent grant