CN113641461A - Kvm虚拟化系统资源配置方法、介质及系统 - Google Patents
Kvm虚拟化系统资源配置方法、介质及系统 Download PDFInfo
- Publication number
- CN113641461A CN113641461A CN202111194990.3A CN202111194990A CN113641461A CN 113641461 A CN113641461 A CN 113641461A CN 202111194990 A CN202111194990 A CN 202111194990A CN 113641461 A CN113641461 A CN 113641461A
- Authority
- CN
- China
- Prior art keywords
- resources
- virtual machine
- resource
- virtualization system
- reserved
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及云计算技术领域,特别涉及一种KVM虚拟化系统资源配置方法,首先把虚拟化系统的可分配资源分为预留资源和剩余待分配资源,将预留资源设置为使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和,而不是维持虚拟机正常工作的最低限度的资源数量,如此则可以满足待机状态下资源占有率高或者从待机状态重启所需资源量大的虚拟机,尽可能保证虚拟化系统下的全部虚拟机能够顺利运行。
Description
技术领域
本发明涉及云计算技术领域,特别涉及一种KVM虚拟化系统资源配置方法、系统和计算机可读存储介质,计算机可读存储介质被处理器执行时能实现KVM虚拟化系统资源配置方法。
背景技术
虚拟化技术就是将底层的资源进行分区,然后对上层提供多样的执行环境,从而提高资源利用率。虚拟化技术主要应用于两个方面,一是在高性能硬件资源上运行多个虚拟机;二是将多个性能较低的硬件通过虚拟化技术抽象成一个巨大的资源池,这种方式常见于云计算中。根本上来说,这两种方式都是为了最大限度的利用硬件资源,防止资源浪费。
在虚拟化环境下,虚拟资源的配置方式分为静态分配模式和动态分配模式。为了获得更好的服务质量,在静态分配模式下,用户会申请具有足够资源量的虚拟机来保证应用性能;而在动态分配模式下,系统会依据资源使用历史峰值等数据来调整资源分配,动态分配模式更利于提升云计算中资源的利用率。
以虚拟化系统CPU资源的配置为例,在动态分配模式下,基于虚拟化系统运行成本等问题考虑,虚拟化系统能提供的物理CPU核数往往不能覆盖全部虚拟机所需要的最大vCPU核数,这就导致虚拟化系统为各个虚拟机配置资源时可能出现分配不合适,导致部分虚拟机无法正常运行的问题。
发明内容
本发明所要解决的技术问题是提供一种KVM虚拟化系统资源配置方法,存储有被执行时实现上述方法的计算机程序的计算机可读存储介质,包括该存储介质的系统,该方法能够实现KVM虚拟化系统资源配置。
提供一种KVM虚拟化系统资源配置方法,虚拟化系统的可分配资源包括各个虚拟机的预留资源和剩余待分配资源,虚拟机的所述预留资源是指:使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和;把所述预留资源分配给各个虚拟机,把所述剩余待分配资源按预设的分配逻辑进行分配。
优选地,判断所述预留资源的资源数量是否小于该虚拟机维持工作状态的最低限度的资源数量,若判断结果为是则把该虚拟机维持工作状态的最低限度的资源数量作为该虚拟机的预留资源。
优选地,判断所述预留资源的资源数量是否小于该虚拟机从启动到维持工作状态所需资源数量,若判断结果为是则把该虚拟机从启动到维持工作状态所需资源数量作为该虚拟机的预留资源的最低限度的资源数量。
优选地,所述虚拟化系统资源是指CPU资源。
优选地,所述从待机状态进入工作状态所需的资源数量具体的,记录虚拟机多次从待机状态进入工作状态的历史CPU占用数据,以记录中的最大值作为所述的所需的资源数量。
还提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时能够实现上述KVM虚拟化系统资源配置方法。
还提供一种系统,包括物理机、多个虚拟机以及处理器,物理机的资源被分配给这多个虚拟机,处理器内预先存储有上述计算机可读存储介质,该计算机可读存储介质上的计算机程序可被处理器执行。
有益效果:该自动化的KVM虚拟化系统资源配置方法,首先把虚拟化系统的可分配资源分为预留资源和剩余待分配资源,将预留资源设置为使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和,而不是维持虚拟机正常工作的最低限度的资源数量,如此则可以满足待机状态下资源占有率高或者从待机状态重启所需资源量大的虚拟机,尽可能保证虚拟化系统下的全部虚拟机能够顺利运行。
具体实施方式
以下结合具体实施方式对本发明创造作进一步详细说明。
基于内核的虚拟机KVM(Kernel-based Virtual Machine)是包含虚拟化拓展的x86 硬件的全虚拟化解决方案,KVM属于 Linux 内核中的一个模块,其通过在内核添加模块,实现对虚拟机的管理。本实施例的虚拟化系统采用动态资源分配方法,在初始时通过如下详述的虚拟化系统资源配置方法管理多个虚拟机KVM,为其分配虚拟资源。
虚拟化系统的可分配资源包括各个虚拟机的预留资源和剩余待分配资源,虚拟机的预留资源是指:使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和;虚拟化系统按照各个虚拟机自身计算的预留资源数量把预留资源分配给各个虚拟机,然后把剩余待分配资源按预设的分配逻辑进行分配。该自动化的KVM虚拟化系统资源配置方法,将预留资源设置为使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和,而不是维持虚拟机正常工作的最低限度的资源数量,如此则可以满足待机状态下资源占有率高或者从待机状态重启所需资源量大的虚拟机,尽可能保证虚拟化系统下的全部虚拟机能够顺利运行。
其中,对于每个虚拟机,虚拟机系统都判断预留资源的资源数量是否小于该虚拟机维持工作状态的最低限度的资源数量,或者是否小于该虚拟机从启动到维持工作状态所需资源数量,如果两者中有任一判断结果为是或者两者判断结果都为是,那么就把三个资源数量中的最大值作为该虚拟机实际需要的预留资源。这两个判断步骤能够保证虚拟化系统给虚拟机分配的资源数量满足其所需的最大限度的资源数量。
优选地,虚拟机系统中各个虚拟机的重要程度不一致,因此,各个虚拟机的资源分配逻辑把预留资源分配给各个虚拟机后,再把剩余待分配资源按预设的分配逻辑进行分配。
以虚拟化系统的CPU资源为例,虚拟化系统的总核数 = 物理CPU个数*每颗物理CPU的核数;总逻辑CPU数 = 物理CPU个数*每颗物理CPU的核数*超线程数。
假设物理机实际有N个核,那么总CPU资源TCPU= N * 100%。
虚拟化系统共有m个虚拟机,一个虚拟机配置有X_i个vCPU(虚拟CPU),i=1,2,3,…,m,每个虚拟机的每个vCPU作为一个核都需预留Y_i% (最小限定值),i=1,2,3,…,m。那么,每个虚拟机的预留资源T_i=X_i * Y_ i %,i=1,2,3,…,m,虚拟化系统总预留资源Trev为全部虚拟机预留资源T_i的总和,即总预留资源Trev= X_1 * Y_1% +X_2*Y_2% + …+ X_m * Y_m%。各个虚拟机的权重用Z_i表示,i=1,2,3,…,m,总的权重值:Tz= Z_1 + Z_2+ … + Z_m。
比较总预留资源与总CPU需求资源的状态,具体情况如下:
(1)总预留资源Trev大于总CPU资源TCPU,即Trev > TCPU,说明CPU资源不够,配置错误;
(2)总预留资源Trev等于总CPU资源TCPU,即Trev= TCPU,给每个虚拟机分配的资源刚好为预留资源T_i=X_i * Y_ i %;
(3)总预留资源Trev小于总CPU资源TCPU,即Trev < TCPU, 说明在给所有虚拟机预留后还有剩余待分配资源D=TCPU- Trev,在保证各个虚拟机被分配到预留资源的前提下,按预设的分配逻辑进行剩余待分配资源D的分配,具体说明如下。
1.预留优先算法:在保证全部虚拟机预留资源的前提下,剩余待分配资源D再按权重分配给所有虚拟机,最终给各个虚拟机分配的资源= T_i + D/(Z_i / Tz)=X_i*Y_i% +(TCPU-Trev)* (Z_i / Tz)。
2.权重优先算法。
1)各个虚拟机直接按照权重分配计算得到的资源数S_i= TCPU* (Z_i / Tz),i=1,2,3,…,m,如果所有的虚拟机直接按照权重分配计算得到的资源数S_i都大于其预留资源T_i,即TCPU* (Z_i / Tz)>X_i*sY_i%,那么直接按照权重分配全部虚拟机资源。
2)对于按照权重分配计算得到的资源数S_i,如果存在:
A台虚拟机的资源数S_i大于预留资源T_i,这A台虚拟机以i-表示,i-∈i,i=1,2,3,…,m,即(S_i-)>(X_i-)*(Y_i- %);
B台虚拟机的资源数S_i小于预留资源T_i,这B台虚拟机以i`表示,i`∈i,i=1,2,3,…,m,即S_i`<X_i`*Y_i` %;
C台虚拟机的资源数S_i等于预留资源T_i,这C台虚拟机以i_表示,i_∈i,i=1,2,3,…,m,S_i_=X_i_*Y_i_ %(C可以等于0);
将这C台虚拟机的最终分配的全部资源用Tsc表示,那么剩余可用资源Tab= TCPU– Tsc。
其中的B台虚拟机S_i`<X_i`*Y_i` %,这些虚拟机得不到最小限定值的预留资源T_i`,需要补偿的值P _i`=X_i`*Y_i` %- S _i`,补偿后为这B台虚拟机分配的资源为其各自的预留资源T_i`=X_i` * Y_ i` %。这全部B台虚拟机共需要补偿的资源用Tp(B台虚拟机全部补偿的值P _i`的总和)表示。
剩余的A台虚拟机(S_i-)>(X_i-)*(Y_i- %),即这些虚拟机比最小限定值的预留资源T_i-要有富余,富余值(Q_i-)=(S_i-)–(X_i-)*(Y_i- %),总的富余值用Tq(A台虚拟机全部富余值Q_i-的总和)表示。
由于当前是总预留资源Trev小于总CPU资源TCPU,即Trev< TCPU的情况,所以减去分配给C台虚拟机的全部资源Tsc后,剩余可用资源Tab中,总的富余值Tq一定大于总补偿的值Tp,即Tq>Tp一定成立,此时这A台虚拟机各自的权重值(Z_i-)相加得到总的权重值记为Za,i-∈i,i=1,2,3,…,m,那么最终分配给这A台虚拟机各自的资源 =(X_i-)*(Y_i- %)+(Tq - Tp)* ((Z_i-)/ Za)。
如上仅为本发明创造的实施方式,不以此限定专利保护范围。本领域技术人员在本发明创造的基础上作出非实质性的变化或替换,仍落入专利保护范围。
Claims (5)
1.KVM虚拟化系统资源配置方法,其特征是,虚拟化系统的可分配资源包括各个虚拟机的预留资源和剩余待分配资源,虚拟机的所述预留资源是指:使该虚拟机维持待机状态所需的资源数量以及该虚拟机从待机状态进入工作状态所需的资源数量这两者的总和;
各个虚拟机分别判断所述预留资源的资源数量是否小于该虚拟机维持工作状态的最低限度的资源数量,若判断结果为是则把该虚拟机维持工作状态的最低限度的资源数量作为该虚拟机的预留资源;或者,各个虚拟机分别判断所述预留资源的资源数量是否小于该虚拟机从启动到维持工作状态所需资源数量,若判断结果为是则把该虚拟机从启动到维持工作状态所需资源数量作为该虚拟机的预留资源;
把所述预留资源分配给各个虚拟机,把所述剩余待分配资源按预设的分配逻辑进行分配。
2.根据权利要求1所述的KVM虚拟化系统资源配置方法,其特征是,所述虚拟化系统资源是指CPU资源。
3.根据权利要求2所述的KVM虚拟化系统资源配置方法,其特征是,所述从待机状态进入工作状态所需的资源数量具体的,记录虚拟机多次从待机状态进入工作状态的历史CPU占用数据,以记录中的最大值作为所述的所需的资源数量。
4.计算机可读存储介质,其存储有计算机程序,其特征是,所述计算机程序被处理器执行时能够实现权利要求1~3中任一项所述的KVM虚拟化系统资源配置方法。
5.KVM虚拟化系统,包括物理机、多个虚拟机以及处理器,物理机的资源被分配给这多个虚拟机,其特征是,处理器内预先存储有如权利要求4所述的计算机可读存储介质,该计算机可读存储介质上的计算机程序可被处理器执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111194990.3A CN113641461A (zh) | 2021-10-14 | 2021-10-14 | Kvm虚拟化系统资源配置方法、介质及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111194990.3A CN113641461A (zh) | 2021-10-14 | 2021-10-14 | Kvm虚拟化系统资源配置方法、介质及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113641461A true CN113641461A (zh) | 2021-11-12 |
Family
ID=78426770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111194990.3A Pending CN113641461A (zh) | 2021-10-14 | 2021-10-14 | Kvm虚拟化系统资源配置方法、介质及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113641461A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455378A (zh) * | 2013-09-05 | 2013-12-18 | 华为技术有限公司 | 一种虚拟化集群的资源分配方法、装置和系统 |
CN103473115A (zh) * | 2013-09-06 | 2013-12-25 | 华为技术有限公司 | 虚拟机放置方法和装置 |
CN103793278A (zh) * | 2013-09-30 | 2014-05-14 | 中国电子设备系统工程公司研究所 | 一种基于虚拟器件运维规则的资源自动调整方法 |
CN104077191A (zh) * | 2014-07-18 | 2014-10-01 | 广州金山网络科技有限公司 | 一种用于管理内存资源的方法及装置 |
CN104881325A (zh) * | 2015-05-05 | 2015-09-02 | 中国联合网络通信集团有限公司 | 一种资源调度方法和资源调度系统 |
CN106980525A (zh) * | 2017-04-25 | 2017-07-25 | 北京奇虎科技有限公司 | 应用启动方法、装置及移动终端 |
CN107864211A (zh) * | 2017-11-17 | 2018-03-30 | 中国联合网络通信集团有限公司 | 集群资源调度方法及系统 |
CN111124687A (zh) * | 2019-12-30 | 2020-05-08 | 浪潮电子信息产业股份有限公司 | 一种cpu资源预留方法、装置及其相关设备 |
-
2021
- 2021-10-14 CN CN202111194990.3A patent/CN113641461A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455378A (zh) * | 2013-09-05 | 2013-12-18 | 华为技术有限公司 | 一种虚拟化集群的资源分配方法、装置和系统 |
CN103473115A (zh) * | 2013-09-06 | 2013-12-25 | 华为技术有限公司 | 虚拟机放置方法和装置 |
CN103793278A (zh) * | 2013-09-30 | 2014-05-14 | 中国电子设备系统工程公司研究所 | 一种基于虚拟器件运维规则的资源自动调整方法 |
CN104077191A (zh) * | 2014-07-18 | 2014-10-01 | 广州金山网络科技有限公司 | 一种用于管理内存资源的方法及装置 |
CN104881325A (zh) * | 2015-05-05 | 2015-09-02 | 中国联合网络通信集团有限公司 | 一种资源调度方法和资源调度系统 |
CN106980525A (zh) * | 2017-04-25 | 2017-07-25 | 北京奇虎科技有限公司 | 应用启动方法、装置及移动终端 |
CN107864211A (zh) * | 2017-11-17 | 2018-03-30 | 中国联合网络通信集团有限公司 | 集群资源调度方法及系统 |
CN111124687A (zh) * | 2019-12-30 | 2020-05-08 | 浪潮电子信息产业股份有限公司 | 一种cpu资源预留方法、装置及其相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102236603B (zh) | 虚拟化环境中垃圾回收的方法和系统 | |
US9875122B2 (en) | System and method for providing hardware virtualization in a virtual machine environment | |
EP2588957B1 (en) | Cooperative memory resource management via application-level balloon | |
US9183016B2 (en) | Adaptive task scheduling of Hadoop in a virtualized environment | |
CN104508634B (zh) | 虚拟机的动态资源分配 | |
US20100274947A1 (en) | Memory management method, memory management program, and memory management device | |
CN110098946B (zh) | 虚拟化网元设备的部署方法以及装置 | |
CN108462656B (zh) | 基于容器的业务融合部署的资源调度方法及装置 | |
CN102779074B (zh) | 基于内存空洞机制的虚拟机内存资源分配方法 | |
Sharma et al. | Resource deflation: A new approach for transient resource reclamation | |
CN111078363A (zh) | 一种虚拟机的numa节点调度方法、装置、设备及介质 | |
CN105095094A (zh) | 内存管理方法和设备 | |
CN101681268A (zh) | 管理虚拟机存储器的系统、方法和程序 | |
US20220027244A1 (en) | Reserving failover capacity in cloud computing | |
CN103176845A (zh) | 一种虚拟机部署方法、系统和装置 | |
CN106663051A (zh) | 虚拟化计算中的存储器管理 | |
US20140281288A1 (en) | Managing cpu resources for high availability micro-partitions | |
US20210248000A1 (en) | Virtual machine migration to multiple destination nodes | |
US20200241902A1 (en) | Memory scheduler using guest-originated statistics | |
JP2011253334A (ja) | 仮想計算機およびcpu割り当て方法 | |
CN113641461A (zh) | Kvm虚拟化系统资源配置方法、介质及系统 | |
US20200334070A1 (en) | Management of dynamic sharing of central processing units | |
US10621006B2 (en) | Method for monitoring the use capacity of a partitioned data-processing system | |
CN111813564B (zh) | 集群资源管理方法、装置及容器集群管理系统 | |
Ding et al. | Review of virtual memory optimization in cloud environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211112 |
|
RJ01 | Rejection of invention patent application after publication |