【技术实现步骤摘要】
一种基于三层架构的Docker与虚拟机初始放置方法
本专利技术涉及一种基于三层架构(Docker-VM-PM,简称“DVP”)的Docker与虚拟机初始放置方法,适用于解决数据中心资源利用率的优化问题。
技术介绍
近年来,云计算技术迅猛发展,数据中心急剧扩张,随之带来了严重的能量消耗以及高昂的运营成本。资料显示,数据中心能量消耗与物理服务器的资源利用率密切相关,故提升数据中心各服务器资源利用率,减少激活态物理服务器数量成为降低数据中心能量消耗与运营成本的关键策略。工业及学术界主要利用虚拟机技术实现物理资源的细粒度分配。因此如何合理地进行虚拟机放置进而提升物理资源利用率并降低能量消耗成为当前研究热点。随着Docker技术的成熟发展,PaaS云服务实现方式由以VM为主的VM-PM两层架构逐渐转变为以Docker容器为主的Docker-VM-PM三层架构,更细粒度地分配物理资源。现阶段针对服务器资源利用率的优化研究主要聚焦在Docker-VM/PM框架下对Docker放置的研究和VM-PM架构下对虚拟机放置的研究。Docker的放置可看作装箱过程,是研究如何根据资源需求给装箱对象(Docker)选择合适的箱子(虚拟机或物理机)。虚拟机放置包括虚拟机放置位置决策与基于虚拟机在线迁移技术的放置位置变换。根据应用场景不同,虚拟机放置位置决策分为虚拟机初始放置和虚拟机聚合放置的位置决策。其中,虚拟机的初始放置是研究如何在一个没有负载的云数据中心,根据虚拟化的类型对资源的请求选择合适的目标物理机的过程,也可描述为以虚拟机为装箱对象,以服务器为箱子的在线装箱问题,或者变种的 ...
【技术保护点】
1.一种基于三层架构的Docker与虚拟机初始放置方法,其特征在于,包括以下步骤:步骤1,建立基于Docker‑VM‑PM三层架构的Docker与虚拟机放置约束模型,Docker‑VM‑PM简称为DVP,虚拟机放置简称为DVMP,将DVP三层架构下的Docker到虚拟机和虚拟机到服务器的放置问题描述为两层矢量协同装箱问题,以Docker作为虚拟机及服务器的实际负载,合理性限制虚拟机放置方案;步骤2,基于DVMP约束模型,在DVP三层架构下面向服务器资源利用率优化建立Docker与虚拟机初始放置模型,简称DVMP初始放置模型;步骤3,数据中心新增场景初始化及VM筛选,采用均匀分布的随机函数初始化数据中心VMs及PMs的配置和数量,算法开始后,根据新增容器的CPU、内存资源请求,在数据中心所有虚拟机中筛选出同时满足DVMP初始放置模型全部约束条件的虚拟机序列;步骤4,设计最优VM适应度函数及最优VM选择,根据设计好的最优VM适应度函数计算虚拟机序列中各虚拟机的适应度,并基于BF原则选择适应度值最大的虚拟机作为该容器的最优虚拟机放入;步骤5,设计最小VM计算规则及PM筛选,以新增容器所需CP ...
【技术特征摘要】
1.一种基于三层架构的Docker与虚拟机初始放置方法,其特征在于,包括以下步骤:步骤1,建立基于Docker-VM-PM三层架构的Docker与虚拟机放置约束模型,Docker-VM-PM简称为DVP,虚拟机放置简称为DVMP,将DVP三层架构下的Docker到虚拟机和虚拟机到服务器的放置问题描述为两层矢量协同装箱问题,以Docker作为虚拟机及服务器的实际负载,合理性限制虚拟机放置方案;步骤2,基于DVMP约束模型,在DVP三层架构下面向服务器资源利用率优化建立Docker与虚拟机初始放置模型,简称DVMP初始放置模型;步骤3,数据中心新增场景初始化及VM筛选,采用均匀分布的随机函数初始化数据中心VMs及PMs的配置和数量,算法开始后,根据新增容器的CPU、内存资源请求,在数据中心所有虚拟机中筛选出同时满足DVMP初始放置模型全部约束条件的虚拟机序列;步骤4,设计最优VM适应度函数及最优VM选择,根据设计好的最优VM适应度函数计算虚拟机序列中各虚拟机的适应度,并基于BF原则选择适应度值最大的虚拟机作为该容器的最优虚拟机放入;步骤5,设计最小VM计算规则及PM筛选,以新增容器所需CPU、内存资源为基准,从数据中心可选的虚拟机模板中选择能够容载该容器的最小虚拟机,根据最小虚拟机资源需求筛选出满足约束的激活态服务器序列;步骤6,设计最优PM适应度函数及最优PM选择,若筛选出的激活态服务器序列为空,则开启新的服务器,否则根据服务器适应度函数依次计算服务器序列中各服务器的适应度,依据BF原则选择适应度最大的服务器作为该容器及最小虚拟机的最优服务器放入;步骤7,开启服务器,若最小虚拟机资源约束筛选后激活态服务器序列为空,则开启新服务器并随机选择数据中心支持的虚拟机模板,创建虚拟机实例作为该容器最优VM及最优PM;若无新容器增加,则本次Docker与VM初始放置方法终止,直到新的容器到来激活调度器重新运作放置算法。2.根据权利要求1所述的一种基于三层架构的Docker与虚拟机初始放置方法,其特征在于,步骤1中,构建三层架构DVMP约束模型,根据两层矢量装箱理论及VM、PM资源用量计算基准提出基于矢量装箱理论的DVMP约束条件;两层矢量协同装箱理论,包括Docker到VM及VM到PM的两层矢量装箱模型,具体描述为Docker装箱对象到小箱子VM和VM小箱子到PM大箱子的两层矢量装箱模型,将装箱对象沿箱子的对角进行放置;VM、PM资源用量计算基准,放入某VM的所有Docker资源配给量不超过该VM创建时资源申请量,当达到该VM资源上限时,将新的容器放入其它VM或创建新VM进行承载,放入某服务器的所有VM资源总申请量不可超过该服务器资源最大提供量;基于矢量装箱理论的DVMP约束条件,具体包括整数约束条件、完整性约束条件、资源利用情况约束条件和资源使用量约束条件;整数约束条件具体表现为以下公式:xij,yri,zrj,pj,vi∈{0,1}i∈N,j∈M,r∈D其中,xij、yri、zrj分别是虚拟机到服务器位置映射矩阵X、容器到虚拟机位置映射矩阵Y和容器到服务器位置映射矩阵Z中代表代表放置状态的元素,进一步为第i台虚拟机是否放置于第j台服务器上,第r台容器是否放置于第i台虚拟机上,第r台容器是否运行在第j台服务器上;vi、pj表示虚拟机和服务器的状态变量,它的取值1、0,分别表示虚拟机i、服务器j是否处于运行状态;完整性约束条件具体表现为以下公式:该完整性约束公式采用了累加的计算方式,将任一容器、虚拟机与所有虚拟机、服务器放置状态累加求和且求和结果限制为1,避免非1的异常情况,从而确保所有的容器、虚拟机在集群中都放置在合理的位置;资源利用情况约束条件,包括虚拟机资源利用情况约束条件和服务器资源利用情况约束条件,虚拟机资源利用情况约束条件通过限制虚拟机的资源分配情况,确保Docker每次请求的资源数量不超过该虚拟机创建时申请的资源总数,具体表现为以下公式:其中,分别表示第r台Docker创建时申请的CPU和内存资源量,对应第i台虚拟机能够提供的CPU和内存的资源总量;服务器资源利用情况约束条件通过限制服务器的资源分配情况,确保虚拟机每次请求的资源数量不超过该服务器提供的资源总数,具体表现为以下公式:其中,分别表示第i台虚拟机创建时申请的CPU和内存资源量,对应第j台服务器能够提供的CPU和内存的资源总量;资源使用量约束条件,限制DVP架构中VM及PM资源使用量的计算方式,具体描述为任一时刻VM及PM的资源使用量应该以其承载的所有Docker容器资源总量作为统计基础;具体资源使用量约束条件表示为以下公式:其中,yri和zrj分别为Docker到虚拟机位置映射矩阵Y和Docker到服务器位置映射矩阵Z的状态变量,分别表示第r台Docker创建时申...
【专利技术属性】
技术研发人员:郑庆华,董博,赵珮瑶,阮建飞,李睿,钟阿敏,赵敏,李国斌,周新运,王旭,
申请(专利权)人:西安交通大学,北京奥鹏远程教育中心有限公司,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。