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

基于Docker容器技术的局部动态迁移方法及控制系统技术方案

技术编号:18256304 阅读:69 留言:0更新日期:2018-06-20 08:09
基于Docker容器技术的局部动态迁移方法及控制系统,属于云计算技术领域。解决了现有容器迁移技术中存在的资源浪费问题。所述的方法是根据最近n个采样周期中的节点资源使用率以及预测的资源使用率来判定过载服务器的出现并触发容器迁移,针对过载服务器中的待迁移容器的选择是首选合计使用率较大、但内存较小的容器,实现了在平衡负载的同时降低迁移开销的效果。对于目标服务器的选择则是首先保证该目标服务器中有足够可用的资源。对于在迁移过程生成新的容器、并行导致目标服务器过载的情况,则表示集群的所有服务器中没有能够容纳该容器的服务器,因此没有不必要迁移该容器,更换待迁移的容器。本发明专利技术提高了资源利用率、减少了任务执行时间。

Local dynamic migration method and control system based on Docker container technology

The local dynamic migration method and control system based on Docker container technology belong to the cloud computing technology field. The problem of resource waste existing in the existing container migration technology is solved. The method described is to determine the occurrence of the overload server and trigger the container migration according to the node resource usage rate and the predicted resource utilization in the recent n sampling period. At the same time, the effect of the migration overhead is reduced. The choice of the target server is to first ensure that the target server has enough resources available. To generate new containers in the migration process and to overload the target server in parallel, it is indicated that there is no server in all the servers in the cluster that can hold the container, so it is not unnecessary to migrate the container and replace the container to be migrated. The invention improves the utilization ratio of resources and reduces the execution time of tasks.

【技术实现步骤摘要】
基于Docker容器技术的局部动态迁移方法及控制系统
本申请涉及Docker容器迁移技术,属于云计算

