[发明专利]容器装配方法和装置有效
申请号: | 201710126406.8 | 申请日: | 2017-03-03 |
公开(公告)号: | CN108694046B | 公开(公告)日: | 2021-11-16 |
发明(设计)人: | 陈海波;王维东;刘新荣 | 申请(专利权)人: | 中国移动通信集团山西有限公司;中国移动通信集团公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/455 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 贺琳 |
地址: | 030032 山西省*** | 国省代码: | 山西;14 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 容器 装配 方法 装置 | ||
本发明公开了一种容器装配方法和装置。其中,该方法包括以下步骤:接收用于装配容器的命令信息以及配置文件;基于命令信息,对配置文件进行解析,生成解析结果,解析结果包括:直接装配当前容器的第一结果,或者需要判断当前容器的前一容器内应用的状态是否支持装配当前容器的第二结果;当解析结果为第一结果时,直接装配当前容器;当解析结果为第二结果时,判断前一容器内应用的状态是否支持装配当前容器,若支持装配当前容器时,装配当前容器。由此,本实施例充分考虑了容器内部运行进程的依赖关系,提高了依赖容器的装配精度。
技术领域
本发明涉及云计算技术领域,尤其涉及一种容器装配方法和装置。
背景技术
随着通信技术的快速发展,云计算对人们的生活产生了越来越大的影响。docker容器以其轻量化,封装化,快速迭代等特性成为目前云计算机技术中最为火热的技术。各类应用往往通过在宿主机上部署功能不同的容器(一般每个容器只负责单一功能,运行单一进程),并通过容器间的彼此交互完成相关任务。
申请人经研究发现:事实上容器间的配合工作与运行在宿主机上的普通进程一样,有着彼此依赖的关系。例如:容器化的web集群,启动顺序应该为数据库容器,web应用容器,负载均衡容器,且必须是数据库容器完全启动成功(容器本身+内部数据实例)后,web应用容器才应启动,并对外提供服务;容器停止或者退出时,也需要对有依赖关系的容器进行按顺序的逐一停止和退出操作,否则很容易造成数据不一致性的问题。
现有容器的打包工具,例如docker compose、crane等工具,这些工具实现了在特定文件格式(json,yaml)中定义、创建、删除容器的相关命令,实现了容器的按顺序打包一体化启动和停止。但是这些工具都没有考虑容器中运行的业务应用状态的情况,而直接进行了下一容器的操作。这就容易造成如下容器装配异常问题:1)只是按照定义的顺序进行了容器的相关创建、启动、删除操作等,而没有关注容器中应用的状态,使得看似容器组启动成功,却无法使用应用。2)无法快速定位容器包(组)启动或者退出异常的问题原因。例如,容器开始启动成功了,运行很短一段时间后,却退出了。3)容器组退出时,没有进行应用进程的逻辑检查,容易造成数据的不一致的问题。
发明内容
为了解决现有的容器装配异常的问题,本发明实施例提供了一种容器装配方法和装置。
第一方面,提供了一种容器装配方法。该方法包括以下步骤:
接收用于装配容器的命令信息以及配置文件;
基于命令信息,对配置文件进行解析,生成解析结果,解析结果包括:直接装配当前容器的第一结果,或者需要判断当前容器的前一容器内应用的状态是否支持装配当前容器的第二结果;
当解析结果为第一结果时,直接装配当前容器;
当解析结果为第二结果时,判断前一容器内应用的状态是否支持装配当前容器,若支持装配当前容器时,装配当前容器。
第二方面,提供了一种容器装配装置。该装置包括:
接口模块,用于接收用于装配容器的命令信息以及配置文件;
解析模块,用于基于命令信息,对配置文件进行解析,生成解析结果,解析结果包括:直接装配当前容器的第一结果,或者需要判断当前容器的前一容器内应用的状态是否支持装配当前容器的第二结果;
判断模块,用于当解析结果为第二结果时,判断前一容器内应用的状态是否支持装配当前容器;
执行模块,用于若判断结果支持装配当前容器时,装配当前容器;若解析结果为第一结果时,直接装配当前容器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团山西有限公司;中国移动通信集团公司,未经中国移动通信集团山西有限公司;中国移动通信集团公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710126406.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据处理方法及装置
- 下一篇:资源加载方法及装置