The present invention relates to a state service container thermal migration method based on memory compression transmission, including the following steps: (1) environment creation: the resource and state information needed to isolate the virtual environment of the LXC container, save the resource and state information through the picture, and freeze the LXC container; The virtualization environment of the LXC container is isolated from the Linux kernel, and the virtualization environment of the LXC container is saved through the namespace mechanism and its process is restored; (2) heat migration: copy memory pages migrate and migrate the described memory pages. The method of the invention reduces redundant data transmission, improves dynamic migration efficiency, and has simple steps and convenient operation.
【技术实现步骤摘要】
基于内存压缩传输的有状态服务容器热迁移方法
本专利技术涉及一种基于内存压缩传输的有状态服务容器热迁移方法。
技术介绍
操作系统级虚拟化技术由于其轻量性和隔离性等特性,已经受到越来越多的重视,操作系统层次的虚拟化技术相比传统的准虚拟化技术和完全虚拟化技术的优势越来越切合工业界的需要(如对资源的按需分配,而不像传统的虚拟化技术,对资源的使用通常造成极大的浪费)。另外,由于Linux内核主线的支持,LXC将会成为系统级虚拟化技术的首选,其性能将会得到更进一步的提升,相对传统虚拟化技术的劣势也将会有所改善,以LXC为代表的系统级虚拟化技术(工业界也称为容器技术)将会击败传统的虚拟化技术而占有越来越多的席位。这点也可以从最近各大互联网公司陆续曝光自己的容器技术得到印证,如:dotCloud推出的Docker,google的lmctfy,腾讯即将发布的“弹性web引擎”也使用了容器技术,不仅如此,Heroku、OpenShift、CloudFoundry等PaaS平台都有Container技术的实现。既然系统级虚拟化技术(容器技术)如此重要,那么使容器技术具有传统的虚拟化技术的动态迁移功能就显得很有必要了。传统的虚拟化技术的动态迁移机制已经相当的成熟,然而,由于传统的虚拟化技术和容器技术的实现原理与机制都不同,所以很难将传统的虚拟化技术中成熟的动态迁移机制轻松应用到容器技术中。虽然已有容器技术(OpenVZ)实现了动态迁移机制,但是由于和作为未来主流容器技术的LXC实现原理与机制不同,不能简单应用到LXC中,并且其本身的动态迁移效率相比传统虚拟化技术并没有太大优势,还 ...
【技术保护点】
1.一种基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述方法包括如下步骤:环境创建:隔离出LXC容器虚拟化环境所需要的资源及状态信息,将所述资源及状态信息通过图片的方式保存并对所述LXC容器进行冷冻处理;将所述LXC容器的虚拟化环境从Linux内核中隔离出来,通过namespace机制保存所述LXC容器的虚拟化环境并恢复其进程;热迁移:拷贝内存信息并迁移所述内存信息。
【技术特征摘要】
1.一种基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述方法包括如下步骤:环境创建:隔离出LXC容器虚拟化环境所需要的资源及状态信息,将所述资源及状态信息通过图片的方式保存并对所述LXC容器进行冷冻处理;将所述LXC容器的虚拟化环境从Linux内核中隔离出来,通过namespace机制保存所述LXC容器的虚拟化环境并恢复其进程;热迁移:拷贝内存信息并迁移所述内存信息。2.如权利要求1所述的基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述“环境创建”的具体过程为:提供源主机、目的主机及网络,所述目的主机有充足资源使得LXC容器从所述源主机迁移至其中并使所述LXC容器恢复运行;在所述LXC容器保持运行的情况下,将所述LXC容器的内存页面预拷贝迭代并将预拷贝迭代后的内存页面通过所述网络传输至所述目的主机,并将预拷贝迭代最后一轮操作留下的内存页面以及所述LXC容器的CPU状况信息同步至所述目的主机并进行停机处理以实现冷冻处理;将所述LXC容器恢复运行的内存页面从所述源主机传输至所述目的主机并保存在镜像文件中,所述目的主机创建一个新容器,并将保存在所述镜像文件中的内存页面填充至所述新容器中并运行。3.如权利要求2所述的基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述“预拷贝迭代”具体操作为:预先设置一个阈值,并对所述LXC容器的内存页面进行预拷贝迭代操作,直至所述内存页面的数量值小于或等于所设定的阈值。4.如权利要求3所述的基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述“预拷贝迭代”还包括:在对所述LXC容器的内存页面进行预拷贝迭代操作的同时,对预拷贝迭代操作进行内存页面的传输优化。5.如权利要求4所述的基于内存压缩传输的有状态服务容器热迁移方法,其特征在于,所述“优化”具体操作为:将当前的LXC容器的内存页面全部传输至所述目的主机;在传输所述内存页面之前,计算自上一轮内存页面传输之后,页面的脏化...
【专利技术属性】
技术研发人员:李新明,刘斌,
申请(专利权)人:中科边缘智慧信息科技苏州有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。