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
フォルダにコピーします。
プラグインをインストールするには:
コンソール
Google Cloud Console で [環境] ページに移動します。
使用中の環境を探して、[DAGs] リンクをたどります。
1 つ上のフォルダレベルに移動し、
plugins/
フォルダに移動します。プラグイン ファイルをアップロードします。オブジェクトのアップロードの詳細については、オブジェクトのアップロードをご覧ください。
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
引数を省略します。
プラグインのリストを表示する
コンソール
Google Cloud Console で [環境] ページに移動します。
使用中の環境を探して、[DAGs] リンクをたどります。
1 つ上のフォルダレベルに移動し、
plugins/
フォルダに移動します。プラグイン ファイルを表示します。
gcloud
次の gcloud
コマンドを使用します。
gcloud composer environments storage plugins list \
--environment ENVIRONMENT_NAME \
--location LOCATION
以下のように置き換えます。
ENVIRONMENT_NAME
を環境の名前にする。LOCATION
は、環境が配置されているリージョン。
プラグインを削除する
Cloud Composer 環境からプラグインを削除するには、環境のバケットの plugins
フォルダからプラグイン コードを削除します。
プラグインを削除するには:
コンソール
gcloud
次の gcloud
コマンドを使用します。
gcloud composer environments storage plugins delete \
--environment ENVIRONMENT_NAME \
--location LOCATION \
PLUGIN_TO_DELETE
プラグインをダウンロードする
プラグインをダウンロードするには、次のいずれかの方法を選択してください。
コンソール
Google Cloud Console で [環境] ページに移動します。
使用中の環境を探して、[DAGs] リンクをたどります。
1 つ上のフォルダレベルに移動し、
plugins/
フォルダに移動します。プラグイン ファイルをダウンロードします。オブジェクトを削除する方法については、オブジェクトのダウンロードをご覧ください。
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 管理者に依頼します。