还原配置
在部署期间,可以通过使用自动回滚(如果在部署期间触发警报)或将配置数据还原到先前版本(如果部署成功完成),来缓解配置数据格式错误或不正确导致应用程序出错的情况。
要实现自动回滚,可以结合使用 AWS AppConfig deployment strategies 和 Amazon CloudWatch 警报。完成配置后,如果一个或多个 CloudWatch 警报在部署期间进入 ALARM
状态,则 AWS AppConfig 会自动将配置数据回滚到先前版本,从而防止应用程序中断或出错。要开始使用,请参阅 (建议)配置自动回滚权限。
注意
还可以在部署仍在进行时,通过调用 StopDeployment API 操作来回滚配置。
对于成功完成的部署,AWS AppConfig 还支持通过在 StopDeployment API 操作中使用 AllowRevert
参数,来将配置数据还原到先前版本。对于某些客户来说,成功部署后还原到先前配置可以保证数据与部署前相同。还原操作还会忽略警报监视器,这可能会阻止在应用程序紧急情况下前滚。
重要
如果在启用 AllowRevert
参数的情况下调用 StopDeployment
,则只有在过去 72 小时内成功部署后,AWS AppConfig 才会还原部署。72 小时后,无法再还原部署。必须创建新的部署。
以下是基于不同情况的 StopDeployment
功能的细分。
-
如果对正在进行的部署调用
StopDeployment
,则生成的部署状态将为ROLLED_BACK
。 -
如果对正在进行的部署调用
StopDeployment
(AllowRevert
= true),则生成的部署状态将为ROLLED_BACK
。 -
如果对完成的部署调用
StopDeployment
,将引发BadRequestException
。 -
如果对完成的部署调用
StopDeployment
(AllowRevert
= true),则生成的部署状态将为REVERTED
。 -
如果在 72 小时后对完成的部署调用
StopDeployment
(AllowRevert
= true),将引发BadRequestException
。
可以使用 AWS CLI 通过 AllowRevert
参数调用 StopDeployment
操作。以下是包含 AllowRevert
参数的示例 AWS CLI 命令。
aws appconfig stop-deployment \ --application-id 339ohji \ --environment-id 54j1r29 \ --deployment-number 2 \ --allow-revert true