技术介绍
随着云计算技术的广泛应用,云服务的规模逐渐扩大,数据中心网络不断的扩张。为了实现云服务平台中的负载均衡,如何有效分配计算资源,资源迁移技术成为研究热点。所谓的负载均衡是指将请求/数据均匀分摊到多个操作单元上执行。在传统模式中,云计算的核心是虚拟化,主要是通过虚拟机提高资源的利用率。容器(Docker)是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器,是近年来新兴的虚拟化工具,它可以和虚拟机一样实现资源和系统环境的隔离,它的优势是轻量性,高性能和便捷性。与传统虚拟机不同,容器是通过共享主机内核的方式,弹性分配计算资源,进而提高资源利用率。相对于操作系统层次,容器就相当于在其中运行的进程组。由于容器与内核的密切关联,在迁移过程中的计算资源及状态信息都分散在操作系统与内核之中,这就为迁移过程保证负载均衡提出了挑战。相对于传统虚拟机,容器提供了基于进程的隔离。容器的创建,启动,停止与销毁,可以以毫秒级的速度实现。由于容器的生命周期仅为虚拟机的四分之一,在全局实现负载均衡是NP-hard问题,所以本专利技术从局部均衡状态下考虑容器的动态迁移。容器的迁移分为静态迁移和动态迁移。静态迁移是将源服务器的容器立即关闭,然后在目标服务器中创建一个新容器,将源服务器的容器状态迁移到目标服务器新的容器中。在静态迁移中,将会暂停整个云服务,由此会造成大的经济损失。动态迁移也叫热迁移、实时迁移,是指在确保客户端访问不中断的情况下在不同的物理计算机或云平台之间移动应用程序的过程,并且该整个迁移过程是用户感觉不到。动态迁移是在确定了源服务器和目标服务器后,在这两个服务器之间进行信息协作,由此确定待迁移容器的状态信息。目前容器的动态迁移参照了虚拟机动态迁移的模式,主要分为两种类型,一个是复制前内存(pre-copymemory),另一个是复制后内存(post-copymemory)。Virtuozzo团队对于容器热迁移技术的研究,目前已经可以提供用于生产环境并可以实现容器热迁移的容器引擎,不足之处是这种技术只能面向Virtuozzo定制的Linux内核。通过对内核的修改或者补丁才能完成容器热迁移功能,不能面向主流Linux内核来实现热迁移。现有容器迁移技术存在的主要缺点有:(1)容器内部状态信息获取问题:容器内存分布在进程之间,需要根据进程信息去依次获取相应内存信息,并且与容器相关需要在冻结步骤中保存的状态信息和资源对象十分复杂,大约有1000左右的对象信息需要保存,而且有的对象信息内核并没有提供相应的接口直接获取,虚拟机则只需要保存70个左右的对象信息且可以直接获取。(2)数据量的不确定性:容器中包含的程序,由于计算任务不同,对资源的需求量会千差万别。在容器内部进行大量计算后,会快速的生成大量随机数据,由此对容器的存储空间影响很大。(3)进程间的关系:由于容器之间的进程组之间会存在嵌套父子关系,热迁移过程需要维持进程之间的关系,所以进程子树的迁移问题需要得以解决,(4)资源浪费:没有考虑到容器的生命周期管理,不仅造成计算资源的浪费,而且在容器消亡后,造成用户数据的丢失。
技术实现思路
本专利技术解决了现有容器迁移技术中存在的问题。为了解决上述问题,本专利技术提供了一种基于Docker容器技术的局部动态迁移方法及控制系统,其中:所述的基于Docker容器技术的局部动态迁移方法包括如下步骤步骤1,根据周期性采集集群节点中每个节点的资源使用率,监测集群节点中每个节点的资源使用情况,并确定是否存在热点,当发现存在热点时,触发启动下述步骤进行容器迁移;步骤2,统计集群中每台服务器整合不同的资源的使用率参数volume,公式中mem表示服务器或容器的内存使用率,cpu表示CPU的使用率,net表示带宽利用率;并将集群中的N台服务器按照volume值的大小降序排序;步骤3,针对volume值最大的过载服务器,做如下处理:将其内部的所有容器按照VSR值降序排序,所述VSR=volume/size,其中,size表示容器的内存大小;按照VSR值从大到小的顺序,依次进行容器迁移,直到所述volume值最大的过载服务器中的所有资源的使用率都低于相应阈值,完成容器迁移;返回执行步骤1。上述步骤1所述确定是否存在热点的方法为,针对每个节点的资源使用率进行如下处理:根据最近n个采集周期获得的使用率预测下一时刻的使用率,如果该使用率超过该节点的给定阈值,则进一步判断所述n个使用率中超过给定阈值的个数是否超过k,如果超过,则确定相应节点为热点,即:存在热点。所述根据最近n个采集周期获得的使用率预测下一时刻的使用率vt的方法是采用自回归模型AR(n)实现,具体方法是通过公式:vt=β0+β1vt-1+β2vt-2+...+βnvt-n+ω(1)预测,公式中,vt-n,...,vt-2,vt-1分别是最近n个采集周期获得的使用率,β0、β1、β2…βn为自回归系数,ω为白噪声。上述步骤3中所述的按照VSR值从大到小的顺序,依次进行容器迁移的过程为:步骤31,选择VSR值最大的容器作为待迁移容器,选择volume最小的轻载服务器作为目标服务器,将待迁移容器迁移至目标服务器;步骤32,判断所述volume值最大的过载服务器中的所有资源的使用率都低于相应阈值,如果低于,完成容器迁移,否则,选择VSR值次之的容器作为待迁移容器,返回执行步骤31。上述步骤31中,如果在将待迁移容器迁移至目标服务器的过程中,生成了新的容器,从而导致目标服务器过载,则将volume值第二小的轻载服务器作为目标服务器继续进行迁移,如此反复,直到找到能够迁移的目标服务器完成本次迁移;如果最终没有找到能够迁移的目标服务器,则取消本次迁移,选择VSR值次之的容器作为待迁移容器,重复执行步骤31。实现上述方法的一种基于Docker容器技术的局部动态迁移的控制系统包括集群节点、迁移控制单元;每个服务器节点均包括容器监控单元和多个Docker容器;所述容器监控单元用于监控所在服务器节点中所有Docker容器的资源使用状态;所述迁移控制单元包括迁移管理器、热点探测器和资源采集器,其中:所述资源采集器用于采集所有服务器节点中的容器监控单元获得的Docker容器的资源使用状态;还用于为每个容器生成资源使用配置文件;还用于为每个服务器生成整合的资源使用配置文件;所述热点探测器用于访问资源采集器生成的资源使用配置文件获得所有服务器节点中所有Docker容器的资源使用情况,进而实现探测热点;所述迁移管理器用于针对热点探测器确定的热点,控制实现该热点中的Docker容器迁移。所述热点探测器实现探测热点的方法为:根据最近n个采集周期获得的使用率预测下一时刻的使用率,如果该使用率超过给定阈值,则进一步判断所述n个使用率中超过给定阈值的个数是否超过k,如果超过,则确定相应节点为热点。所述根据最近n个采集周期获得的使用率预测下一时刻的使用率的方法是采用自回归模型AR(n)实现,具体方法是通过公式:vt=β0+β1vt-1+β2vt-2+...+βnvt-n+ω(1)实现预测,公式中v本文档来自技高网
...
基于Docker容器技术的局部动态迁移方法及控制系统

