インスタンスとパイプラインのバージョン アップグレードを管理する

このページでは、インスタンスまたはバッチ パイプラインのバージョンのアップグレードについて説明します。

Cloud Data Fusion インスタンスとバッチ パイプラインを最新のプラットフォームとプラグインのバージョンにアップグレードして、最新機能、バグの修正、パフォーマンスの改善を行ってください。

準備

  • アップグレードのために計画的ダウンタイムを設定します。 この処理には最大で 1 時間ほどかかります。
  • Google Cloud コンソールで、「Cloud Shell をアクティブにする」をクリックします。

    Cloud Shell をアクティブにする

制限事項

  • Cloud Data Fusion インスタンスを作成した後は、アップグレード オペレーションによってもエディションを変更することはできません。

  • Kafka リアルタイム ソースを使用してバージョン 6.8.0 で作成されたパイプラインを除き、リアルタイム パイプラインのアップグレードはサポートされていません。回避策については、リアルタイム パイプラインのアップグレードをご覧ください。

  • Cloud Data Fusion では、アップグレード オペレーションの結果として停止するパイプラインは再起動されません。

Cloud Data Fusion インスタンスをアップグレードする

Cloud Data Fusion インスタンスを新しい Cloud Data Fusion バージョンにアップグレードするには、[インスタンスの詳細] ページに移動します。

  1. Google Cloud コンソールで、Cloud Data Fusion のページに移動します。

  2. [インスタンス] をクリックし、インスタンスの名前をクリックして [インスタンスの詳細] ページに移動します。

    [インスタンス] に移動

次に、Google Cloud コンソールまたは gcloud CLI を使用してアップグレードを実行します。

コンソール

  1. [アップグレード] をクリックして、使用可能なバージョンのリストを表示します。

  2. バージョンを選択してください

  3. [アップグレード] をクリックします。

  4. アップグレードが正常に完了したことを確認します。

    1. [インスタンスの詳細] ページを更新します。

    2. [インスタンスを表示] をクリックして、Cloud Data Fusion ウェブ インターフェースでアップグレードされたインスタンスにアクセスします。

    3. メニューバーの [システム管理者] をクリックします。

      新しいバージョン番号がページ上部に表示されます。

  5. 新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。

gcloud

  1. 新しい 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
    
  2. 次の手順に沿って、アップグレードが成功したことを確認します。

    1. Google Cloud コンソールで、Cloud Data Fusion の [インスタンス] ページに移動します。

    2. [インスタンスを表示] をクリックして、Cloud Data Fusion ウェブ インターフェースでアップグレードされたインスタンスにアクセスします。

    3. メニューバーの [システム管理者] をクリックします。

      新しいバージョン番号がページ上部に表示されます。

  3. 新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。

バッチ パイプラインをアップグレードする

Cloud Data Fusion バッチ パイプラインをアップグレードして最新のプラグイン バージョンを使用するには:

  1. 環境変数を設定します

  2. 推奨: すべてのパイプラインをバックアップします。パイプラインをバックアップするには、次の 2 つの方法があります。

    • 次の手順で zip ファイルをダウンロードします。

      1. zip ファイルのダウンロードをトリガーするには、次のコマンドを使用してすべてのパイプラインをバックアップします。
      echo $CDAP_ENDPOINT/v3/export/apps
      
      1. URL 出力をブラウザにコピーします。
      2. ダウンロードしたファイルを展開し、すべてのパイプラインがエクスポートされたことを確認します。パイプラインは名前空間により整理されます。
    • バージョン 6.9 以降で利用可能な Source Control Management(SCM)を使用してパイプラインをバックアップします。SCM には、パイプラインのバックアップに使用できる GitHub 統合が用意されています。

  3. パイプラインをアップグレードする手順は次のとおりです。

    1. 次のステップで使用する pipeline_upgrade.json ファイルを指す変数を作成し、パイプラインのリストを保存します。

      export PIPELINE_LIST=PATH/pipeline_upgrade.json
      

      PATH は、ファイルのパスに置き換えます。

    2. 次のコマンドを使用して、インスタンスと名前空間のすべてのパイプラインのリストを作成します。結果は 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_LIST
      

      NAMESPACE_ID は、アップグレードを実行する名前空間に置き換えます。

    3. 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_LIST
      

      NAMESPACE_ID は、アップグレードするパイプラインの名前空間 ID に置き換えます。

  4. 新しいバージョンでパイプラインの実行時にパイプラインが動けなくなるのを防ぐために、アップグレードされたインスタンスで必要なロールを付与します。

リアルタイム パイプラインをアップグレードする

Kafka リアルタイム ソースを使用してバージョン 6.8.0 で作成されたパイプラインを除き、リアルタイム パイプラインのアップグレードはサポートされていません。

それ以外の場合は、次の手順に従います。

  1. パイプラインを停止してエクスポートします。
  2. インスタンスをアップグレードします。
  3. アップグレードしたインスタンスにリアルタイム パイプラインをインポートします。

アップグレードによりレプリケーションを有効にする

レプリケーションは、バージョン 6.3.0 以降の Cloud Data Fusion 環境で有効にできます。バージョン 6.2.3 がある場合は、6.3.0 にアップグレードしてから最新バージョンにアップグレードします。その後、レプリケーションを有効化できます。

アップグレードされたインスタンスにロールを付与する

アップグレードが完了したら、Cloud Data Fusion ランナーのロールroles/datafusion.runner)と Cloud Storage 管理者のロールroles/storage.admin)をプロジェクト内の Dataproc サービス アカウントに付与します。

次のステップ