什麼是 Amazon Managed Workflows for Apache Airflow? - Amazon Managed Workflows for Apache Airflow

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

什麼是 Amazon Managed Workflows for Apache Airflow?

使用 Amazon Managed Workflows for Apache Airflow,Apache Airflow 的受管協調服務,大規模設定和操作雲端中的資料管道。Apache Airflow 是一種開放原始碼工具,用於以程式設計方式撰寫、排程和監控稱為工作流程的程序和任務序列。

透過 Amazon MWAA,您可以使用 Apache Airflow 和 Python 來建立工作流程,而不必為了可擴展性、可用性和安全性管理基礎基礎設施。Amazon MWAA會自動擴展其工作流程執行容量以符合您的需求,並與 AWS 安全服務整合,協助您快速安全地存取資料。

功能

檢閱下列功能,了解 Amazon 如何MWAA簡化 Apache Airflow 工作流程的管理。

  • 自動氣流設定 – 在您建立 Amazon MWAA環境時選擇 Apache Airflow 版本,以快速設定 Apache Airflow。Amazon 會使用相同的 Apache Airflow 使用者介面和開放原始碼來為您MWAA設定 Apache Airflow,您可以在網際網路上下載。

  • 自動擴展 – 透過設定在您環境中執行的工作者數量下限和上限,自動擴展 Apache Airflow 工作者。Amazon 會MWAA監控您環境中的工作者,並使用其自動調整規模元件來新增工作者以滿足需求,最多可達 和 ,直到達到您定義的工作者數量上限為止。

  • 內建身分驗證 – 透過在 AWS Identity and Access Management () 中定義存取控制政策,為您的 Apache Airflow Web 伺服器啟用角色型身分驗證和授權IAM。Apache Airflow 工作者會採用這些政策來安全存取 AWS 服務。

  • 內建安全性 – Apache Airflow 工作者排程器會在 Amazon MWAA的 Amazon VPC中執行。資料也會使用 自動加密 AWS Key Management Service,因此您的環境預設為安全。

  • 公有或私有存取模式 – 使用私有或公有存取模式存取您的 Apache Airflow Web 伺服器公有網路存取模式會針對可透過網際網路存取的 Apache Airflow Web 伺服器使用VPC端點。私有網路存取模式會為您的 Apache Airflow Web 伺服器使用VPC端點,可在您的 中VPC存取。在這兩種情況下,您 Apache Airflow 使用者的存取都會受到您在 AWS Identity and Access Management (IAM) 和 中定義的存取控制政策所控制 AWS SSO。

  • 簡化的升級和修補程式 – Amazon 會定期MWAA提供 Apache Airflow 的新版本。Amazon MWAA 團隊將更新和修補這些版本的映像。

  • 工作流程監控 – 在 Amazon 中檢視 Apache Airflow 日誌和 Apache Airflow 指標 CloudWatch ,以識別 Apache Airflow 任務延遲或工作流程錯誤,而不需要額外的第三方工具。Amazon MWAA會自動傳送環境指標,如果啟用,也會將 Apache Airflow 日誌傳送至 CloudWatch。

  • AWS 整合 – Amazon MWAA支援與 Amazon Athena、 AWS Batch、Amazon CloudWatch、Amazon DynamoDB、 AWS DataSync、Amazon EMR、 AWS Fargate、Amazon EKS、Amazon Data Firehose、 AWS Glue AWS Lambda、Amazon Redshift、Amazon SQS、Amazon 、Amazon SNS、Amazon SageMaker AI 和 Amazon S3 的開放原始碼整合,以及數百個內建和社群建立的運算子和感應器。

  • 工作者機群 - Amazon MWAA支援使用容器來隨需擴展工作者機群,並使用 Amazon ECS on AWS Fargate 減少排程器中斷。支援在 Amazon ECS容器上叫用任務的運算子,以及在 Kubernetes 叢集上建立和執行 Pod 的 Kubernetes 運算子。

架構

外部方塊中包含的所有元件 (下圖中) 都顯示為帳戶中的單一 Amazon MWAA環境。Apache Airflow 排程器工作者是連線到 Amazon 中您環境私有子網路VPC的 AWS Fargate 容器。每個環境都有自己的 Apache Airflow 中繼資料庫,由 管理 AWS ,可透過私有安全VPC端點存取排程器Workers Fargate 容器。

Amazon CloudWatch、Amazon S3、Amazon 和 AWS KMS 與 Amazon 分開SQS,MWAA需要從 Fargate 容器中的 Apache Airflow Scheduler 和 Workers (Apache Airflow Scheduler) 存取。

選取公有網路 Apache Airflow 存取模式,即可透過網際網路存取 Apache Airflow Web 伺服器,或選取私有網路 Apache Airflow 存取模式,即可在 內VPC存取 Apache Airflow Web 伺服器。在這兩種情況下,您 Apache Airflow 使用者的存取都會由您在 AWS Identity and Access Management () 中定義的存取控制政策控制IAM。

注意

多個 Apache Airflow 排程器僅適用於 Apache Airflow v2 及更高版本。請參閱 Apache Airflow 參考指南中的 Concepts,進一步了解 Apache Airflow 任務生命週期。

此影像顯示 Amazon MWAA環境的架構。

整合

主動和不斷成長的 Apache Airflow 開放原始碼社群為 Apache Airflow 提供運算子 (簡化服務連線的外掛程式),以便與 AWS 服務整合。這包括 Amazon S3、Amazon RedshiftEMR AWS Batch、Amazon 和 Amazon SageMaker AI 等服務,以及其他雲端平台上的服務。

搭配 Amazon 使用 Apache Airflow 可MWAA完全支援與服務 AWS 和熱門第三方工具整合,例如 Apache Hadoop、Presto、Hive 和 Spark,以執行資料處理任務。Amazon MWAA 致力於維持與 Apache Airflow 的相容性API,Amazon MWAA打算為 AWS 服務提供可靠的整合,並將其提供給社群,並參與社群功能開發。

如需程式碼範例,請參閱 適用於 Apache 氣流的 Amazon 受管工作流程程式

支援的版本

Amazon MWAA支援多個版本的 Apache Airflow。如需我們支援的 Apache Airflow 版本和每個版本隨附的 Apache Airflow 元件的詳細資訊,請參閱 Amazon Managed Workflows for Apache Airflow 上的 Apache Airflow 版本

後續步驟?