カスタム プラグインのインストール

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

環境を作成するときに、Cloud Composer によって Cloud Storage バケットが作成され、環境に関連付けられます。カスタム プラグインをインストールするには、関連付けられているバケットの plugins フォルダを使用します。環境に接続されている Cloud Storage バケットを確認するには、DAG の追加と更新をご覧ください。

始める前に

  • Cloud Composer 環境の Cloud Storage バケットで、プラグインを追加、更新するには次の権限が必要です。
    • storage.objectAdmin は、ファイルをアップロードするために使用します。
    • composer.environments.get は、DAG 宛先バケットを検索するために使用します。Cloud Storage API または gsutil を使用する場合、この権限は必要ありません。
  • ここに示されたインストール方法は、Airflow プラグインにのみ適用されます。たとえば、この方法で一般的な Python モジュールや他のライブラリをインストールすることはできません。

  • プラグインは、Airflow プラグイン テンプレートのガイドラインに準拠する必要があります。

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

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

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

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

ここで

  • ENVIRONMENT_NAME は、環境の名前です。
  • LOCATION は、環境が配置される Compute Engine のリージョンです。
  • PATH_TO_LOCAL_FILE は、アップロードするファイルのパスです。
  • --destination は、plugins フォルダ内のサブフォルダにプラグインをアップロードするためのオプションです。PATH_IN_SUBFOLDER は、foo/bar などのサブフォルダ パスです。

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

プラグインのリストを表示するには、次のいずれかの方法を選択してください。

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

プラグインを削除する

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

プラグインを削除するには、次のいずれかの方法を選択してください。

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

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

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

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

ここで

  • ENVIRONMENT_NAME は、環境の名前です。
  • LOCATION は、環境が配置される Compute Engine のリージョンです。
  • PATH_TO_LOCAL_DESTINATION は、ダウンロードしたファイルの宛先です。
  • --source は、1 つのプラグインだけをダウンロードするためのオプションです。PATH_IN_FOLDER は、/foo などのフォルダパスです。

次のステップ