CN106055410A - 一种云计算内存资源分配方法 - Google Patents

一种云计算内存资源分配方法 Download PDF

Info

Publication number
CN106055410A
CN106055410A CN201610397591.XA CN201610397591A CN106055410A CN 106055410 A CN106055410 A CN 106055410A CN 201610397591 A CN201610397591 A CN 201610397591A CN 106055410 A CN106055410 A CN 106055410A
Authority
CN
China
Prior art keywords
memory
internal memory
virtual machine
domain0
free
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
Application number
CN201610397591.XA
Other languages
English (en)
Other versions
CN106055410B (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.)
Nanjing Chengyou Information Technology Co ltd
Original Assignee
Nanjing Post and Telecommunication University
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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201610397591.XA priority Critical patent/CN106055410B/zh
Publication of CN106055410A publication Critical patent/CN106055410A/zh
Application granted granted Critical
Publication of CN106055410B publication Critical patent/CN106055410B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种云计算内存资源分配方法,云主机和集群环境的虚拟机在运行过程中,通过Domain0判断内存状态,如果Domain0内存资源足够且集群中各虚拟机的内存资源充足,则进行内存自发调节;如果Domain0内存资源不足,则从其他Domain U中回收内存资源,再进行内存竞价调节;如果集群中虚拟机处于内存资源紧缺,则进行内存竞价调节。

Description

一种云计算内存资源分配方法
技术领域
本发明涉及云计算虚拟机技术领域,尤其涉及云计算内存资源分配方法。
背景技术
云计算主要分为三种服务服务层次:(1)基础设施即服务(IaaS);(2)平台即服务(PaaS);(3)软件即服务(SaaS)。IaaS主要采用系统虚拟化技术,通过虚拟化技术,将一个或多个数据中心的硬件资源虚拟化并形成一个高效灵活的资源池,从而降低基础设施的成本、延缓数据中心扩建的时间,以便于提升整个集群环境的性能。
虚拟技术的引入改变了传统计算机的架构,计算机架构不再是通过系统来分配硬件资源,而是通过虚拟机监控器即Hypervisor来分配硬件资源。虚拟机监控器运行在硬件资源的上一层,它主要包括了对内存、CPU以及I/O设备等资源的虚拟化。从虚拟机监控器角度来看,集群环境中的虚拟机类似于传统计算机架构中的应用程序,而虚拟机监控器像OS一样,为虚拟机分配资源。
云用户可以按需分配和调度资源,从而提高资源的利用率,提升服务质量,并降低云用户的总体拥有成本。但由于物理服务器的资源边界限制了资源的全局优化能力,尤其是内存资源的大小,总是容易成为物理服务器资源的瓶颈,限制云计算的大规模发展。
目前,Xen、VMware、KVM等虽然提供了气球驱动、页面交换和内存共享等机制来动态调整虚拟机的内存,但缺乏对云计算内存资源的实时监测,缺乏从全局角度进行多虚拟机之间的内存协同管理,容易造成过多的性能损失。
发明内容
为了解决上述问题,本发明提供一种云计算内存资源分配方法,采用Xen中的气球驱动机制作为内存调节机制,使用XenStore完成各部分间的数据交互。
一种云计算内存资源分配方法,包括
S1、首先分配内存给Domain0,在Domain0内存足够的前提下,再分配内存给其他Domain U;
S2、若Domain0内存资源足够且集群中各虚拟机的内存资源充足,则进行内存自发调节;若运行过程中,Domain0对内存的需求增多,则从其他Domain U中回收内存资源,再进行内存竞价调节;若集群环境中内存处于紧缺状态,即总内存无法满足所有虚拟机对内存的需求,则进行内存竞价调节。
所述内存自发调节具体是指,
a11、假设Domain 0统计集群环境中虚拟机的数量为N;
a12、将集群环境中的空闲内存Mfree平均分为N+2份,每台虚拟机得到Mfree/(N+2);
a13、将剩下的空闲内存Mfree/(N+2)内存分配给Domain 0。
所述内存竞价调节是指,
a21、Domain0标记集群环境中虚拟机序列为:K=1,2,3,4,5,6…n;
a22、Domain0分配给每台虚拟机的内存大小为:Mk=m1,m2,m3,m4,m5…mn
a23、集群环境中仍待分配的内存记为Sk
a24、Domain0获取Pk(Mk),Pk(Mk)表示分配MK内存给虚拟机VMk获得的性能收益;
a25、设则有
f k * ( S k ) = m a x { f k ( S k , M k ) } , Σ i = k n M k = S k ;
a26、
则有fn(Sn)=max[Pn(Mn)],fn-1(Sn-1)=Pn-1(Mn-1)+fn(Sn),使得P1(M1)+P2(M2)+P3(M3)+…+Pn(Mn)达到最大。
本发明提出了一种云环境下的内存资源分配方法,该方法能够快速响应云环境中的虚拟机对内存需求的动态变化,并且针对不同的内存状态信息,能够采取相应的内存分配方法。通过本发明,内存资源能够被充分的分配给虚拟机,进而提高整个云环境中的性能。
附图说明
图1为本发明实施例云计算内存资源分配方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本实施例部署在Xen环境中,云系统中包括了虚拟机监测模块、物理机监测模块以及消息组织模块和内存分配模块。
Domain 0主要负责虚拟机的创建、管理和配置工作,并完成设备驱动,相对于其他Domain U更加重要。因此,无论是内存紧缺情况还是内存充裕的情况下,都需要优先分配内存给Domain 0。在满足Domain 0内存需要的前提下,再考虑其他Domain U对内存的需求。
虚拟机监测模块:部署在虚拟机中,用于监视虚拟机中内存的占用情况,及虚拟机的性能信息,并预估下一阶段将需要占用多大内存以及占用所得内存带来的性能收益值。
物理机监测模块:部署Domain 0上,用来监测物理机主机中的总内存值和空闲内存值,以及运行的所有客户操作系统的最大内存信息。
消息组织模块:主要将监视模块获得的信息组织成预定义格式的消息,再将消息发送给Domain0。
内存分配模块:部署在Domain 0上,针对不同内存状态信息,调用不同的内存分配方法。当Domain O内存需求无法满足时,从其他Domain U中回收内存,并进行全局竞价调节;当Domain 0满足后,若内存处于紧缺状态,Domain 0采取全局竞价调节方法;当Domain0满足内存需求后,若内存处于充裕状态,则采取自发调节方法。
如图1所示,云主机和集群中的虚拟机在运行过程中,通过Domain0获取集群环境中的信息如虚拟机数量、总内存大小及已占用的内存大小,虚拟机监视器和物理机监视器读取本地内存信息和虚拟机性能信息,消息组织模块将监视器获得的信息按照预定义的格式发送给Domain0。Domain0判断内存状态,如果Domain0内存资源足够且集群中各虚拟机的内存资源充足,则进行内存自发调节;如果Domain0内存资源不足,则从其他Domain U中回收内存资源,再进行内存竞价调节;如果集群中虚拟机处于内存资源紧缺,则进行内存竞价调节。分配好内存资源后,程序得以继续运行。
内存自发调节的过程为:假设Domain 0统计集群环境中虚拟机的数量为N;将集群环境中的空闲内存Mfree平均分为N+2份,每台虚拟机得到Mfree/(N+2)内存;将剩下的空闲内存Mfree/(N+2)内存分配给Domain 0。
内存竞价调节的过程为:Domain0标记集群环境中虚拟机序列为:K=1,2,3,4,5,6…n;、Domain0分配给每台虚拟机的内存大小为:Mk=m1,m2,m3,m4,m5…mn;Domian0获取仍待分配的内存Sk;Domain0获取Pk(Mk),Pk(Mk)表示分配MK内存给虚拟机VMk获得的性能收益;设则有 则有fn(Sn)=max[Pn(Mn)],fn-1(Sn-1)=Pn-1(Mn-1)+fn(Sn),使得P1(M1)+P2(M2)+P3(M3)+…+Pn(Mn)达到最大。
本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

