Cloud Composer とは
Google Cloud Japan Team
※この投稿は米国時間 2021 年 9 月 22 日に、Google Cloud blog に投稿されたものの抄訳です。
データ パイプラインを構築する際には、パイプライン内のワークフローを管理、監視する必要があり、多くの場合、定期的に実行するように自動化を行います。Cloud Composer は、Apache Airflow をベースに構築されたフルマネージドなワークフロー オーケストレーション サービスです。ハイブリッドおよびマルチクラウド環境でのパイプラインの作成、スケジューリング、モニタリングを支援します。
Apache Airflow のローカル インスタンスを管理する代わりに Cloud Composer を使用すると、インストール、管理、パッチ適用、バックアップのオーバーヘッドなしに、Airflow のメリットを活用できます(ややこしい技術的な問題は、Google Cloud にお任せください)。Cloud Composer はエンタープライズ向けであり、セキュリティ機能も充実しているので、ご自身で心配する必要はありません。また、最新版の Cloud Composer は自動スケーリングをサポートしており、急増する実行パターンを持つワークフローに費用対効果とさらなる信頼性を提供します。
Cloud Composer の仕組み
データ分析において、ワークフローは、データの取り込み、変換、分析、または利用のための一連のタスクを表します。Airflow では、ワークフローは有向非巡回グラフ(DAG)を使用して作成されています。
DAG は、スケジューリングして実行するタスクのコレクションであり、それらの関係と依存関係を反映して編成されます。DAG は Python スクリプトで作成され、コードを使用して DAG の構造(タスクとそれらの依存関係)を定義します。DAG の目的は、各タスクが適切なタイミング、順序、そして問題処理で実行されるようにすることです。
DAG 内の各タスクはほぼすべてのものを表現できます。たとえば、あるタスクはデータの取り込みを行い、別のタスクはメールを送信し、別のタスクはパイプラインを実行するといったことができます。
Cloud Composer でワークフローを実行する方法
Cloud Composer 環境を作成した後、ビジネスケースに必要なワークフローを実行できます。Composer サービスは、GKE や他の Google Cloud サービスで動作する分散アーキテクチャに基づいています。特定の時間にワークロードをスケジュールしたり、特定の条件が満たされたとき(オブジェクトが Storage バケットに保存されたときなど)にワークフローを開始したりできます。Cloud Composer には、BigQuery や Dataproc をはじめとするほぼすべての Google Cloud プロダクトへのインテグレーションが組み込まれています。また、オンプレミスや他のクラウド上で動作するアプリケーションとのインテグレーションもサポートしています(ベンダーから提供されるプロバイダ パッケージによって有効化されます)。組み込みのインテグレーションとプロバイダ パッケージのリストをご参照ください。
Cloud Composer のセキュリティ機能
プライベート IP: プライベート IP を使用するということは、Cloud Composer のコンピューティング ノードに公開アクセスできないため、公共のインターネットから保護されることを意味します。デベロッパーはインターネットにアクセスできますが、外部からはアクセスできません。
プライベート IP + ウェブサーバー ACL: Airflow のユーザー インターフェースは認証によって保護されています。認証されたお客様のみが特定の Airflow のユーザー インターフェースにアクセスできます。ネットワーク レベルのセキュリティを強化するために、ウェブサーバーのアクセス制御や、一連の IP アドレスを許可リストに登録して外部からのアクセスを制限するプライベート IP を使用できます。
VPC ネイティブ モード: 他の機能と併用することで、VPC ネイティブ モードは同じ VPC ネットワーク内の Composer コンポーネントへのアクセスを制限し、保護を保ちます。
VPC Service Controls: 外部からのアクセスを防ぎ、さらに外部へのアクセスを防ぐネットワーク サービス境界を構成できるようにすることで、セキュリティを向上させます。
顧客管理の暗号鍵(CMEK): CMEK を有効にすると、環境データの暗号化 / 復号に独自の暗号鍵を提供できます。
ドメインによる ID の制限: この機能を使うと、Cloud Composer 環境にアクセスできる ID を、@yourcompany.com のような特定のドメイン名に制限することができます。
Secret Manager とのインテグレーション: Secret Manager との組み込みインテグレーションにより、DAG が外部システムの認証に使用する鍵やパスワードを保護できます。
データ パイプラインを構築している場合、簡単でフルマネージドのワークフローのオーケストレーションが可能な Cloud Composer をチェックする必要があります。Cloud Composer の詳細については、ドキュメントをご覧ください。
#GCPSketchnote の詳細については、GitHub リポジトリをフォローしてください。同様のクラウド コンテンツについては、Twitter @pvergadia で発信しています。thecloudgirl.dev もぜひご覧ください。
-Google デベロッパー アドボケイト Priyanka Vergadia
-Workflows プロダクト マネージャー Filip Knapik