本篇文章展示了如何在 Amazon Managed Workflows for Apache Airflow(AmazonMWAA)环境中,根据组件类型(web服务器、调度器或工作节点)从仅可在虚拟私有云(VPC)中访问的 Git 仓库中选择性安装 Python依赖项。通过这种方法,用户能够更有效地管理私有代码库中的依赖并确保安全性。
许多使用 的客户需要从私有代码库中获取 Python 依赖项。虽然许多客户选择使用方便的 ,该模式允许进行对外互联网请求,但私有代码库可能无法直接访问互联网。最佳实践是仅在需要的地方安装 Python 依赖项。通过使用 ,可以选择性地安装运行代码所需的 Python 依赖项,从而避免因 Web 服务器限制而导致的问题。
这篇文章阐述了一种方法,可以根据 Amazon MWAA 组件类型(web 服务器、调度器或工作节点)从 Git 仓库选择性地安装 Python 依赖项。
本解决方案侧重于使用私有 Git 仓库选择性地安装 Python 依赖项,您还可以使用本篇文章中展示的模式与私有 Python 包索引,例如 。有关更多信息,请参阅 。
允许您选择 以控制 Web 服务器是可从互联网访问还是仅从您的 VPC 访问。您还可以通过客户 VPC 配置来控制工作节点、调度器和 Web 服务器是否可以访问互联网。本文中演示的环境示意图如下,其中环境使用 进行 Web 服务器访问,而 Apache Airflow的工作节点和调度器则无法从 VPC 访问互联网。

## 结论
在本文中,我们展示了一种方法,以便从仅可在 VPC 内部访问的 Git 仓库,根据 Amazon MWAA 组件类型(Web服务器、调度器或工作节点)选择性地安装 Python 依赖项。
我们希望这篇文章为您提供了关于如何使用
和 在 Amazon MWAA环境中如何工作的更好理解。您可以根据具体的网络设置和需求实现其他变体和配置,利用本文所列出的概念。
* * *
### 关于作者
![Tim删除)
**Tim Wilhoit** 是 AWS 国防部的高级解决方案架构师,拥有超过 20 年的企业 IT经验。他的兴趣领域是无服务器计算和机器学习/人工智能。在业余时间,Tim 喜欢在湖边度过时光,并支持俄克拉荷马州立大学的队伍。加油,Pokes!
Leave a Reply