GCP Cloud Composer


基于 Apache Airflow 构建的全代管式工作流编排服务。 Cloud Composer 是以 Airflow 为基础构建的托管式工作流编排服务。与本地部署类似,Cloud Composer 会部署多个组件来运行 Airflow。 Airflow 是以微服务为基础构建的一种框架。为了按分布式设置方式部署 Airflow,Cloud Composer 预配了多个 Google Cloud 组件,这些组件统称为 Cloud Composer 环境。 环境是 Cloud Composer 中的一个核心概念。您可以在一个项目中创建一个或多个 Cloud Composer 环境。环境是以 Google Kubernetes Engine 为基础的独立 Airflow 部署。这些环境通过 Airflow 内置的连接器与 Google Cloud 服务协同工作。 Airflow 是一个编排、调度和监控workflow的平台,由Airbnb开源,现在在Apache Software Foundation 孵化。airflow 将workflow编排为tasks组成的DAGs,调度器在一组workers上按照指定的依赖关系执行tasks。同时,airflow 提供了丰富的命令行工具和简单易用的用户界面以便用户查看和操作,并且airflow提供了监控和报警系统。

优势

  • 搭建、安排和监控跨越混合环境和多云端环境的流水线
  • 基于 Apache Airflow 开源项目构建,使用 Python 进行运维
  • 摆脱供应商锁定,并且简单易用

Cloud Composer 架构

创建环境时,Cloud Composer 会在由 Google 管理的租户项目和客户项目之间分配环境的资源

Operator

Operator 表示一个独立的、理想的任务。Operator 决定在 DAG 运行时实际执行什么。

Google Cloud Operators

Google Cloud Bigtable Operators Google Cloud Build Operators Google Compute Engine Operators Google Cloud Functions Operators Google Cloud Storage Operators Google Cloud Storage to Google Drive Transfer Operators Google Cloud Natural Language Operators Google Cloud Spanner Operators Google Cloud Text to Speech Operators Google Cloud Speech to Text Operators Google Cloud SQL Operators Google Cloud Transfer Service Operators Google Cloud Translate Operators Google Cloud Speech Translate Operators Google Cloud Video Intelligence Operators Google Cloud Vision Operators

可以理解为,一个 Operators 表示预先封装好的一部分操作???

其他

  1. 每个 Cloud Composer 环境都有一个运行 Airflow 网页界面的 Web 服务器,该服务器可用于管理 DAG。
  2. DAG 文件,貌似就是一个定义了 Airflow 的 .py 文件?