当前位置: 首页 > 专利查询>河海大学专利>正文

一种基于稳定匹配的容器化云资源分配方法组成比例

技术编号:17704649 阅读:38 留言:0更新日期:2018-04-14 17:42
本发明专利技术公开了一种基于稳定匹配的容器化云资源分配方法,将传统的稳定婚姻匹配算法改进为一种多对一的稳定匹配算法,并将机器学习中的常用的相似度算法作为稳定匹配算法的偏好规则生成偏好列表,以实现容器化云环境的负载均衡,降低数据中心的能耗。本发明专利技术属于一种集中式调度算法,在对资源分配的过程中,要权衡各个云计算节点的四类虚拟机资源利用率,并将其与待分配任务实施匹配并因此可以对整体系统能耗产生的影响。本发明专利技术提出一种在容器虚拟化技术下的云计算系统中,将任务级容器的分配部署到系统级虚拟机上的一种优化算法,通过在服务器和虚拟机级别上改善资源利用率,解决容器化云环境中能耗优化问题。

【技术实现步骤摘要】
一种基于稳定匹配的容器化云资源分配方法
本专利技术涉及一种基于稳定匹配的容器化云资源分配方法,具体涉及一种在容器虚拟化技术下的基于系统整体能耗优化的资源分配方法,属于云计算的虚拟资源分配

