通过 Airflow,您可以在需要时精确地启动、管理和关闭您的基础设施。

使用 Airflow 进行基础设施管理

Airflow 可以与任何 API 交互,这使其成为管理基础设施的强大工具,例如在任何云中运行的 Kubernetes 或 Spark 集群。从 Airflow 2.7 开始,可以使用设置/拆除功能,这是一种特殊的任务类型,具有智能行为,可以在您需要时精确地启动和拆除基础设施。

基础设施管理通常需要在其他用例的上下文中进行,例如 MLOps 或实施数据质量检查。此视频展示了它如何在 MLOps 管道中使用的示例。您可以在此处找到此示例中显示的代码。


为什么使用 Airflow 进行基础设施管理

Airflow 是需要管理基础设施的管道的流行选择,因为它具有以下特点:

  • 原生 Python:以 Python 代码形式编写的管道可以轻松地将自定义函数转换为任务。您需要管理的任何基础设施逻辑,都可以使用 Python 在 Airflow 中实现。
  • 可扩展:基础设施管理是许多用例所必需的,包括 MLOps、数据质量检查等等。Airflow 的灵活性和广泛的提供商使其适用于您可能需要实施的任何用例。
  • 可伸缩:在有足够的计算能力的情况下,Airflow 可以扩展以处理无限数量的任务和工作流程。如果您选择 Airflow,您的业务将能够随之增长。

Airflow 的基础设施管理功能

Airflow 2.7 实现了一项新的关键功能,使其成为管理基础设施的更佳选择

  • 设置/拆除任务:设置/拆除任务是一种特殊的任务类型,可用于管理运行其他任务所需的基础设施。它们具有特殊行为,支持在任务运行之前设置资源和配置(例如 Spark 集群或其他计算资源),然后在任务完成后拆除该基础设施,即使任务失败也是如此。