設定の復元
デプロイ中、不正な形式または誤った設定データが原因でアプリケーションにエラーが発生する状況を軽減するには、自動ロールバックを使用する (デプロイ中にアラームがトリガーされた場合) か、設定データを以前のバージョンに戻す (デプロイが正常に完了した場合) 必要があります。
自動ロールバックでは、AWS AppConfig デプロイ戦略と Amazon CloudWatch アラームを組み合わせて使用できます。設定すると、デプロイ中に 1 つ以上の CloudWatch アラームが ALARM
状態になると、AWS AppConfig は自動的に設定データを以前のバージョンにロールバックし、アプリケーションの停止やエラーを防ぎます。開始するには、「(推奨) 自動ロールバックのアクセス許可を設定する」を参照してください。
注記
また、デプロイが進行中に StopDeployment API オペレーションを呼び出すことで、設定をロールバックすることもできます。
正常に完了したデプロイの場合、AWS AppConfig は、StopDeployment API オペレーションで AllowRevert
パラメータを使用して設定データを以前のバージョンに戻すこともサポートします。一部のお客様では、デプロイが成功した後に以前の設定に戻すと、データはデプロイ前と同じであることが保証されます。また、元に戻すとアラームモニターも無視され、アプリケーションの緊急事態中にロールフォワードが進行するのを防ぐことができます。
重要
AllowRevert
パラメータを有効にして StopDeployment
を呼び出すと、AWS AppConfig は過去 72 時間以内にデプロイが成功した場合にのみデプロイを元に戻します。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