技术介绍
近年来容器虚拟化技术逐渐受到了广泛应用,和传统的虚拟机技术(VirtualMachine)类似,容器化技术提供了一种隔离的虚拟环境,同时由于它们低开销和轻量级提高了资源利用率的效率。此外,由于容器共享主机操作系统内核,其配置问题从根本上主要是一种软件的管理问题。容器技术被认为是云计算发展的下一个重要方向,而目前已有的大部分研究主要是针对虚拟机的虚拟化云计算技术,对容器虚拟资源的分配算法以及其性能的研究仍然是一个开放的课题,尤其是基于容器化云计算系统整体能耗优化的资源分配与调度方法研究还处于探讨阶段。随着虚拟技术的发展,操作系统级虚拟化的容器成为云计算中的虚拟资源部署的主流,容器即服务也越来越普及而成为云计算环境中的主要部署模型,但针对容器的资源分配技术尚未得到充分的研究,容器化云环境中容器数量众多,如何将众多的容器快速高效的部署到合适的虚拟机上而达到一种降低数据中心能耗的目的已经成为一个亟待解决的问题。
技术实现思路
本专利技术所要解决的技术问题是:提供一种基于稳定匹配的容器化云资源分配方法,将任务级容器快速高效的部署到合适的系统级虚拟机上,实现降低数据中心能耗的目的。本专利技术为解决上述技术问题采用以下技术方案:一种基于稳定匹配的容器化云资源分配方法,包括任务分配器端和可分配容器服务的虚拟机端两部分;其中,任务分配器端包括以下步骤:步骤1-1,初始化任务分配器,获取所有虚拟机的剩余可分配资源;步骤1-2,将到达任务分配器的待分配容器服务存储在其缓存中,并根据待分配容器服务到达的先后顺序建立一个待部署容器队列L=[L(i),i=1,2,…,m],L(i)表示第i个待分配容器服务,m为待分配容器服务的个数;步骤1-3,若待部署容器队列非空,则对该队列中的每个待分配容器服务L(i),计算其与所有可接受该容器服务的虚拟机的匹配度值,并将匹配度值由大到小进行排序,根据排序结果建立一个可分配虚拟机队列Pi;令i=1;步骤1-4,读取待部署容器队列中第i个待分配容器服务所对应的可分配虚拟机队列Pi,从与第i个待分配容器服务的匹配度值最高的虚拟机开始,向从没有拒绝接受它的虚拟机发送容器部署请求,若被拒绝接受,则继续向队列Pi中的下一个虚拟机发送容器部署请求直至有虚拟机回复接受或者暂缓接受该部署请求;步骤1-5,将i=i+1并检查是否遍历队列L,若未遍历则返回步骤1-4,否则进入步骤1-6;步骤1-6,任务分配器发送结束部署消息给所有可分配容器服务的虚拟机示意结束资源匹配过程,如果收到所有虚拟机的消息确认结束或者等待超时,则进入步骤1-7;步骤1-7,任务分配器端接收到匹配好的容器服务ID与虚拟机映射,并返回步骤1-1;可分配容器服务的虚拟机端包括以下步骤:步骤2-1,初始化所有虚拟机的最佳匹配度值Mp=0,并将记录的容器服务ID集合置空;步骤2-2,等待任务分配器发送消息,若接收到任务分配器的消息则判断:如果为结束部署消息或者虚拟机等待超时,则进入步骤2-5;如果消息为容器部署请求则进入步骤2-3;步骤2-3,虚拟机接收到容器部署请求时,计算向该虚拟机发送容器部署请求的容器服务的功耗匹配度值Mb,若功耗匹配度值小于或等于最佳匹配度值,则返回步骤2-2,若功耗匹配度值大于最佳匹配度值,则将该虚拟机的最佳匹配度值更新为Mb,并记录对应的容器服务的ID;步骤2-4,将被记录ID的容器服务标记为暂缓接受容器服务,同时将ID及其标记发送给任务分配器,然后返回步骤2-2;步骤2-5,将当前标记为暂缓接受的容器服务的状态改为接受,并将容器服务ID与虚拟机映射关系发送给任务分配器,发送确认结束部署消息给任务分配器,并开始执行本轮容器服务的部署,部署结束后返回步骤2-1。作为本专利技术的一种优选方案,步骤1-3所述匹配度值的计算方法为Tanimoto系数计算方法。作为本专利技术的一种优选方案,所述Tanimoto系数计算方法的计算公式为:其中,T(x,y)表示待分配容器服务x与可接受该容器服务的虚拟机y的匹配度值,x和y均为四维向量,k=1,2,3,4,分别代表容器服务所需要的和虚拟机可提供的以下四个利用率:处理器利用率、内存利用率、网络带宽利用率、存储空间利用率。作为本专利技术的一种优选方案,步骤2-3所述功耗匹配度值Mb计算公式为:其中,MIPSL(i)表示第i个待分配容器服务预期的处理器利用率,单位为百万指令每秒;TotalMIPS表示该虚拟机的处理速度,单位为百万指令每秒。本专利技术采用以上技术方案与现有技术相比,具有以下技术效果:1、本专利技术针对容器部署的过程中,对系统的功耗进行优化分配,通过采用一种基于四类虚拟资源的匹配度的计算方法作为容器选择虚拟机的偏好规则,而虚拟机对容器的偏好规则,则根据虚拟机的资源是否能够支持该容器的部署采用了一种基于处理器利用率的贪婪算法的偏好规则,即按照处理器利用率占实际可提供处理器资源的大小从高到低排序,从而提高任务的执行效率而最小化系统能耗。2、本专利技术方法在保证任务在规定时间完成的情况下优化匹配待分配容器服务和虚拟机,使得容器服务任务的部署达到一种最佳匹配的效果,进而为云计算架构创造更高的效益。附图说明图1是本专利技术一种基于稳定匹配的容器化云资源分配方法的系统架构示意图。图2是在任务分配器端的阶段A1流程图。图3是在任务分配器端的阶段A2流程图。图4是在任务分配器端的阶段A3流程图。图5是在可分配容器服务的虚拟机端的阶段B1流程图。图6是在可分配容器服务的虚拟机端的阶段B2流程图。具体实施方式下面详细描述本专利技术的实施方式,所述实施方式的示例在附图中示出。下面通过参考附图描述的实施方式是示例性的,仅用于解释本专利技术,而不能解释为对本专利技术的限制。如图1所示,是本专利技术一种基于稳定匹配的容器化云资源分配方法的系统架构示意图。本专利技术云计算系统的分配目标是将容器服务部署到系统中的虚拟机中,其在任务分配器端的算法主要分为三个阶段:在任务分配器端的阶段A1流程图,如图2所示:步骤A1-1、初始化任务分配器,获取所有虚拟机的剩余可分配资源,假设可分配的容器个数为m。步骤A1-2、将到达任务分配器的批量的容器任务存储在其缓存中,并根据任务到达的顺序将缓存中待分配的容器服务建立一个待部署容器队列L,该队列的大小为可分配的容器的个数m。步骤A1-3、若待部署容器队列L非空,则开始读取队列中的第i个单元L(i),根据如下定义的匹配相似度算法计算该容器与云计算系统中所有可接受该容器的虚拟机的匹配度值。本专利技术中的匹配度值主要采用Tanimoto系数其计算公式如下:在本专利技术中x代表容器服务待分配的任务,y代表可分配的虚拟机,我们定义x和y都是一个四维向量,其分别代表容器服务所需要的和虚拟机可提供的以下四个方面:处理器利用率、内存利用率、网络带宽利用率、存储空间利用率这四个变量来计算匹配度,然后根据该匹配度值排序并建立一个关于可分配虚拟机队列Pi,重复步骤A1-3直至遍历队列L中所有单元,然后进入阶段A2。在任务分配器端的阶段A2流程图,如图本文档来自技高网...
一种基于稳定匹配的容器化云资源分配方法

