

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

# Apache Flink のインプレースバージョンアップグレードを使用してアプリケーションをアップグレードする
<a name="upgrading-applications"></a>

開始する前に、「[In-Place Version Upgrades](https://www.youtube.com/watch?v=f1qGGdaP2XI)」の動画を見ることをお勧めします。

Apache Flink のインプレースバージョンアップグレードを実行するには、 AWS CLI、、 AWS CloudFormation AWS SDK、または を使用できます AWS マネジメントコンソール。この機能は、`READY` または `RUNNING` 状態の Managed Service for Apache Flink と組み合わせて使用する既存のアプリケーションで使用できます。UpdateApplication API を使用して、Flink ランタイムを変更する機能を追加します。

## アップグレード前: Apache Flink アプリケーションを更新する
<a name="before-upgrading"></a>

Flink アプリケーションを記述するときに、それらを依存関係とともにアプリケーション JAR にバンドルし、その JAR を Amazon S3 バケットにアップロードします。そこから、Amazon Managed Service for Apache Flink は、選択した新しい Flink ランタイムでジョブを実行します。アップグレード先の Flink ランタイムとの互換性を実現するために、アプリケーションの更新が必要になる場合があります。Flink バージョン間に不整合がある可能性があり、その場合はバージョンのアップグレードが失敗します。最も一般的には、ソース (イングレス) または送信先 (シンク、エグレス) と Scala の依存関係のコネクタを使用します。Managed Service for Apache Flink の Flink 1.15 以降のバージョンは Scala に依存しないため、JAR には使用する予定の Scala のバージョンが含まれている必要があります。

**アプリケーションを更新するには**

1. 状態ありのアプリケーションのアップグレードに関する Flink コミュニティからのアドバイスをお読みください。「[Upgrading Applications and Flink Versions](https://nightlies.apache.org/flink/flink-docs-master/docs/ops/upgrading/)」を参照してください。

1. 既知の問題と制限のリストをお読みください。「[アプリケーションのアップグレードに関する注意事項と既知の問題](precautions.md)」を参照してください。

1. 依存関係を更新し、アプリケーションをローカルでテストします。通常、これらの依存関係は次のとおりです。

   1. Flink ランタイムと API。

   1. 新しい Flink ランタイムに推奨されるコネクタ。これらは、更新する特定のランタイムの[リリースバージョン](https://docs.aws.amazon.com/managed-flink/latest/java/release-version-list.html)で確認できます。

   1. Scala – Apache Flink は、Flink 1.15 以降は Scala に依存しません。使用する Scala の依存関係をアプリケーション JAR に含める必要があります。

1. zip ファイルに新しいアプリケーション JAR をビルドし、Amazon S3 にアップロードします。前の JAR/zip ファイルとは異なる名前を使用することをお勧めします。ロールバックする必要がある場合は、この情報を使用します。

1. ステートフルアプリケーションを実行している場合は、現在のアプリケーションのスナップショットを作成することを強くお勧めします。これにより、アップグレード中またはアップグレード後に問題が発生した場合に、ステートフルにロールバックできます。