Claims (3)

1.一种云计算内存资源分配方法,其特征在于,包括
S1、首先分配内存给Domain0,在Domain0内存足够的前提下,再分配内存给其他DomainU;
S2、若Domain0内存资源足够且集群中各虚拟机的内存资源充足,则进行内存自发调节;若运行过程中,Domain0对内存的需求增多,则从其他DomainU中回收内存资源,再进行内存竞价调节;若集群环境中内存处于紧缺状态,即总内存无法满足所有虚拟机对内存的需求,则进行内存竞价调节。
2.根据权利要求1所述的云计算内存资源分配方法,其特征在于:所述内存自发调节具体是指,
a11、假设Domain 0统计集群环境中虚拟机的数量为N;
a12、将集群环境中的空闲内存Mfree平均分为N+2份,每台虚拟机得到Mfree/(N+2);
a13、将剩余空闲内存2*Mfree/(N+2)分配给Domain 0。
3.根据权利要求1所述的云计算内存资源分配方法,其特征在于:所述内存竞价调节是指,
a21、Domain0标记集群环境中虚拟机序列为:K=1,2,3,4,5,6…n;
a22、Domain0分配给每台虚拟机的内存大小为:Mk=m1,m2,m3,m4,m5…mn
a23、集群环境中仍待分配的内存记为Sk
a24、Domain0获取Pk(Mk),Pk(Mk)表示分配MK内存给虚拟机VMk获得的性能收益;
a25、设则有
a26、
则有fn(Sn)=max[Pn(Mn)],fn-1(Sn-1)=Pn-1(Mn-1)+fn(Sn),使得P1(M1)+P2(M2)+P3(M3)+…+Pn(Mn)达到最大。
CN201610397591.XA 2016-06-07 2016-06-07 一种云计算内存资源分配方法 Active CN106055410B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610397591.XA CN106055410B (zh) 2016-06-07 2016-06-07 一种云计算内存资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610397591.XA CN106055410B (zh) 2016-06-07 2016-06-07 一种云计算内存资源分配方法

