アプリケーションアップグレードのロールバック - Managed Service for Apache Flink

Amazon Managed Service for Apache Flink は、以前は Amazon Kinesis Data Analytics for Apache Flink と呼ばれていました。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

アプリケーションアップグレードのロールバック

アプリケーションに問題がある場合、または Flink バージョン間でアプリケーションコードに不整合がある場合は、 AWS CLI、 AWS CloudFormation AWS SDK、または を使用してロールバックできます AWS Management Console。次の例は、さまざまな障害シナリオでのロールバックがどのように見えるかを示しています。

ランタイムのアップグレードは成功し、アプリケーションは RUNNING状態ですが、ジョブは失敗し、継続的に再起動しています

米国東部 (バージニア北部) で、 という名前のステートフルアプリケーションを Flink 1.15 TestApplicationから Flink 1.18 にアップグレードしようとしているとします。ただし、アップグレードされた Flink 1.18 アプリケーションは、アプリケーションが RUNNING状態であっても起動に失敗しているか、常に再起動しています。これは一般的な障害シナリオです。さらなるダウンタイムを避けるため、アプリケーションをすぐに以前の実行中のバージョン (Flink 1.15) にロールバックし、後で問題を診断することをお勧めします。

アプリケーションを以前の実行バージョンにロールバックするには、rollback-application AWS CLI コマンドまたは RollbackApplicationAPIアクションを使用します。このAPIアクションは、最新バージョンになった変更をロールバックします。次に、最後に成功したスナップショットを使用してアプリケーションを再起動します。

アップグレードを試みる前に、既存のアプリでスナップショットを作成することを強くお勧めします。これにより、データ損失やデータの再処理を回避できます。

この障害シナリオでは、 AWS CloudFormation はアプリケーションをロールバックしません。テンプレートを更新 CloudFormation して、以前のランタイムを指し、 がアプリケーションを更新 CloudFormation するよう強制するには、前のコードを指す必要があります。それ以外の場合、 CloudFormation はアプリケーションが RUNNING状態に移行したときに更新されたことを前提としています。

スタックしているアプリケーションをロールバックする UPDATING

アップグレードの試行後にアプリケーションが UPDATINGまたは AUTOSCALING状態でスタックした場合、Amazon Managed Service for Apache Flink は rollback-applications AWS CLI コマンド、またはアプリケーションをスタックUPDATINGまたは AUTOSCALING状態になる前のバージョンにロールバックできるRollbackApplicationsAPIアクションを提供します。これにより、アプリケーションが UPDATINGまたはAUTOSCALING推移的な状態でスタックする原因となった変更がAPIロールバックされます。