Amazon Managed Service for Apache Flink は、以前は Amazon Kinesis Data Analytics for Apache Flink と呼ばれていました。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アプリケーションを新しい Apache Flink バージョンにアップグレードする
UpdateApplication アクションを使用して Flink アプリケーションをアップグレードできます。
を呼び出す方法はUpdateApplication
API複数あります。
-
で既存の設定ワークフローを使用します AWS Management Console。
-
のアプリページに移動します AWS Management Console。
-
[設定] を選択します。
-
新しいランタイムと、復元設定とも呼ばれる、開始するスナップショットを選択します。最新のスナップショットからアプリケーションを起動するには、復元設定として最新の設定を使用します。Amazon S3 でアップグレードされた新しいアプリケーション JAR/zip をポイントします。 Amazon S3
-
-
AWS CLI update-application
アクションを使用します。 -
AWS CloudFormation () を使用しますCFN。
-
RuntimeEnvironment フィールドを更新します。以前は、 アプリケーション AWS CloudFormation を削除して新しいアプリケーションを作成していたため、スナップショットやその他のアプリケーション履歴が失われていました。これで、 RuntimeEnvironment は を所定の位置に AWS CloudFormation 更新し、アプリケーションは削除されません。
-
-
を使用します AWS SDK。
-
選択したプログラミング言語については、SDKドキュメントを参照してください。を参照してくださいUpdateApplication。
-
アップグレードは、アプリケーションが RUNNING
状態にある間、またはアプリケーションが READY
状態で停止している間に実行できます。Amazon Managed Service for Apache Flink は、元のランタイムバージョンとターゲットランタイムバージョン間の互換性を検証します。この互換性チェックは、 状態UpdateApplication中に を実行したとき、または RUNNING
状態中にアップグレードStartApplicationしたときに次の で実行されますREADY
。
次の例は、 を使用して米国東部 (バージニア北部) の というRUNNING
名前のアプリケーションを Flink 1.18 UpgradeTest
にアップグレード AWS CLI し、最新のスナップショットからアップグレードされたアプリケーションを起動する例を示しています。
aws --region us-east-1 kinesisanalyticsv2 update-application \ --application-name UpgradeTest --runtime-environment-update "FLINK-1_18" \ --application-configuration-update '{"ApplicationCodeConfigurationUpdate": '\ '{"CodeContentUpdate": {"S3ContentLocationUpdate": '\ '{"FileKeyUpdate": "flink_1_18_app.jar"}}}}' \ --run-configuration-update '{"ApplicationRestoreConfiguration": '\ '{"ApplicationRestoreType": "RESTORE_FROM_LATEST_SNAPSHOT"}}' \ --current-application-version-id ${current_application_version}
-
サービススナップショットを有効にし、最新のスナップショットからアプリケーションを継続する場合、Amazon Managed Service for Apache Flink は、現在の
RUNNING
アプリケーションのランタイムが選択したターゲットランタイムと互換性があることを確認します。 -
ターゲットランタイムを継続するスナップショットを指定した場合、Amazon Managed Service for Apache Flink は、ターゲットランタイムが指定されたスナップショットと互換性があることを確認します。互換性チェックが失敗した場合、更新リクエストは拒否され、アプリケーションは
RUNNING
状態のままになります。 -
スナップショットなしでアプリケーションを起動することを選択した場合、Amazon Managed Service for Apache Flink は互換性チェックを実行しません。
-
アップグレードされたアプリケーションが失敗したり、一時的な
UPDATING
状態で停止したりした場合は、 アプリケーションのロールバックアップグレードセクションの指示に従って正常な状態に戻ります。
実行中の状態アプリケーションのプロセスフロー
次の例は、 を使用して、米国東部 (バージニア北部) の というREADY
名前のアプリケーションを UpgradeTest
Flink 1.18 にアップグレードする例です AWS CLI。アプリケーションが実行されていないため、アプリケーションを起動するためのスナップショットが指定されていません。アプリケーション開始リクエストを発行するときにスナップショットを指定できます。
aws --region us-east-1 kinesisanalyticsv2 update-application \ --application-name UpgradeTest --runtime-environment-update "FLINK-1_18" \ --application-configuration-update '{"ApplicationCodeConfigurationUpdate": '\ '{"CodeContentUpdate": {"S3ContentLocationUpdate": '\ '{"FileKeyUpdate": "flink_1_18_app.jar"}}}}' \ --current-application-version-id ${current_application_version}
-
READY
状態のアプリケーションのランタイムを任意の Flink バージョンに更新できます。Amazon Managed Service for Apache Flink は、アプリケーションを起動するまでチェックを実行しません。 -
Amazon Managed Service for Apache Flink は、アプリケーションを起動するために選択したスナップショットに対してのみ互換性チェックを実行します。これらは、Flink 互換性テーブル に従った基本的な互換性
チェックです。スナップショットが作成された Flink バージョンとターゲットとする Flink バージョンのみをチェックします。選択したスナップショットの Flink ランタイムがアプリの新しいランタイムと互換性がない場合、開始リクエストが拒否される可能性があります。
レディステートアプリケーションのプロセスフロー