如果您的应用有多个应用实例且需要升级,那么您可以按需通过灰度或分批发布方式升级应用实例版本。本文介绍两种发布方式的背景信息、场景示例和操作步骤;此外,还涉及应用回滚的说明。
背景信息
- 灰度发布:又名金丝雀发布,在原有部署版本可用的情况下,同时部署新版本应用作为金丝雀,测试新版本的性能,在保证整体系统稳定的情况下,帮助您尽早发现问题和修复问题。
应用进行灰度发布时,为了保证应用稳定性,灰度发布的应用实例数不能超过应用实例总数的50%,剩余的应用实例按照指定的批次分批发布。
- 分批发布是按批次进行应用部署,每次仅对应用的一部分实例进行升级。分批发布过程中如果出现故障,则可以及时终止并回退,待问题修复后重新发布。
应用进行分批发布时,应用内的实例数会平均分配到每个批次进行部署。如果无法平均分配,则靠前的批次分配到的实例数少,靠后的批次分配到的实例数多。
场景示例
某应用包含10个应用实例,每个应用实例的部署版本为Ver.1版本,现需将每个应用实例升级为Ver.2版本。
- 灰度发布:假设选择2台应用实例进行灰度发布,剩下8个应用实例分3批进行分批发布,发布流程如下图所示。
- 分批发布:假设将所有应用实例分3批进行部署,该发布流程如下图所示。
操作步骤
应用回滚
采用灰度发布或者分批发布方式升级应用实例时,如果应用实例中存在未完成升级的实例,则当前应用升级状态处于进行中。
在实时跟踪应用升级时,如果首批应用实例升级突发异常停止响应,为了保证业务不受影响,请在变更详情页面中单击立即回滚,将已升级的实例回退至升级前版本,并将配置还原为升级前原有配置。
在应用变更过程中,如果出现部署包不可用、健康检查失败等变更流程异常情况,将导致应用升级失败,SAE将停止当前应用并进行回退。
在SAE上进行应用升级耗时约为30分钟,超出该时间后SAE将上报超时异常并暂停变更流程,请在变更详情页面手动终止发布流程并回滚应用。
更多信息
问题反馈
如果您在使用SAE过程中有任何疑问,欢迎您扫描下面的二维码加入钉钉群进行反馈。
