设计应用

面向云原生全链路灰度发布技术研究与实践

作者:刘军1,2,李雄清1,2,孙琼巍1,2,刘利3,李永1,2
发布日期:2023-05-08
来源:2023年电子技术应用第4期

0 引言

随着以容器、微服务、DevOps为代表的云原生架构的不断丰富和落地,各大企业业务服务云原生架构转型不断推进,企业服务架构和服务之间的依赖关系更加错综复杂。云原生架构帮助企业实现云服务高可用、快速部署等能力,但是面对云原生架构下多版本多服务的快速迭代,传统灰度发布方案已经不满足需求。因此,对云原生架构下的灰度发布能力也提出了新的挑战。

传统灰度发布方案的实现方式主要是在负载均衡器处实现,如服务端负载均衡服务器Nginx或者客户端负载均衡器Dubbo,最后通过人工手段控制灰度策略。但是在云原生架构下现有的灰度发布模式越来越不满足需求,主要挑战有如下3点:

(1)云原生架构面临多版本多服务快速迭代相互影响的挑战。在云原生架构线上灰度发布时难以实现需求范围内的单独版本、服务验证,并且不影响其他版本服务。出现问题时难以在多版本多服务间快速准确定位,导致发布过程中问题排查时间长、影响范围大,最终导致发布速度慢。

(2)云原生架构面临灰度发布技术精细化控制的挑战,在云原生架构线上灰度发布时不能像虚拟机或实体机发布时一样,可以单独控制某一台机器的流量访问。并且传统的灰度发布技术在控制能力、配置灵活度上也不能满足云原生架构的快速发布、生效需求。

(3)全链路灰度发布是云原生架构下的另一大挑战,各大企业在云原生转型时,将单体服务进行微服务拆分和分层,导致一个业务需求发布时需要多服务同时发布,此时在云原生架构下,传统灰度发布方案不支持所有发布服务的端到端详细控制。同时通过人工维护负载均衡器上的灰度策略出现问题的概率大、效率低,无法有效支撑云原生架构下业务服务的快速验证、发布。



本文详细内容请下载:https://www.chinaaet.com/resource/share/2000005286




作者信息:

刘军1,2,李雄清1,2,孙琼巍1,2,刘利3,李永1,2

(1.中国民航信息网络股份有限公司,北京 101318;2.民航旅客服务智能化应用技术重点实验室,北京 101318;
3.欧普杰科技(大连)有限公司,辽宁 大连 116000)


微信图片_20210517164139.jpg

此内容为AET网站原创,未经授权禁止转载。
云原生 全链路 灰度发布 染色技术 精细化控制
Baidu
map