重要
适用于 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 集成的先决条件
- 需要 Power BI Premium 许可证 或 Fabric 容量。
- 确保启用这些管理员设置:
- 用户可以创建 Fabric 项
- 用户可以将工作区项与其 Git 存储库同步
- (对于 GitHub 用户) 用户可以将工作区项与 GitHub 存储库同步
- 需要 Azure DevOps 组织或 GitHub 帐户。
- 对于 Azure DevOps:
- 如果没有 Azure 帐户,请注册免费 Azure 帐户 。
- 请确保你有权访问存储库。
- 对于 GitHub:
- 如果没有 GitHub 帐户,请注册免费 GitHub 帐户 。
- 需要具有内容读取和写入权限的精细令牌,或者需要启用了存储库范围的 GitHub 经典令牌。
- 对于 Azure DevOps:
步骤 1:连接到 Git 存储库
若要将 Git 与 Fabric 中的 Airflow 集成,首先需要连接到 Git 存储库:
登录到 Fabric 并转到要连接到 Git 的工作区。
选择 工作区设置。
选择 Git 集成。
选择 Git 提供程序- Azure DevOps 或 GitHub。 如果选择 GitHub,请选择 “添加帐户 ”以连接 GitHub 帐户。 登录后,选择 “连接” ,以便 Fabric 可以访问 GitHub 帐户。
步骤 2:连接到工作区
连接到 Git 存储库后,需要连接到工作区。
在下拉菜单中,填写要使用的工作区和分支的详细信息:
对于 Azure DevOps:
- 组织名称
- 项目名称
- 存储库名称
- 分支名称
- 文件夹名称
对于 GitHub:
- 存储库 URL
- 分支名称
- 文件夹名称
选择 “连接”并同步。
连接后,选择 源代码管理 ,获取有关链接分支、每个项的状态以及上次同步时间的信息。
步骤 3:将更改提交到 Git
可以按照以下步骤将更改提交到 Git:
- 转至您的工作区。
- 选择 “源代码管理 ”图标。 你会看到一个数字,其中显示了尚未提交的更改数。
- 在 “源控制面板 ”中,选择“ 更改 ”选项卡。可以看到已更改的所有内容的列表,以及状态图标。
- 选择要提交的项。 若要选中所有内容,请选中顶部的框。
- (可选)添加有关更改的提交注释。
- 选择 “提交”。
提交后,这些项会从列表中消失,工作区指向最新提交。
部署管道
按照以下步骤将部署管道用于 Fabric 工作区:
部署管道的先决条件
在开始之前,请务必设置以下先决条件:
- 活动 Microsoft Fabric 订阅。
- Fabric 工作区上的管理员访问权限。
步骤 1:创建部署管道
- 在 “工作区” 菜单中,选择 “部署管道”。
- 打开 “创建部署管道 ”窗口时,输入管道的名称和说明,然后选择“ 下一步”。
- 选择管道中所需的阶段数。 默认情况下,会看到三个阶段:开发、测试和生产。
步骤 2:将工作区分配到部署管道
创建部署管道后,需要向部署管道添加要管理的内容。 通过将工作区分配到任何部署管道阶段,将内容添加到部署管道完成:
打开部署管道。
在要向其分配工作区的阶段中,展开标题为 “将内容添加到此阶段”的下拉列表。
选择要分配给此阶段的工作区。
选择“分配”。
步骤 3:部署到空阶段
准备好将内容从一个管道阶段移到下一个阶段时,可以使用以下选项之一部署它:
- 完整部署:选择此选项可将当前阶段的所有内容部署到下一阶段。
- 选择性部署:仅选择要部署的项。
- 向后部署:将内容从更高阶段移回早期阶段。 仅当目标阶段为空(未分配工作区)时,才能执行此作。
选择部署选项后,可以查看 详细信息,并记下有关部署的说明(如果需要)。
步骤 4:将内容从一个阶段部署到另一个阶段
- 在管道阶段中拥有内容后,即使下一阶段工作区包含内容,也可以将其部署到下一阶段。 将覆盖配对项。 可以在 “将内容部署到现有工作区 ”一文中了解有关此过程的详细信息
- 还可以查看部署历史记录,查看上次将内容部署到每个阶段的时间。 若要在部署之前检查两个管道之间的差异,请参阅 不同部署阶段中比较内容。
已知的限制
下面是在 Microsoft Fabric 中使用 CI/CD 进行数据流时存在的一些当前限制。
- Git 集成不支持 Airflow Git-Sync(使用 Git Sync 导出不会导出 Git Sync 属性。如果导入到启用了 Git Sync 的项,将删除 Git Sync)
- 不支持机密。 (使用机密导出不会导出 Git 同步属性。如果导入到具有现有机密的项,则不会删除它们。
- 目前不支持使用同一作中的文件导入/创建自定义池。
- 软限制:目前最多支持 50 个 DAGS。 如果具有 50 个以上的 DAG,ALM作可能会失败。