[发明专利]一种基于添加临时容器实现无缝升级边车的系统与方法有效
申请号: | 202010378645.4 | 申请日: | 2020-05-07 |
公开(公告)号: | CN111552496B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 刘齐均;颜开;周尧;徐俊杰 | 申请(专利权)人: | 上海道客网络科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/61;G06F9/455 |
代理公司: | 上海市汇业律师事务所 31325 | 代理人: | 王函 |
地址: | 200433 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 添加 临时 容器 实现 无缝 升级 系统 方法 | ||
1.一种基于添加临时容器实现无缝升级边车的系统,其特征在于,包含容器组、共享存储器、镜像存储控制器、热升级控制器、临时容器控制器、控制终端;
所述共享存储器内存储有共享存储卷,用于将所述共享存储卷挂载在所述容器组上;
所述镜像存储控制器用于将新边车控制程序与新边车代理程序打包成边车容器镜像并传输至所述热升级控制器;
所述热升级控制器用于接收所述边车容器镜像与所述控制终端传输的热升级信号,还用于根据所述热升级信号将所述边车容器镜像传输至所述临时容器控制器中进行热升级;
所述临时容器控制器用于通过所述边车容器镜像向所述容器组中注入临时容器,所述临时容器内部存储有所述新边车控制程序与所述新边车代理程序;
所述临时容器中携带的所述新边车控制程序用于通过所述共享存储卷与所述容器组内的旧边车控制程序连接,所述新边车控制程序启动用于对所述新边车代理程序赋予新ID;
所述新边车代理程序用于获取所述容器组内旧边车代理程序中的数据信息进行热更新,完成对流量的接管,所述新边车代理程序启动后通过Unix域套接字发送指令到所述旧边车代理程序,所述旧边车代理程序接收指令后退出,完成边车容器的升级;
所述容器组包含业务容器、基容容器、边车容器;
所述业务容器用于运行用户实际业务逻辑;
所述基容容器用于实现所述容器组内的网路命名空间共享;
所述边车容器用于管理业务的出入口流量,实现边车功能,所述边车容器内置有所述旧边车控制程序与所述旧边车代理程序,所述旧边车控制程序用于生成边车的配置文件并管理所述旧边车代理程序的生命周期;
所述边车容器内的边车控制程序本身不接管流量,通过共享基础配置文件的方式,使所述新边车控制程序与所述旧边车控制程序处于相同的运行状态,实现平滑切换,随后新边车控制程序基于共享基础配置文件启动所述新边车代理程序,并分配一个新ID 给所述新边车代理程序,所述新边车代理程序接管原有数据流量,随后所述旧边车代理程序进入休眠状态,不再提供服务,就此完成所述边车容器的热升级,所述旧边车控制程序与所述旧边车代理程序最终会在所述容器组后续的整体重启时被自动清理。
2.如权利要求1所述的一种基于添加临时容器实现无缝升级边车的系统,其特征在于,所述容器组内置有IPtables系统,所述IPtables系统将所述业务容器与所述边车容器连接进行流量传输。
3.一种基于添加临时容器实现无缝升级边车的方法,其特征在于,包含以下步骤:
步骤1:在容器组上挂载共享存储卷,具体为:在创建所述容器组时挂载所述共享存储卷,所述共享存储卷有存储统计数据、日志、热更新程序状态,用于在新边车代理程序与旧边车代理程序之间进行统计数据、日志的传输以及热更新程序状态的同步;
步骤2:将升级后的新边车控制程序与新边车代理程序打包成边车容器镜像;
步骤3:将边车容器镜像为需要热升级的容器组注入一个挂载有共享存储卷的临时容器,临时容器内存储有新边车控制程序与新边车代理程序;
步骤4:临时容器中的新边车控制程序通过共享存储卷与容器组中边车容器的旧边车控制程序连接,新边车控制程序启动并读取旧边车代理程序的旧ID后赋予新边车代理程序新ID,新边车代理程序获取旧边车代理程序内的数据信息进行热更新,完成对流量的接管;
步骤5:新边车代理程序启动后通过Unix域套接字发送指令到旧边车代理程序,旧边车代理程序接收指令后退出,完成边车容器的升级;升级后的所述边车容器上挂载共享存储卷;旧边车代理程序存在但不再接受请求,所述旧边车控制程序运行,所述旧边车代理程序不再运行,所述旧边车控制程序也将进入休眠状态,不再执行相应的功能,会占用少量资源;然后把监听信息传输到新边车代理程序中,新边车代理程序接收后进入监听状态,开始处理请求,实现无缝进行流量迁移,运行一段时间后所述新边车代理程序进程会发送指令至所述旧边车代理程序使之完全退出,不再占用资源。
4.一种基于添加临时容器实现无缝升级边车的装置,其特征在于,包含至少一个处理器以及与所述至少一个处理器耦合的存储器,所述存储器存储有可执行指令;
所述可执行指令在被所述至少一个处理器执行时使得实现根据权利要求3所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海道客网络科技有限公司,未经上海道客网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010378645.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种垃圾回收系统及方法
- 下一篇:无源相控阵天线波束控制算法