有奖征文|投稿上云技术实践,赢取价值5000元大奖> HOT
注意:

本篇文档仅适用于云开发中的云托管,不适用于云托管独立控制台。

云托管目前支持两种更新/回滚方式:

对比项 新建版本 编辑原版本配置并重新部署(不推荐)
更新前后内网 IP 不变 否,每个版本 IP 不同 是,版本不变则 IP 不变
调用方式 通过域名调用 通过域名调用或通过内网 IP 调用(限同一 VPC 内)
回滚 支持,流量导回旧版本即可回滚 支持,用历史配置重新部署实现回滚
灰度发布 支持,详情请参见 流量配置 不支持
多版本并行 支持 不支持

方式一:新建版本(推荐)

每次更新服务都新建一个版本,部署成功后逐步将流量从旧版本切换到新版本。通过域名调用不强依赖固定 IP,更符合云原生理念。

步骤1:进入服务详情页面

登录 云开发中的云托管控制台,选择您需要更新的服务,单击服务名称进入服务详情页面。

步骤2:新建版本

单击新建版本,填写更新所需的版本配置信息,详情请参见 版本配置说明
根据需要选择合适的流量配置策略,例如:

  • 灰度发布/蓝绿发布:流量策略选择部署完成后保持流量为 0,稍后手动配置流量,待发布完成后,手动配置流量到新版本上。详情可参见 流量配置
  • 全量发布:流量策略选择部署完成后自动开启100%流量,待发布完成后,即自动切换全部流量到新版本上;

步骤3:开始更新

单击开始部署

步骤4:回滚服务

通过流量配置,将希望回滚的旧版本流量设置为100%,新版本流量设置为0。

方式二:原版本编辑配置并重新部署

不新建版本,在已有版本中编辑配置信息,然后重新部署。此方式下不支持灰度

步骤1:进入服务详情页面

登录 云开发中的云托管控制台,选择您需要更新的服务,单击服务名称进入服务详情页面。

步骤2:编辑配置

选择需要更新的版本,在操作 > 更多下拉菜单中,选择编辑配置并重新部署。或单击目标版本进入版本详情页面,单击版本配置选项卡,在配置信息卡片右上角单击编辑配置并重新部署
填写更新所需更新的版本配置信息,详情可参见 版本配置说明

说明:

  • 重新部署不支持重新选择流量策略,将沿用版本当前流量配置。如有需要,请在重新部署成功后手动配置流量。
  • 若需更新镜像/代码,请单击更新镜像信息,并填写表单。提交新的镜像信息并不会立刻开始部署,需要等其余配置信息也编辑完毕后触发

步骤3:重新部署

单击保存并重新部署,版本状态变为“更新中”。部署成功则状态变为“正常”,流量保持不变。若有报错,会变为具体的错误状态。
部署成功后,版本历史中会生成一个新的快照,记录此次部署前版本的详情,用于回滚。

步骤4:回滚

版本历史中选择需要回滚的快照,单击查看详情对比当前版本和快照的差异,确认后单击回滚
版本状态变为“更新中”。回滚成功则状态变为“正常”,流量保持不变。若有报错,会变为具体的错误状态。

风险说明

重新部署过程中,为保证业务持续运行,将采取滚动更新实例的方式进行升级。滚动更新可能带来以下风险:

  • 重新部署需要所有实例更新成功才算成功,任意实例更新失败会自动回滚整个版本,导致版本更新不成功。
  • 重新部署过程中,版本同时存在已更新的实例和尚未更新的实例,有一定概率不同请求访问同一版本时现象不一致。
  • 重新部署过程中,因正在更新的实例无法提供服务,可能导致剩余实例无法承受当前业务流量而触发扩容条件,产生额外的实例及资源消耗。
目录