Publications (2)

Publication Number Publication Date
CN106055410A true CN106055410A (zh) 2016-10-26
CN106055410B CN106055410B (zh) 2019-05-21

Family

ID=57170481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610397591.XA Active CN106055410B (zh) 2016-06-07 2016-06-07 一种云计算内存资源分配方法

Country Status (1)

Country Link
CN (1) CN106055410B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776048A (zh) * 2017-01-24 2017-05-31 郑州云海信息技术有限公司 一种实时虚拟机内存调度方法及装置
CN108958891A (zh) * 2018-07-26 2018-12-07 郑州云海信息技术有限公司 一种虚拟机内存分配方法、装置及终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567077A (zh) * 2011-12-15 2012-07-11 杭州电子科技大学 一种基于博弈论的虚拟化资源分配方法
CN102779074A (zh) * 2012-06-18 2012-11-14 中国人民解放军国防科学技术大学 基于内存空洞机制的虚拟机内存资源分配方法
CN103365700A (zh) * 2013-06-28 2013-10-23 福建师范大学 一种面向云计算虚拟化环境的资源监测和调整系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567077A (zh) * 2011-12-15 2012-07-11 杭州电子科技大学 一种基于博弈论的虚拟化资源分配方法
CN102779074A (zh) * 2012-06-18 2012-11-14 中国人民解放军国防科学技术大学 基于内存空洞机制的虚拟机内存资源分配方法
CN103365700A (zh) * 2013-06-28 2013-10-23 福建师范大学 一种面向云计算虚拟化环境的资源监测和调整系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张伟哲 等: ""云计算平台中多虚拟机内存协同优化策略研究"", 《计算机学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776048A (zh) * 2017-01-24 2017-05-31 郑州云海信息技术有限公司 一种实时虚拟机内存调度方法及装置
CN108958891A (zh) * 2018-07-26 2018-12-07 郑州云海信息技术有限公司 一种虚拟机内存分配方法、装置及终端
CN108958891B (zh) * 2018-07-26 2022-02-18 郑州云海信息技术有限公司 一种虚拟机内存分配方法、装置及终端

Also Published As

Publication number Publication date
CN106055410B (zh) 2019-05-21

Similar Documents

Publication Publication Date Title
US10467725B2 (en) Managing access to a resource pool of graphics processing units under fine grain control
CN104991830B (zh) 基于服务等级协议的yarn资源分配和节能调度方法及系统
US10275851B1 (en) Checkpointing for GPU-as-a-service in cloud computing environment
CN107038069B (zh) Hadoop平台下动态标签匹配DLMS调度方法
CN109144710B (zh) 资源调度方法、装置及计算机可读存储介质
US9268394B2 (en) Virtualized application power budgeting
EP3073374B1 (en) Thread creation method, service request processing method and related device
US9946563B2 (en) Batch scheduler management of virtual machines
US20170242717A1 (en) Methods and systems to determine and improve cost efficiency of virtual machines
CN108337109B (zh) 一种资源分配方法及装置和资源分配系统
US9239765B2 (en) Application triggered state migration via hypervisor
US8656387B2 (en) Method and system for workload distributing and processing across a network of replicated virtual machines
US20140201753A1 (en) Scheduling mapreduce jobs in a cluster of dynamically available servers
US20170024251A1 (en) Scheduling method and apparatus for distributed computing system
CN103530170A (zh) 在虚拟机环境中提供硬件虚拟化的系统和方法
CN102521055B (zh) 一种虚拟机资源分配方法及其系统
US10002016B2 (en) Configuration of virtual machines in view of response time constraints
WO2023050819A1 (zh) 片上系统、虚拟机任务处理方法及设备、存储介质
WO2015032201A1 (zh) 虚拟机放置方法和装置
CN107357641A (zh) 一种云计算中任务调度方法
US10248464B2 (en) Providing additional memory and cache for the execution of critical tasks by folding processing units of a processor complex
CN106815067B (zh) 带i/o虚拟化的虚拟机在线迁移方法、装置
CN107992351B (zh) 一种硬件资源分配方法及装置、电子设备
US20190065257A1 (en) Adjustment of the number of central processing units to meet performance requirements of an i/o resource
CN106055410B (zh) 一种云计算内存资源分配方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: No. 66, New Model Road, Gulou District, Nanjing City, Jiangsu Province, 210000

Applicant after: NANJING University OF POSTS AND TELECOMMUNICATIONS

Address before: 210023 9 Wen Yuan Road, Qixia District, Nanjing, Jiangsu.

Applicant before: NANJING University OF POSTS AND TELECOMMUNICATIONS

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230105

Address after: 210000-005, floor 4, building 6, No. 6, Fengxin Road, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee after: Nanjing Chengyou Information Technology Co.,Ltd.

Address before: No. 66, New Model Road, Gulou District, Nanjing City, Jiangsu Province, 210000

Patentee before: NANJING University OF POSTS AND TELECOMMUNICATIONS

TR01 Transfer of patent right