云原生专栏丨基于服务网格的企业级灰度发布技术
灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。众所周知,灰度发布是一种非常有效的技术策略,可以帮助企业保证系统的可靠性和稳定性,同时也能够快速迭代和优化功能。在竞争激烈的市场环境下,只有不断创新和优化,才能赢得更多的用户和市场份额。因此,采用灰度发布策略可以帮助企业在竞争中立于不败之地。
下面通过一个示例来说明整个灰度发布使用场景:
某公司的电商平台需要发布一项重要的功能,叫做“秒杀活动”。
这个活动允许用户在特定的时间段内,以很低的价格购买某些商品,可以吸引更多的用户,并且让这个平台在竞争中占据更大的优势。但活动会带来一定的风险:由于用户数量巨大,如果在高峰期不能很好地处理用户请求,那么就会出现系统崩溃的情况,导致大量的用户无法正常购物,带来不好的购物体验,那我们就需要提前做好风险规避,保证活动良好的用户体验感:
1、需要在保证系统可靠性和稳定性的前提下,确保用户的体验不会受到影响;
2、需要时刻关注系统的性能和资源使用情况,及时采取措施解决潜在的问题;
3、 他们需要和其他团队密切合作,确保所有的功能都能顺利协同工作。
这里就就需要用到灰度发布策略,具体步骤如下:首先,一个小范围内部署了“秒杀活动”功能,只接受部分用户的请求,收集性能和稳定性数据。通过分析这些数据,他们发现了一些潜在的问题,并进行了修复;其次,他们继续扩大灰度范围,让更多的用户参与进来;最后,当他们的系统足够稳定时,就将“秒杀活动”功能部署到所有节点上。
在现代软件开发中,灰度发布已经成为了一个非常重要的策略,越来越多的企业开始采用它来优化产品和服务。但灰度发布也有一些挑战和风险,比如需要付出更多的时间和资源来管理和优化,以及需要建立更加复杂的系统架构。因此,企业需要在采用灰度发布前仔细评估自身的情况和需求,确保能够有效地实现这个策略。
浪潮海岳iGIX云原生平台基于服务网格技术,采用集中式的流量控制和监控机制,实现细粒度的灰度发布控制,同时通过可观察性和自动回滚机制,实现了灰度版本的性能和稳定性的实时评估,降低灰度发布的风险。
主要特性:
-
支持通用的企业级灰度部署模型:结合多年企业支持经验,对灰度部署模型进行抽象,形成了通用的企业级灰度发布模型,通过少量操作即可完成企业级应用的灰度发布;
-
支持多种灰度发布模型:支持蓝绿和金丝雀灰度发布模型,支持支持按照细粒度控制流量百分比(如路由5% 的流量到灰度版本)和路由规则(如url、headers等)的灰度路由策略;
-
支持多种灰度用户染色方案:支持管理员配置和用户自主选择的多种灰度染色方案,其中管理员配置是根据用户的角色及其承担的不同任务,配置不同用户访问产品的不同版本,精确地把受影响的流量控制在一定范围内,实现精细的流量控制;用户自主选择是用户根据自身的需求,选择使用不同的产品版本,实现对不同版本的灵活访问;
-
支持灰度发布应用的实时监控:通过提供了灰度发布的规则拓扑图和链路跟踪图,对灰度发布应用进行实时监控,帮助用户更加直观的了解已配置的灰度发布的规则,追踪流量具体去向信息,以便对新版本的性能和稳定性进行更好的评估;
-
支持灰度发布的全生命周期管理:通过直观友好的图形界面和简单的操作,支持对灰度应用的打包、部署、运维和监控的全生命周期的管理,提升运维人员的效率。
最后插个安利,inBuilder低代码平台开源社区版,可免费下载、免费试用,大家可点击下载体验。