【技术保护点】
一种基于稳定匹配的容器化云资源分配方法,其特征在于,包括任务分配器端和可分配容器服务的虚拟机端两部分;其中,任务分配器端包括以下步骤:步骤1‑1,初始化任务分配器,获取所有虚拟机的剩余可分配资源;步骤1‑2,将到达任务分配器的待分配容器服务存储在其缓存中,并根据待分配容器服务到达的先后顺序建立一个待部署容器队列L=[L(i),i=1,2,…,m],L(i)表示第i个待分配容器服务,m为待分配容器服务的个数;步骤1‑3,若待部署容器队列非空,则对该队列中的每个待分配容器服务L(i),计算其与所有可接受该容器服务的虚拟机的匹配度值,并将匹配度值由大到小进行排序,根据排序结果建立一个可分配虚拟机队列Pi;令i=1;步骤1‑4,读取待部署容器队列中第i个待分配容器服务所对应的可分配虚拟机队列Pi,从与第i个待分配容器服务的匹配度值最高的虚拟机开始,向从没有拒绝接受它的虚拟机发送容器部署请求,若被拒绝接受,则继续向队列Pi中的下一个虚拟机发送容器部署请求直至有虚拟机回复接受或者暂缓接受该部署请求;步骤1‑5,将i=i+1并检查是否遍历队列L,若未遍历则返回步骤1‑4,否则进入步骤1‑6;步骤1‑6,任务分配器发送结束部署消息给所有可分配容器服务的虚拟机示意结束资源匹配过程,如果收到所有虚拟机的消息确认结束或者等待超时,则进入步骤1‑7;步骤1‑7,任务分配器端接收到匹配好的容器服务ID与虚拟机映射,并返回步骤1‑1;可分配容器服务的虚拟机端包括以下步骤:步骤2‑1,初始化所有虚拟机的最佳匹配度值Mp=0,并将记录的容器服务ID集合置空;步骤2‑2,等待任务分配器发送消息,若接收到任务分配器的消息则判断:如果为结束部署消息或者虚拟机等待超时,则进入步骤2‑5;如果消息为容器部署请求则进入步骤2‑3;步骤2‑3,虚拟机接收到容器部署请求时,计算向该虚拟机发送容器部署请求的容器服务的功耗匹配度值Mb,若功耗匹配度值小于或等于最佳匹配度值,则返回步骤2‑2,若功耗匹配度值大于最佳匹配度值,则将该虚拟机的最佳匹配度值更新为Mb,并记录对应的容器服务的ID;步骤2‑4,将被记录ID的容器服务标记为暂缓接受容器服务,同时将ID及其标记发送给任务分配器,然后返回步骤2‑2;步骤2‑5,将当前标记为暂缓接受的容器服务的状态改为接受,并将容器服务ID与虚拟机映射关系发送给任务分配器,发送确认结束部署消息给任务分配器,并开始执行本轮容器服务的部署,部署结束后返回步骤2‑1。...

【技术特征摘要】
1.一种基于稳定匹配的容器化云资源分配方法,其特征在于,包括任务分配器端和可分配容器服务的虚拟机端两部分;其中,任务分配器端包括以下步骤:步骤1-1,初始化任务分配器,获取所有虚拟机的剩余可分配资源;步骤1-2,将到达任务分配器的待分配容器服务存储在其缓存中,并根据待分配容器服务到达的先后顺序建立一个待部署容器队列L=[L(i),i=1,2,…,m],L(i)表示第i个待分配容器服务,m为待分配容器服务的个数;步骤1-3,若待部署容器队列非空,则对该队列中的每个待分配容器服务L(i),计算其与所有可接受该容器服务的虚拟机的匹配度值,并将匹配度值由大到小进行排序,根据排序结果建立一个可分配虚拟机队列Pi;令i=1;步骤1-4,读取待部署容器队列中第i个待分配容器服务所对应的可分配虚拟机队列Pi,从与第i个待分配容器服务的匹配度值最高的虚拟机开始,向从没有拒绝接受它的虚拟机发送容器部署请求,若被拒绝接受,则继续向队列Pi中的下一个虚拟机发送容器部署请求直至有虚拟机回复接受或者暂缓接受该部署请求;步骤1-5,将i=i+1并检查是否遍历队列L,若未遍历则返回步骤1-4,否则进入步骤1-6;步骤1-6,任务分配器发送结束部署消息给所有可分配容器服务的虚拟机示意结束资源匹配过程,如果收到所有虚拟机的消息确认结束或者等待超时,则进入步骤1-7;步骤1-7,任务分配器端接收到匹配好的容器服务ID与虚拟机映射,并返回步骤1-1;可分配容器服务的虚拟机端包括以下步骤:步骤2-1,初始化所有虚拟机的最佳匹配度值Mp=0,并将记录的容器服务ID集合置空;步骤2-2,等待任务分配器发送消息,若接收到任务分配器的消息则判断:如果为结束部署消息或者虚拟机等待超时,则进入步骤2-5;如果消息为容器部署请求则进入步骤2-3;步骤2-3,虚拟机接收到容器部署请求时,计算向该虚拟机...

【专利技术属性】
技术研发人员:谢在鹏
申请(专利权)人:河海大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1