【技术保护点】
1.一种基于Docker容器技术的局部动态迁移方法,其特征在于,所述方法包括如下步骤:步骤1,根据周期性采集集群节点中每个节点的资源使用率,监测集群节点中每个节点的资源使用情况,并确定是否存在热点,当发现存在热点时,触发启动下述步骤进行容器迁移;步骤2,统计集群中每台服务器整合不同的资源的使用率参数volume,

【技术特征摘要】
1.一种基于Docker容器技术的局部动态迁移方法,其特征在于,所述方法包括如下步骤:步骤1,根据周期性采集集群节点中每个节点的资源使用率,监测集群节点中每个节点的资源使用情况,并确定是否存在热点,当发现存在热点时,触发启动下述步骤进行容器迁移;步骤2,统计集群中每台服务器整合不同的资源的使用率参数volume,公式中mem表示服务器或容器的内存使用率,cpu表示CPU的使用率,net表示带宽利用率;并将集群中的N台服务器按照volume值的大小降序排序;步骤3,针对volume值最大的过载服务器,做如下处理:将其内部的所有容器按照VSR值降序排序,所述VSR=volume/size,其中,size表示容器的内存大小;按照VSR值从大到小的顺序,依次进行容器迁移,直到所述volume值最大的过载服务器中的所有资源的使用率都低于相应阈值,完成容器迁移;返回执行步骤1。2.根据权利要求1所述的一种基于Docker容器技术的局部动态迁移方法,其特征在于,步骤1所述确定是否存在热点的方法为,针对每个节点的资源使用率进行如下处理:根据最近n个采集周期获得的使用率预测下一时刻的使用率,如果该使用率超过该节点的给定阈值,则进一步判断所述n个使用率中超过给定阈值的个数是否超过k,如果超过,则确定相应节点为热点,即:存在热点。3.根据权利要求2所述的一种基于Docker容器技术的局部动态迁移方法,其特征在于,所述根据最近n个采集周期获得的使用率预测下一时刻的使用率vt的方法是采用自回归模型AR(n)实现,具体方法是通过公式:vt=β0+β1vt-1+β2vt-2+...+βnvt-n+ω(1)预测,公式中,vt-n,...,vt-2,vt-1分别是最近n个采集周期获得的使用率,β0、β1、β2…βn为自回归系数,ω为白噪声。4.根据权利要求1所述的一种基于Docker容器技术的局部动态迁移方法,其特征在于,步骤3中所述的按照VSR值从大到小的顺序,依次进行容器迁移的过程为:步骤31,选择VSR值最大的容器作为待迁移容器,选择volume最小的轻载服务器作为目标服务器,将待迁移容器迁移至目标服务器;步骤32,判断所述volume值最大的过载服务器中的所有资源的使用率都低于相应阈值,如果低于,完成容器迁移,否则,选择VSR值次之的容器作为待迁移容器,返回执行步骤31...

【专利技术属性】
技术研发人员:樊卫北王岩樊建席
申请(专利权)人:苏州大学
类型:发明
国别省市:江苏,32

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

1