カスタム プラグインをインストールする

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

このページでは、Cloud Composer 環境にカスタム プラグインをインストールする方法について説明します。

Apache Airflow のプラグイン マネージャーを使用して、カスタムのインハウス Apache Airflow 演算子、フック、センサー、インターフェースを作成できます。詳細については、Airflow ドキュメントのカスタム プラグインをご覧ください。

カスタム プラグインについて

環境を作成するときに、Cloud Composer によって Cloud Storage バケットが作成され、環境に関連付けられます。カスタム プラグインをインストールするには、環境のバケットの plugins フォルダを使用します。

始める前に

  • アカウントには、環境のバケット コンテンツの表示と変更を許可するロールが必要です
  • ここに示されたインストール方法は、Airflow プラグインにのみ適用されます。たとえば、この方法で一般的な Python モジュールや他のライブラリをインストールすることはできません。
  • プラグインは、Airflow プラグイン テンプレートのガイドラインに準拠する必要があります。

プラグインをインストールする

カスタム プラグインを Cloud Composer 環境にインストールするには、プラグインのコードを環境のバケットの plugins フォルダにコピーします。

プラグインをインストールするには:

コンソール

  1. Google Cloud Console で [環境] ページに移動します。

    [環境] に移動

  2. 使用中の環境を探して、[DAGs] リンクをたどります。

  3. 1 つ上のフォルダレベルに移動し、plugins/ フォルダに移動します。

  4. プラグイン ファイルをアップロードします。オブジェクトのアップロードの詳細については、オブジェクトのアップロードをご覧ください。

gcloud

次の gcloud コマンドを使用します。

gcloud composer environments storage plugins import \
    --environment ENVIRONMENT_NAME \
    --location LOCATION \
    --source PATH_TO_LOCAL_FILE \
    --destination PATH_IN_SUBFOLDER

以下のように置き換えます。

  • ENVIRONMENT_NAME を環境の名前にする。
  • LOCATION は、環境が配置されているリージョン。
  • PATH_TO_LOCAL_FILE は、アップロードするファイルのパスに置き換えます。
  • (省略可)PATH_IN_SUBFOLDER は、サブフォルダのパスに置き換えます。--destination 引数を使用して、plugins フォルダ内のサブフォルダにプラグインをアップロードします。それ以外の場合は、--destination 引数を省略します。

プラグインのリストを表示する

コンソール

  1. Google Cloud Console で [環境] ページに移動します。

    [環境] に移動

  2. 使用中の環境を探して、[DAGs] リンクをたどります。

  3. 1 つ上のフォルダレベルに移動し、plugins/ フォルダに移動します。

  4. プラグイン ファイルを表示します。

gcloud

次の gcloud コマンドを使用します。

gcloud composer environments storage plugins list \
    --environment ENVIRONMENT_NAME \
    --location LOCATION

以下のように置き換えます。

  • ENVIRONMENT_NAME を環境の名前にする。
  • LOCATION は、環境が配置されているリージョン。

プラグインを削除する

Cloud Composer 環境からプラグインを削除するには、環境のバケットの plugins フォルダからプラグイン コードを削除します。

プラグインを削除するには:

コンソール

  1. Google Cloud Console で [環境] ページに移動します。

    [環境] に移動

  2. 使用中の環境を探して、[DAGs] リンクをたどります。

  3. 1 つ上のフォルダレベルに移動し、plugins/ フォルダに移動します。

  4. プラグイン ファイルを削除します。オブジェクトの削除の詳細については、オブジェクトの削除をご覧ください。

gcloud

次の gcloud コマンドを使用します。

gcloud composer environments storage plugins delete \
    --environment ENVIRONMENT_NAME \
    --location LOCATION \
    PLUGIN_TO_DELETE

プラグインをダウンロードする

プラグインをダウンロードするには、次のいずれかの方法を選択してください。

コンソール

  1. Google Cloud Console で [環境] ページに移動します。

    [環境] に移動

  2. 使用中の環境を探して、[DAGs] リンクをたどります。

  3. 1 つ上のフォルダレベルに移動し、plugins/ フォルダに移動します。

  4. プラグイン ファイルをダウンロードします。オブジェクトの削除の詳細については、オブジェクトのダウンロードをご覧ください。

gcloud

次の gcloud コマンドを使用します。

gcloud composer environments storage plugins export \
  --environment ENVIRONMENT_NAME \
  --location LOCATION \
  --destination PATH_TO_LOCAL_DESTINATION \
  --source PATH_IN_FOLDER

以下のように置き換えます。

  • ENVIRONMENT_NAME を環境の名前にする。
  • LOCATION は、環境が配置されているリージョン。
  • PATH_TO_LOCAL_DESTINATION は、ダウンロードしたファイルの送信先に置き換えます。
  • --source は、1 つのプラグインだけをダウンロードするためのオプションです。 PATH_IN_FOLDER はフォルダパスです。

プラグインに関する問題のトラブルシューティング

プラグインが Airflow UI で問題を引き起こす

削除せずにウェブサーバー プラグインを無効化できます。詳細については、ウェブサーバー プラグインを無効にするをご覧ください。

新しくアップロードされたプラグインが Airflow UI に表示されない

Airflow UI アクセス制御を使用すると、新しくアップロードされたプラグインが Airflow UI に表示されないことがあります。この問題を解決するには、新しくアップロードしたプラグインへのアクセスを構成するか、自分自身に Airflow UI で Admin ロールを割り当てるよう Airflow UI 管理者に依頼します。

次のステップ