2022年6月,农商行信息部历时5个月时间精心打造的灰度发布平 台正式在企业网银上线,企业网银从此可以实现不停机地版本发布。在金 融科技化的时代,灰度发布可以让应用更快地进行迭代,以更高的频率发 布到市场,同时还能减轻运维人员的负担,并且给2022年6月,农商行信息部历时5个月时间精心打造的灰度发布平 台正式在企业网银上线,企业网银从此可以实现不停机地版本发布。在金 融科技化的时代,灰度发布可以让应用更快地进行迭代,以更高的频率发 布到市场,同时还能减轻运维人员的负担,并且给用户带来更好的体验。
为什么要使用灰度发布传统金融正在向互联网金融进行转型和过渡, 互联网应用的一大特点就是高频率的版本发布,这样才能使业务部门开发 的新产品快速地投入市场,获取更多的用户。我行提供的金融服务已经覆 盖了企业和个人的方方面面,新功能的发布、第三方接口的变更、问题的 修复都会需要进行应用的升级。但是对于运维部门来说,应用变更总是伴 随着风险和压力。以往我行每次互联网应用更新均需要在23:00停机后才 能进行,经常在凌晨才能完成上线,每次上线投产后由于时间窗口较晚、 验证时间较短,有些场景需要隔日验证,无法对所有场景进行覆盖,无法 保证互联网应用的稳定性。同时对于业务部门和开发部门来说,新的产品 和功能是否能被大部分用户接受,也存在一定的风险。
灰度发布,就是解决以上矛盾的一个最好方法。灰度发布也叫金丝雀 发布,名字起源于以前矿工下矿井前,先会放一只金丝雀进去探测是否有 有毒气体。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以 发现、调整问题,以保证其影响度。灰度发布开始到结束期间的这一段时 间,称为灰度期。
应用系统通过灰度发布可以实现以下目标。提高应用稳定性:即使新 版本出现问题,也只会影响很小部分的用户,波及范围可以提前控制;提 高产品质量:灰度发布等于是让用户来参与测试,通过真实流量来检验应 用质量,同时可以根据这一小部分尝鲜用户的反馈及时对应用进行改进;
应用更新更加有序和自动:以往的变更,需要经历停机、升级、投产、验 证,投入较大,但如果以灰度发布的方式,逐渐更新,就可以实现不停机 的应用更新,甚至可以在白天发布应用;应用版本迭代更快:产品不需要 等到100%完美才进行发布,同时因为可以实现7~24不停机发版,大大地 释放了运维人员的生产力,版本更新的频率可以更快。
灰度发布实践实现灰度发布最重要的两个问题是灰度策略如何制定, 以及灰度策略如何执行。灰度策略其实就是决定什么样的请求应该路由到 我们的灰度版本上来,以什么为依据。通常有以下几种策略。根据用户灰 度:例如账号、ID等,可以精准控制灰度用户,业界使用较多;根据客 户端灰度:例如手机类型、浏览器类型等,实现简单,但用户样本比较片 面;根据IP灰度:例如某一地区用户,或者某一运营商用户,实现简单, 但具有较大随机性。
综合考虑后,我行最终采用根据用户进行灰度的策略,根据不同应用 的特点设置用户白名单,基于用户白名单进行灰度发布。
灰度策略执行方面,我行目前针对互联网应用已经建设了部署平台, 另外我行所有的互联网应用都通过F5负载均衡器进行交付。基于我行现 状,经过项目组的讨论,决定采用部署平台和负载均衡配合的方式实现灰 度发布。在负载均衡设备上预设好灰度标志,由部署平台通过F5的
互联网应用灰度发布建设实践 来自淘豆网m.daumloan.com转载请标明出处.