[发明专利]一种基于容器平台的自动灰度发布方法、系统及装置在审
申请号: | 201810060259.3 | 申请日: | 2018-01-22 |
公开(公告)号: | CN108279921A | 公开(公告)日: | 2018-07-13 |
发明(设计)人: | 颜文德;徐明;叶祖锋;邓锻炼;何润林;刘俊 | 申请(专利权)人: | 广州欧赛斯信息科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 胡辉 |
地址: | 510000 广东省广州市高新技术产业开发*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 新版本软件 灰度 系统及装置 容器平台 新版本 集群 发布 分布式部署 测试环境 多重环境 简单配置 开发效率 嵌入服务 软件开发 生产环境 有效减少 自动部署 配置 工作量 部署 交付 监控 应用 维护 | ||
本发明公开了一种基于容器平台的自动灰度发布方法、系统及装置,方法包括对新版本软件进行预部署配置;当监控到新版本镜像时,生成新版本软件;根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中。本发明通过将新版本软件自动部署新版本到集群上,无需嵌入服务代码,也无需维护多重环境,并能在生产环境或测试环境上完成灰度发布,只需简单配置即可与持续交付流程相结合,能有效减少工作量,并且大大提高了开发效率。本发明可广泛应用于软件开发中。
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种基于容器平台的自动灰度发布方法、系统及装置。
背景技术
互联网产品有一个特点,就是不停的升级,升级,再升级,但是系统升级总是伴随着风险,新旧版本兼容的风险,用户使用习惯突然改变而造成用户流失的风险,系统down机的风险。为了避免这些风险,很多产品都采用了灰度发布的策略,其主要思想就是把影响集中到一个点,然后再发散到一个面,出现意外情况后很容易就回退。
传统的灰度发布主要有两大方向:
1、在代码中做。一套线上环境,代码中做开关,对于不同的用户走不同的逻辑。
2、在接入层做。多套(隔离的)线上环境,接入层针对不同用户转发到不同的环境中
一般上传统灰度发布的处理方法采用第二种方向,是将应用的稳定代码和灰度代码分别发布到不同服务器上,并加载该应用的灰度配置信息;接收请求,并从请求的参数信息中提取用于灰度判断的灰度数据;根据所述灰度配置信息对所述灰度数据进行判断,确定该请求是否参与灰度发布;若参与,则将该请求分配到灰度代码所在的服务器处理;若不参与,则将该请求分配到稳定代码所在的服务器处理。
然而,若在代码中做,则需要在灰度发布逻辑中侵入代码,工作量较大;若在接入层中做,则配置复杂,需维护多套线上环境,运维成本高。
发明内容
为了解决上述技术问题,本发明的目的是提供一种能减少工作量,且基于容器平台的自动灰度发布方法、系统及装置。
本发明所采取的技术方案是:
一种基于容器平台的自动灰度发布方法,包括以下步骤:
对新版本软件进行预部署配置;
当监控到新版本镜像时,生成新版本软件;
根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中。
作为所述的一种基于容器平台的自动灰度发布方法的进一步改进,所述的对新版本软件进行预部署配置,其具体包括:
配置流水线,并使其处于工作状态;
对新版本的流量规则进行预设置。
作为所述的一种基于容器平台的自动灰度发布方法的进一步改进,所述的根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中,这一步骤具体包括:
在同一个服务网格内各个代理构成的网络中截获用户请求的业务流量,并通过在每个pod中自动注入服务网格的代理容器接替该业务流量;
通过不同版本预设置的流量规则,将新版本软件通过K8S系统将流量规则分配到不同的pod上。
本发明所采用的另一技术方案是:
一种基于容器平台的自动灰度发布系统,包括:
配置单元,用于对新版本软件进行预部署配置;
监控单元,用于当监控到新版本镜像时,生成新版本软件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州欧赛斯信息科技有限公司,未经广州欧赛斯信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810060259.3/2.html,转载请声明来源钻瓜专利网。