探索 Amazon MWAA 網路架構 - Amazon Managed Workflows for Apache Airflow

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

探索 Amazon MWAA 網路架構

下一節說明組成 Amazon MWAA環境的主要元件,以及每個環境整合的一組 AWS 服務,以管理其資源、維護資料安全,並提供工作流程的監控和可見性。

Amazon MWAA元件

Amazon MWAA環境包含下列四個主要元件:

  1. 排程器 — 剖析和監控所有 DAGs,並在符合 DAG的相依性時佇列任務以執行。Amazon MWAA 會將排程器部署為 AWS Fargate 叢集,其中至少包含 2 個排程器。根據您的工作負載,您可以將排程器計數增加到五個。如需 Amazon MWAA環境類別的詳細資訊,請參閱 Amazon MWAA環境類別

  2. 工作者 — 執行排程任務的一或多個 Fargate 任務。您環境的工作者數量取決於您指定的最小最大數量之間的範圍。當佇列和執行中的任務數量超過現有工作者可以處理的數量時,Amazon 會MWAA開始自動擴展工作者。當執行和佇列任務總和為零超過兩分鐘時,Amazon 會將工作者人數MWAA縮減至最低。如需 Amazon 如何處理MWAA自動擴展工作者的詳細資訊,請參閱 Amazon MWAA 自動擴展。

  3. Web 伺服器 — 執行 Apache Airflow Web UI。您可以使用私有或公有網路存取來設定 Web 伺服器。在這兩種情況下,對 Apache Airflow 使用者的存取都會受到您在 AWS Identity and Access Management () 中定義的存取控制政策所控制IAM。如需設定環境IAM存取政策的詳細資訊,請參閱存取 Amazon MWAA環境。

  4. 資料庫 — 儲存有關 Apache Airflow 環境和工作流程的中繼資料,包括DAG執行歷史記錄。資料庫是由 管理的單一租戶 Aurora PostgreSQL 資料庫 AWS,可透過私有 Amazon VPC端點存取排程器工作者的 Fargate 容器。

每個 Amazon MWAA環境也會與一組 AWS 服務互動,以處理各種任務,包括儲存和存取DAGs和任務相依性、保護靜態資料,以及記錄和監控您的環境。下圖示範 Amazon MWAA環境的不同元件。

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

服務 Amazon VPC不是共用的 VPC。Amazon VPC會為您建立的每個環境MWAA建立 AWS 擁有的 。

  • Amazon S3 — Amazon 會將 DAGs、需求和外掛程式檔案等所有工作流程資源MWAA存放在 Amazon S3 儲存貯體中。如需建立儲存貯體作為環境建立的一部分,以及上傳 Amazon MWAA 資源的詳細資訊,請參閱 Amazon 使用者指南 中的為 Amazon 建立 Amazon S3 儲存貯體MWAA MWAA

  • Amazon SQS — Amazon MWAA使用 Amazon SQS將工作流程任務與 Celery 執行器 排入佇列。

  • Amazon ECR — Amazon ECR託管所有 Apache Airflow 映像。Amazon MWAA僅支援 AWS 受管 Apache Airflow 映像。

  • AWS KMS — Amazon MWAA使用 AWS KMS 來確保您的靜態資料安全。根據預設,Amazon MWAA會使用AWS 受管 AWS KMS 金鑰 ,但您可以將環境設定為使用自己的客戶受管 AWS KMS 金鑰。如需使用自己客戶受管 AWS KMS 金鑰的詳細資訊,請參閱 Amazon MWAA使用者指南 中的資料加密客戶受管金鑰

  • CloudWatch — Amazon 與 MWAA整合 CloudWatch 並將 Apache Airflow 日誌和環境指標交付至 CloudWatch,可讓您監控 Amazon MWAA 資源並疑難排解問題。

連線能力

您的 Amazon MWAA環境需要存取其整合的所有 AWS 服務。Amazon MWAA執行角色會控制如何授予 Amazon 存取權MWAA,以代表您連線至其他 AWS 服務。對於網路連線,您可以提供 Amazon 的公有網際網路存取權VPC或建立 Amazon VPC端點。如需為環境設定 Amazon VPC端點 (AWS PrivateLink) 的詳細資訊,請參閱 Amazon MWAA使用者指南 中的管理 Amazon VPC端點的存取權MWAA

Amazon 會在排程器和工作者上安裝MWAA需求。如果您的需求來自公有PyPi儲存庫,您的環境需要連線至網際網路,才能下載所需的程式庫。對於私有環境,您可以使用私有 PyPi 儲存庫,或將檔案庫綁定.whl為環境的自訂外掛程式。

當您在私有模式下設定 Apache Airflow 時,只有透過 Amazon VPC端點存取 Amazon VPC 才能存取 Apache Airflow UI。

如需聯網的詳細資訊,請參閱 Amazon MWAA使用者指南 中的聯網