19、无服务器框架的 CI/CD 实践

无服务器框架的 CI/CD 实践

金丝雀部署或流量转移

金丝雀部署,也称为线性部署或流量转移,与蓝绿部署方法有相似之处。我们会在现有生产环境旁边部署一个新环境,但与蓝绿部署直接切换流量不同,我们会先将一小部分流量导向新环境。然后密切监控,如果确认引入的更改没有对服务产生负面影响,就可以逐渐增加新环境的流量,直到旧环境不再接收流量。

这种部署方式的核心思想是,通过缓慢地向一小部分用户引入更改,可以大大降低出现问题时的影响。如果一切顺利,部署过程对客户端和用户来说应该是透明的。若需要回滚,只需将流量转移权重设为零,或者直接删除金丝雀部署,就能立即将流量切回上一个环境。

在 Route 53 中使用加权路由进行金丝雀部署时,确定触发部署失败的关键指标非常重要。这些指标可以是基础设施或应用层面的错误率相关指标,例如在特定时间段内测量应用程序异常的数量;也可以是与产品相关的指标,例如用户是否还在点击某个特定按钮,用户体验是否发生了变化等。只有你自己才能为触发条件选择最佳指标,所以最好向不同的利益相关者群体征求意见,以确保做出正确的选择。

要在无服务器框架中实现这种部署方法的变体,可以使用 David Garcia 开发的 Serverless Plugin Canary Deployments 插件。该插件利用 Lambda 的流量转移功能以及 AWS CodeDeploy 自动更新 Lambda 别名权重。它支持运行金丝雀部署所需的一切功能,包括各种流量转移方案、触发部署回滚的警报,以及使用 Lambda 和 CodeDeploy SDK 运行自定义或集成测试的过程钩子。这个插件简化了复杂的 Lambda 自动化配置,使其易于理解。 </

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值