本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用私有路由在 Amazon VPC 中创建所需的 VPC 服务端点
无法访问互联网的现有 Amazon VPC 网络需要额外的 VPC 服务端点 (AWS PrivateLink) 才能在 Amazon MWAA 上使用 Apache Airflow。本页介绍了 Amazon MWAA 使用的 AWS 服务所需的 VPC 终端节点、Apache Airflow 所需的 VPC 终端节点,以及如何使用私有路由创建 VPC 终端节点并将其连接至现有 Amazon VPC。
注意
如果您选择公有网络和私有网络访问,则网络服务器的 VPC 终端节点将由 Amazon MWAA 自动创建和管理。您无需为 Apache Airflow Web 服务器连接创建 VPC 终端节点。但是,如果您的 Amazon VPC 无法访问互联网,则您仍然需要使用本页所述的其他 AWS 服务(例如 Amazon S3、 CloudWatch 日志、SQS 和 KMS)的 VPC 终端节点。
目录
定价
私有网络和私有路由
私有网络访问模式将访问 Apache Airflow UI 的权限限制为 Amazon VPC 中已获准访问环境 IAM 策略的用户。
创建具有私有网络访问权限的环境时,必须将所有依赖项打包到 Python wheel 存档 (.whl) 中,然后在.whl中引用requirements.txt。有关使用 Wheel 打包和安装依赖项的说明,请参阅使用 Python Wheel 管理依赖项。
下图描述了在 Amazon MWAA 控制台上哪里可以找到私有网络选项。
-
私有路由。无法访问互联网的 Amazon VPC 会限制 VPC 内的网络流量。此页面假设您的亚马逊 VPC 无法访问互联网,因此要求您的环境使用的每项 AWS 服务都有 VPC 终端节点,Apache Airflow 的 VPC 终端节点与亚马逊 MWAA 环境处于相同 AWS 区域 和亚马逊 VPC 中。
(必需)VPC 端点
下一节显示了无法访问互联网的 Amazon VPC 所需的 VPC 端点。它列出了亚马逊 MWAA 使用的每项 AWS 服务的 VPC 终端节点,包括 Apache Airflow 所需的 VPC 终端节点。
com.amazonaws.us-east-1.s3 com.amazonaws.us-east-1.monitoring com.amazonaws.us-east-1.logs com.amazonaws.us-east-1.sqs com.amazonaws.us-east-1.kms
注意
在使用 Transit Gateway 或任何其他不直接连接到 AWS API 终端节点的路由时,我们建议您 AWS PrivateLink 为您的亚马逊 MWAA 私有子网添加以下服务:
-
Amazon S3
-
Amazon SQS
-
CloudWatch 日志
-
CloudWatch 指标
-
AWS KMS (如果适用)
这可确保您的 Amazon MWAA 环境能够安全高效地与这些服务进行通信,无需通过公共互联网路由流量,从而提高安全性和性能。
连接所需的 VPC 端点
本节介绍为使用私有路由的 Amazon VPC 连接所需的 VPC 端点的步骤。
需要的 VPC 终端节点 AWS 务
以下部分显示了将环境所用 AWS 服务的 VPC 终端节点连接到现有 Amazon VPC 的步骤。
将 VPC 端点连接到私有子网
-
打开 Amazon VPC 控制台的 端点页面
。 -
选择你的 AWS 区域.
-
创建 Amazon S3 网关端点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.s3,然后按键盘上的 Enter。 -
我们建议为网关类型选择列出的服务端点。
例如,
com.amazonaws.us-west-2.s3 amazon Gateway -
在 VPC 中选择环境的 Amazon VPC。
-
确保为两个私有子网选择路由表。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
为 CloudWatch 日志创建终端节点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.logs,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
创建用于 CloudWatch 监控的终端节点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.monitoring,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
为 Amazon SQS 创建端点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.sqs,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
为以下内容创建终端节点 AWS KMS:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.kms,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
Apache Airflow 所需的 VPC 端点
下一节显示了将 Apache Airflow 的 VPC 端点连接到现有 Amazon VPC 的步骤。
将 VPC 端点连接到私有子网
-
打开 Amazon VPC 控制台的 端点页面
。 -
选择你的 AWS 区域.
-
为 Apache Airflow API 创建端点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.airflow.api,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
为 Apache Airflow 环境创建第一个端点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.airflow.env,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
-
为 Apache Airflow 操作创建第二个端点:
-
选择创建端点。
-
在按属性筛选或按关键字搜索文本字段中,键入:
.airflow.ops,然后按键盘上的 Enter。 -
选择服务端点。
-
在 VPC 中选择环境的 Amazon VPC。
-
确保选择了位于不同可用区的两个私有子网,并启用启用 DNS 名称。
-
选择环境的 Amazon VPC 安全组。
-
在策略中选择完全访问权限。
-
选择创建端点。
-
(可选)为 Amazon S3 VPC 接口端点启用私有 IP 地址
Amazon S3 接口端点不支持私有 DNS。S3 终端节点请求仍解析为公有 IP 地址。要将 S3 地址解析为私有 IP 地址,您需要在 Route 53 中为 S3 区域端点添加私有托管区。
使用 Route 53
本节介绍使用 Route 53 为 S3 接口端点启用私有 IP 地址的步骤。
-
为 Amazon S3 VPC 接口端点(例如 s3.eu-west-1.amazonaws.com)创建私有托管区并将其与 Amazon VPC 关联。
-
为 Amazon S3 VPC 接口端点(例如 s3.eu-west-1.amazonaws.com)创建别名 A 记录,该记录可解析为 VPC 接口端点 DNS 名称。
-
为 Amazon S3 接口端点(例如,*. s3.eu-west-1.amazonaws.com)创建一个别名 A 通配符记录,该记录可解析为 VPC 接口端点 DNS 名称。
带有自定义 DNS 解析
如果 Amazon VPC 使用自定义 DNS 路由,则需要通过创建别名记录在 DNS 解析器(不是 Route 53,通常是运行 DNS 服务器的 EC2 实例)中进行更改。例如:
Name: s3.us-west-2.amazonaws.com Type: CNAME Value: *.vpce-0f67d23e37648915c-e2q2e2j3.s3.us-west-2.vpce.amazonaws.com