创建亚马逊 MWAA 环境 - Amazon Managed Workflows for Apache Airflow

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建亚马逊 MWAA 环境

适用于 Apache Airflow 的亚马逊托管工作流程使用与 Apache 相同的开源 Arflow 和用户界面,在你选择的版本的环境中设置 Apache Airflow。本指南描述了创建亚马逊 MWAA 环境的步骤。

开始前的准备工作

  • 创建环境后,无法更改您为环境指定的 VPC 网络

  • 您需要将 Amazon S3 存储桶配置为阻止所有公开访问并启用存储桶版本控制

  • 您需要一个拥有使用 Amazon MWAA 的权限和 AWS Identity and Access Management (IAM) 中创建 IAM 角色的权限的AWS账户。如果您为 Apache Airflow Web 服务器选择私有网络访问模式,该模式限制了亚马逊 VPC 内的 Apache Airflow 访问权限,则需要在 IAM 中获得权限才能创建亚马逊 VPC 终端节点。

Apache 气流版本

适用于 Apache Airflow 的亚马逊托管工作流程支持以下 Apache Airflow 版本。

注意

从 Apache Airflow v2.2 开始,亚马逊 MWAA 支持直接在 Apache Airflow 网络服务器上安装 Python 要求、提供程序包和自定义插件。

有关迁移自行管理的 Apache Airflow 部署或迁移现有 Amazon MWAA 环境的更多信息,包括备份元数据数据库的说明,请参阅 Amazon MWAA 迁移指南。

创建环境

以下部分介绍创建 Amazon MWAA 环境的步骤。

第一步:指定详细信息

指定环境的详细信息
  1. 打开亚马逊 MWAA 控制台。

  2. 使用AWS区域选择器选择您的区域。

  3. 选择 Create environment(创建环境)。

  4. 在 “指定详细信息” 页面上,在 “环境详细信息” 下:

    1. 在 “名称” 中键入环境的唯一名称

    2. 在 Airflow 版本中选择 Apache Airflow 版本。

      注意

      如果未指定任何值,则默认为最新的 Airflow 版本。可用的最新版本是 Apache Airflow v2.6.3。

  5. Amazon S3 的 DAG 代码下指定以下内容:

    1. S3 存储桶。选择浏览 S3 并选择您的亚马逊 S3 存储桶,或者输入亚马逊 S3 URI。

    2. DAG 文件夹。选择 “浏览 S3”,然后选择亚马逊 S3 存储桶中的dags文件夹,或者输入 Amazon S3 URI。

    3. 插件文件-可选。选择 “浏览 S3”,然后选择亚马逊 S3 存储桶上的plugins.zip文件,或者输入 Amazon S3 URI。

    4. 需求文件-可选。选择 “浏览 S3”,然后选择亚马逊 S3 存储桶上的requirements.txt文件,或者输入 Amazon S3 URI。

    5. 启动脚本文件-可选,选择浏览S3并选择您的 Amazon S3 存储桶上的脚本文件,或者输入 Amazon S3 URI。

  6. 选择下一步

第二步:配置高级设置

配置高级设置
  1. 在 “配置高级设置” 页面上,在 “网络” 下:

    1. 选择您的亚马逊 VPC

      此步骤将填充您的 Amazon VPC 中的两个私有子网。

  2. Web 服务器访问下,选择您首选的 Apache Airflow 访问模式

    1. 私有网络。这限制了您的 Amazon VPC 中已被授予访问您环境的 IAM 策略权限的用户才能访问 Apache Airflow 用户界面。您需要获得权限才能为此步骤创建 Amazon VPC 终端节点。

      注意

      如果您的 Apache Airflow 用户界面只能在公司网络中访问,并且不需要访问公共存储库即可按照 Web 服务器要求安装,请选择 “专用网络” 选项。如果您选择此访问模式选项,则需要创建一种机制来访问亚马逊 VPC 中的 Apache Airflow Web 服务器。有关更多信息,请参阅访问 Apache Airflow Web 服务器的 VPC 终端节点(私有网络访问)

    2. 公共网络。这允许被授予您环境的 IA M 策略访问权限的用户通过互联网访问 Apache Airflow 用户界面。

  3. 安全组下,选择用于保护您的 Amazon VPC 的安全组:

    1. 默认情况下,Amazon MWAA 会在您的 Amazon VPC 中创建一个安全组,并在创建新安全组中使用特定的入站和出站规则。

    2. 可选。取消选中创建新安全组中的复选框可选择最多 5 个安全组。

      注意

      现有 Amazon VPC 安全组必须配置特定的入站和出站规则,才能允许网络流量。要了解更多信息,请参阅 Amazon MWAA 上的 VPC 安全性

  4. 环境类下,选择一个环境类

    我们建议选择支持工作负载所需的最小尺寸。您可以随时更改环境类。

  5. 对于最大工作器数量,请指定要在环境中运行的 Apache Airflow 工作程序的最大数量。

    要了解更多信息,请参阅 高性能用例示例

  6. 在 “加密” 下,选择一个数据加密选项:

    1. 默认情况下,亚马逊 MWAA 使用AWS自有密钥对您的数据进行加密。

    2. 可选。选择 “自定义加密设置(高级)” 以选择其他AWS KMS密钥。如果您选择在此步骤中指定客户托管密钥,则必须指定AWS KMS密钥 ID 或 ARN。 AWS KMS亚马逊 MWAA 不支持别名和多区域密钥。如果您在 Amazon S3 存储桶上指定了用于服务器端加密的 Amazon S3 密钥,则必须为 Amazon MWAA 环境指定相同的密钥。

      注意

      您必须拥有该密钥的权限才能在亚马逊 MWAA 控制台上选择该密钥。您还必须通过附加中所述的策略授予 Amazon MWAA 使用密钥的权限。附加密钥政策

  7. 推荐。在 “监控” 下,为 Airflow 日志配置选择一个或多个日志类别,将 Apache Airflow 日志发送到日志: CloudWatch

    1. 气流任务日志。选择要发送到 “登录日志” 级别的 Apache Airflow 任务 CloudWatch 日志的类型。

    2. Airflow Web 服务器日志。选择要发送到 “登录日志” 级别的 Apache Airflow Web 服务器 CloudWatch 日志的类型。

    3. 气流调度器日志。选择要发送到 “登录日志” 级别的 Apache Airflow 调度程序 CloudWatch 日志的类型。

    4. 气流工作人员日志。选择要发送到 “登录日志” 级别的 Apache Airflow 工作 CloudWatch 日志的类型。

    5. 气流 DAG 处理日志。选择要发送到日志级别的 Apache Airflow DAG 处理 CloudWatch 日志的类型。

  8. 可选。对于 Airflow 配置选项,请选择添加自定义配置选项

    您可以从 Apache Airflow 版本的 Apache Airflow 配置选项的建议下拉列表中进行选择,也可以指定自定义配置选项。例如,core.default_task_retries: 3

  9. 可选。在 “标签” 下,选择 “添加新标记”,将标签与您的环境相关联。例如,Environment: Staging

  10. 在 “权限” 下,选择一个执行角色:

    1. 默认情况下,Amazon MWAA 会在创建新角色中创建执行角色。您必须拥有创建 IAM 角色的权限才能使用此选项。

    2. 可选。选择输入角色 ARN 以输入现有执行角色的亚马逊资源名称 (ARN)。

  11. 选择下一步

第三步:查看并创建

查看环境摘要
  • 查看环境摘要,选择创建环境

    注意

    创建环境大约需要二十到三十分钟。

接下来做什么?