Microsoft Fabric 中数据工厂中 Apache Airflow 的 CI/CD

重要

适用于 Microsoft Fabric 的数据工厂中的 Apache Airflow 中的 CI/CD 目前为预览版。 这些与预发行产品相关的信息在发布前可能进行重大修改。 Microsoft 不对此处提供的信息作任何明示或默示的担保。

注释

Apache Airflow 作业由 Apache Airflow 提供支持。

可以使用源代码管理、CI/CD 和 Apache Airflow 共享工作区来管理工作流。

Microsoft Fabric 包含两个内置工具来支持 CI/CD:Git 集成和部署管道。 这些工具可帮助你组织 Airflow 管道和工作区资源。

通过 Git 集成,可以在 Azure DevOps 或 GitHub 中连接到自己的存储库。 部署管道有助于在环境之间移动更新,因此只需更新所需的内容。 通过它们,可以更轻松地生成、测试和部署 Airflow 工作流。

Airflow 的 Git 集成

按照以下步骤将数据工厂中的 Airflow 连接到 Git。 Git 可帮助你跟踪更改、与团队协作以及确保工作安全。

Git 集成的先决条件

步骤 1:连接到 Git 存储库

若要将 Git 与 Fabric 中的 Airflow 集成,首先需要连接到 Git 存储库:

  1. 登录到 Fabric 并转到要连接到 Git 的工作区。

  2. 选择 工作区设置

    显示在 Fabric UI 中选择工作区设置的位置的屏幕截图。

  3. 选择 Git 集成

  4. 选择 Git 提供程序- Azure DevOpsGitHub。 如果选择 GitHub,请选择 “添加帐户 ”以连接 GitHub 帐户。 登录后,选择 “连接” ,以便 Fabric 可以访问 GitHub 帐户。

    显示为 Fabric 工作区 Git 集成添加 GitHub 帐户的位置的屏幕截图。

步骤 2:连接到工作区

连接到 Git 存储库后,需要连接到工作区。

  1. 在下拉菜单中,填写要使用的工作区和分支的详细信息:

    • 对于 Azure DevOps

      • 组织名称
      • 项目名称
      • 存储库名称
      • 分支名称
      • 文件夹名称
    • 对于 GitHub

      • 存储库 URL
      • 分支名称
      • 文件夹名称
  2. 选择 “连接”并同步

  3. 连接后,选择 源代码管理 ,获取有关链接分支、每个项的状态以及上次同步时间的信息。

步骤 3:将更改提交到 Git

可以按照以下步骤将更改提交到 Git:

  1. 转至您的工作区。
  2. 选择 “源代码管理 ”图标。 你会看到一个数字,其中显示了尚未提交的更改数。
  3. “源控制面板 ”中,选择“ 更改 ”选项卡。可以看到已更改的所有内容的列表,以及状态图标。
  4. 选择要提交的项。 若要选中所有内容,请选中顶部的框。
  5. (可选)添加有关更改的提交注释。
  6. 选择 “提交”。

提交后,这些项会从列表中消失,工作区指向最新提交。

部署管道

按照以下步骤将部署管道用于 Fabric 工作区:

  1. 先决条件
  2. 创建部署管道
  3. 将工作区分配到部署管道
  4. 部署到空阶段
  5. 将内容从一个阶段部署到另一个阶段

部署管道的先决条件

在开始之前,请务必设置以下先决条件:

步骤 1:创建部署管道

  1. “工作区” 菜单中,选择 “部署管道”。
  2. 打开 “创建部署管道 ”窗口时,输入管道的名称和说明,然后选择“ 下一步”。
  3. 选择管道中所需的阶段数。 默认情况下,会看到三个阶段:开发测试和生产

步骤 2:将工作区分配到部署管道

创建部署管道后,需要向部署管道添加要管理的内容。 通过将工作区分配到任何部署管道阶段,将内容添加到部署管道完成:

  1. 打开部署管道。

  2. 在要向其分配工作区的阶段中,展开标题为 “将内容添加到此阶段”的下拉列表。

  3. 选择要分配给此阶段的工作区。

    显示新 UI 中部署管道空阶段中分配工作区下拉列表的屏幕截图。

  4. 选择“分配”。

步骤 3:部署到空阶段

准备好将内容从一个管道阶段移到下一个阶段时,可以使用以下选项之一部署它:

  • 完整部署:选择此选项可将当前阶段的所有内容部署到下一阶段。
  • 选择性部署:仅选择要部署的项。
  • 向后部署:将内容从更高阶段移回早期阶段。 仅当目标阶段为空(未分配工作区)时,才能执行此作。

选择部署选项后,可以查看 详细信息,并记下有关部署的说明(如果需要)。

步骤 4:将内容从一个阶段部署到另一个阶段

  1. 在管道阶段中拥有内容后,即使下一阶段工作区包含内容,也可以将其部署到下一阶段。 将覆盖配对项。 可以在 “将内容部署到现有工作区 ”一文中了解有关此过程的详细信息
  2. 还可以查看部署历史记录,查看上次将内容部署到每个阶段的时间。 若要在部署之前检查两个管道之间的差异,请参阅 不同部署阶段中比较内容

已知的限制

下面是在 Microsoft Fabric 中使用 CI/CD 进行数据流时存在的一些当前限制。

  • Git 集成不支持 Airflow Git-Sync(使用 Git Sync 导出不会导出 Git Sync 属性。如果导入到启用了 Git Sync 的项,将删除 Git Sync)
  • 不支持机密。 (使用机密导出不会导出 Git 同步属性。如果导入到具有现有机密的项,则不会删除它们。
  • 目前不支持使用同一作中的文件导入/创建自定义池。
  • 软限制:目前最多支持 50 个 DAGS。 如果具有 50 个以上的 DAG,ALM作可能会失败。