The invention discloses an automatic gray distribution method, system and device based on a container platform. The method includes a pre deployment configuration for the new version of the software. When a new version of the image is monitored, a new version of the software is generated. According to the pre deployment configuration, the new version of the software is distributed in the form of the cluster in the form of the K8S system of pod. In the middle. By automatically deploying a new version of a new version of the software to a cluster, it does not need to embed the service code, and does not need to maintain multiple environments, and can complete the distribution of grayscale in the production environment or the test environment. It can be combined with the continuous delivery process in a simple configuration. It can reduce the workload effectively and greatly improve the development. Efficiency. The invention can be widely used in software development.
【技术实现步骤摘要】
一种基于容器平台的自动灰度发布方法、系统及装置
本专利技术涉及计算机软件
,尤其涉及一种基于容器平台的自动灰度发布方法、系统及装置。
技术介绍
互联网产品有一个特点,就是不停的升级,升级,再升级,但是系统升级总是伴随着风险,新旧版本兼容的风险,用户使用习惯突然改变而造成用户流失的风险,系统down机的风险。为了避免这些风险,很多产品都采用了灰度发布的策略,其主要思想就是把影响集中到一个点,然后再发散到一个面,出现意外情况后很容易就回退。传统的灰度发布主要有两大方向:1、在代码中做。一套线上环境,代码中做开关,对于不同的用户走不同的逻辑。2、在接入层做。多套(隔离的)线上环境,接入层针对不同用户转发到不同的环境中一般上传统灰度发布的处理方法采用第二种方向,是将应用的稳定代码和灰度代码分别发布到不同服务器上,并加载该应用的灰度配置信息;接收请求,并从请求的参数信息中提取用于灰度判断的灰度数据;根据所述灰度配置信息对所述灰度数据进行判断,确定该请求是否参与灰度发布;若参与,则将该请求分配到灰度代码所在的服务器处理;若不参与,则将该请求分配到稳定代码所在的服务器处理。然而,若在代码中做,则需要在灰度发布逻辑中侵入代码,工作量较大;若在接入层中做,则配置复杂,需维护多套线上环境,运维成本高。
技术实现思路
为了解决上述技术问题,本专利技术的目的是提供一种能减少工作量,且基于容器平台的自动灰度发布方法、系统及装置。本专利技术所采取的技术方案是:一种基于容器平台的自动灰度发布方法,包括以下步骤:对新版本软件进行预部署配置;当监控到新版本镜像时,生成新版本软件;根据预部 ...
【技术保护点】
1.一种基于容器平台的自动灰度发布方法,其特征在于,包括以下步骤:对新版本软件进行预部署配置;当监控到新版本镜像时,生成新版本软件;根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中。
【技术特征摘要】
1.一种基于容器平台的自动灰度发布方法,其特征在于,包括以下步骤:对新版本软件进行预部署配置;当监控到新版本镜像时,生成新版本软件;根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中。2.根据权利要求1所述的一种基于容器平台的自动灰度发布方法,其特征在于:所述的对新版本软件进行预部署配置,其具体包括:配置流水线,并使其处于工作状态;对新版本的流量规则进行预设置。3.根据权利要求2所述的一种基于容器平台的自动灰度发布方法,其特征在于:所述的根据预部署配置,将新版本软件通过K8S系统的pod的形式分布式部署在集群中,这一步骤具体包括:在同一个服务网格内各个代理构成的网络中截获用户请求的业务流量,并通过在每个pod中自动注入服务网格的代理容器接替该业务流量;通过不同版本预设置的流量规则,将新版本软件通过K8S系统将流量规则分配到不同的pod上。4.一种基于容器平台的自动灰度发布系统,其特征在于,包括:配置单元,用于对新版本软件进行预部署配置...
【专利技术属性】
技术研发人员:颜文德,徐明,叶祖锋,邓锻炼,何润林,刘俊,
申请(专利权)人:广州欧赛斯信息科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。