Cloud Composer の機能

このページでは Cloud Composer の特長と機能の概要を説明します。

Cloud Composer は、ワークフローの作成、スケジューリング、モニタリング、管理を支援する、マネージド Apache Airflow サービスです。

Airflow 環境

Cloud Composer 環境は、Apache Airflow を基盤としたラッパーです。 Cloud Composer は、各環境用に次のコンポーネントを作成します。

  • ウェブサーバー: ウェブサーバーは Apache Airflow ウェブ インターフェースを実行し、Identity-Aware Proxy はそのインターフェースを保護します。詳細については、Airflow ウェブ インターフェースをご覧ください。
  • データベース: データベースは Apache Airflow のメタデータを保持します。
  • Cloud Storage バケット: Cloud Composer は Cloud Storage バケットを環境と関連付けます。関連付けられたバケットには、環境の DAGログ、カスタム プラグイン、データが保存されます。Cloud Composer のストレージ バケットの詳細については、Cloud Storage に保存されるデータをご覧ください。

Airflow 管理

Airflow 環境のアクセスと管理には、次の Airflow ネイティブのツールを使用できます。

  • ウェブ インターフェース: Airflow ウェブ インターフェースには、Google Cloud Console から、または適切な権限を持つ直接 URL からアクセスできます。詳細については、Airflow ウェブ インターフェースをご覧ください。
  • コマンドライン ツール: Cloud SDK をインストールすると、gcloud composer environments コマンドを実行して、Airflow コマンドライン コマンドを Cloud Composer 環境に発行できます。詳細については、Airflow コマンドライン インターフェースをご覧ください。

ネイティブ ツールのほかに、Cloud Composer の REST API と RPC API によって、Airflow 環境にプログラマティックにアクセスできます。詳細については、API とリファレンスをご覧ください。

Airflow 構成

一般に、Cloud Composer が Apache Airflow 用に提供する構成は、ローカルにホストされた Airflow デプロイの構成と同じです。一部の Airflow 構成は、Cloud Composer で事前構成されているため、構成プロパティを変更できません。その他の構成については、環境を作成、更新するときに指定します。詳細については、ブロックされている Airflow 構成をご覧ください。

Airflow DAG(ワークフロー)

Apache Airflow DAG はワークフローであり、追加のタスク依存関係を持つタスクの集まりです。Cloud Composer では DAG の保存に Cloud Storage を使用します。Cloud Composer 環境から DAG を追加または削除するには、その環境に関連付けられている Cloud Storage バケットから DAG を追加または削除します。DAG をストレージ バケットに移動すると、自動的に DAG が環境に追加されてスケジュール設定されます。

DAG のスケジュールに加えて、DAG を手動でトリガーしたり、イベント(関連する Cloud Storage バケットで発生した変更など)に対するレスポンスとして DAG をトリガーしたりできます。 詳細については、DAG のトリガーをご覧ください。

プラグイン

カスタム プラグインを Cloud Composer 環境にインストールできます(カスタムの、インハウス Apache Airflow 演算子、フック、センサー、インターフェースなど)。詳細については、カスタム プラグインのインストールをご覧ください。

Python 依存関係

Python 依存関係は、環境の Python パッケージ インデックス、またはプライベート パッケージ リポジトリからインストールできます。詳細については、Python 依存関係のインストールをご覧ください。

依存関係がパッケージ インデックスにない場合は、プラグイン機能を使用することもできます。

アクセス制御

Google Cloud のプロジェクト レベルでセキュリティを管理し、個々のユーザーが環境を変更、作成することを回避できるように Cloud Identity and Access Management(IAM)のロールを割り当てることができます。プロジェクトへのアクセス権を持たないユーザーや適切な Cloud Composer IAM 役割を持たないユーザーは、環境のどの部分にもアクセスできません。詳細については、Cloud Composer のアクセス制御をご覧ください。

ロギングとモニタリング

Airflow ウェブ インターフェースで単一の DAG タスクに関連付けられた Airflow ログを表示し、関連付けられた Cloud Storage バケットで logs フォルダを表示することができます。

ストリーミング ログは Cloud Composer で利用できます。Google Cloud のオペレーション スイートを使用することによって、Google Cloud Console のログビューアでストリーミング ログにアクセスできます。Google Cloud のオペレーション スイートの使用方法については、Cloud Composer 環境のモニタリングをご覧ください。

Cloud Composer には、Google Cloud プロジェクトの管理アクティビティ監査ログなどの監査ログも用意されています。詳細については、監査ログの表示をご覧ください。

ネットワークとセキュリティ

環境の作成時に、Cloud Composer では次の構成オプションを使用できます。