このページでは、インスタンスまたはバッチ パイプラインのバージョンをアップグレードする方法について説明します。
Cloud Data Fusion のインスタンスとバッチ パイプラインを最新のプラットフォームとプラグインのバージョンにアップグレードして、最新の機能、バグの修正、パフォーマンスの改善を実現します。
始める前に
- アップグレードのために計画的ダウンタイムを設定します。 この処理には最大で 1 時間ほどかかります。
-
In the Google Cloud console, activate Cloud Shell.
制限事項
Cloud Data Fusion インスタンスを作成した後では、アップグレード オペレーションでもエディションを変更できません。
Terraform でアップグレードをトリガーしないでください。インプレース アップグレードを実行するのではなく、インスタンスを削除して再作成します。この問題により、インスタンス内の既存のデータが失われます。
Cloud Data Fusion は、アップグレード オペレーションの結果として停止したパイプラインを再起動しません。
6.11.0 より前のバージョンからインスタンスをアップグレードする場合は、アップグレードのダウンタイムが長くなることが予想されます。特に、インスタンスが大量のデータを処理する場合は、ダウンタイムが長くなる可能性があります。
Kafka リアルタイム ソースを使用してバージョン 6.8.0 で作成されたパイプラインを除き、リアルタイム パイプラインのアップグレードはサポートされていません。回避策については、リアルタイム パイプラインのアップグレードをご覧ください。
Cloud Data Fusion インスタンスをアップグレードする
Cloud Data Fusion インスタンスを新しい Cloud Data Fusion バージョンにアップグレードするには、[インスタンスの詳細] ページに移動します。
In the Google Cloud console, go to the Cloud Data Fusion page.
Click Instances, and then click the instance's name to go to the Instance details page.
次に、 Google Cloud コンソールまたは gcloud CLI を使用してアップグレードを実行します。
コンソール
[アップグレード] をクリックして、使用可能なバージョンのリストを表示します。
バージョンを選択してください
[アップグレード] をクリックします。
アップグレードが成功したことを確認します。
[インスタンスの詳細] ページを更新します。
[インスタンスを表示] をクリックして、Cloud Data Fusion ウェブ インターフェースでアップグレードされたインスタンスにアクセスします。
メニューバーの [システム管理者] をクリックします。
新しいバージョン番号がページ上部に表示されます。
新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。
gcloud
新しい Cloud Data Fusion バージョンにアップグレードするには、ローカルのターミナルの Cloud Shell セッションから次の gcloud CLI コマンドを実行します。
gcloud beta data-fusion instances update INSTANCE_ID \ --project=PROJECT_ID \ --location=LOCATION_NAME \ --version=AVAILABLE_INSTANCE_VERSION省略可: インスタンスに該当する場合は、
--enable_stackdriver_logging、--enable_stackdriver_monitoring、--labelsフラグを追加します。省略可:
enable.unrecoverable.resetなどの CDAP プロパティを--optionsとして渡すことができます。
次の手順で、アップグレードが成功したことを確認します。
Google Cloud コンソールで、Cloud Data Fusion の [インスタンス] ページに移動します。
[インスタンスを表示] をクリックして、Cloud Data Fusion ウェブ インターフェースでアップグレードされたインスタンスにアクセスします。
メニューバーの [システム管理者] をクリックします。
新しいバージョン番号がページ上部に表示されます。
新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。
バッチ パイプラインをアップグレードする
Cloud Data Fusion バッチ パイプラインをアップグレードして最新のプラグイン バージョンを使用するには:
推奨: すべてのパイプラインをバックアップします。パイプラインをバックアップするには、次の 2 つの方法があります。
次の手順で zip ファイルをダウンロードします。
- zip ファイルのダウンロードをトリガーするには、次のコマンドを使用してすべてのパイプラインをバックアップします。
echo $CDAP_ENDPOINT/v3/export/apps- 出力された URL をブラウザにコピーします。
- ダウンロードしたファイルを展開し、すべてのパイプラインがエクスポートされたことを確認します。パイプラインは名前空間により整理されます。
バージョン 6.9 以降で利用可能な ソース コントロール管理(SCM)を使用してパイプラインをバックアップします。SCM には GitHub 統合機能があり、これを使用してパイプラインをバックアップできます。
パイプラインをアップグレードする手順は次のとおりです。
次のステップで使用する
pipeline_upgrade.jsonファイルを指す変数を作成し、パイプラインのリストを保存します。export PIPELINE_LIST=PATH/pipeline_upgrade.jsonPATH は、ファイルのパスに置き換えます。
次のコマンドを使用して、インスタンスと名前空間のすべてのパイプラインのリストを作成します。結果は
JSON形式で$PIPELINE_LISTファイルに保存されます。リストを編集して、アップグレードする必要のないパイプラインを削除できます。curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps -o $PIPELINE_LISTNAMESPACE_ID は、アップグレードを実行する名前空間に置き換えます。
pipeline_upgrade.jsonにリストされているパイプラインをアップグレードします。アップグレードするパイプラインの NAMESPACE_ID を挿入します。アップグレードされたパイプラインのリストが、アップグレード ステータスとともに表示されます。curl -N -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/upgrade --data @$PIPELINE_LISTNAMESPACE_ID は、アップグレードするパイプライン名前空間 ID に置き換えます。
新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。
リアルタイム パイプラインをアップグレードする
Kafka リアルタイム ソースを使用してバージョン 6.8.0 で作成されたパイプラインを除き、リアルタイム パイプラインのアップグレードはサポートされていません。
それ以外の場合は、次の操作を行います。
- パイプラインを停止してエクスポートします。
- インスタンスをアップグレードします。
- アップグレードしたインスタンスにリアルタイム パイプラインをインポートします。
アップグレードによりレプリケーションを有効にする
レプリケーションは、バージョン 6.3.0 以降の Cloud Data Fusion 環境で有効にできます。バージョン 6.2.3 がある場合は、6.3.0 にアップグレードしてから、最新バージョンにアップグレードします。その後、レプリケーションを有効にできます。
アップグレードされたインスタンスにロールを付与する
アップグレードが完了したら、Cloud Data Fusion ランナーのロール(roles/datafusion.runner)と Cloud Storage 管理者のロール(roles/storage.admin)をプロジェクト内の Dataproc サービス アカウントに付与します。
次のステップ
- Cloud Data Fusion インスタンスのパッチ リビジョンを管理します。
- Cloud Data Fusion のバージョン管理について学習する。
- 利用可能なバージョンとパッチ リビジョンのアップグレードを確認する。
- アップグレードのトラブルシューティング。