创建 Azure-SSIS 集成运行时

适用于: Azure 数据工厂 Azure Synapse Analytics

提示

试用 Microsoft Fabric 中的数据工厂,这是一种适用于企业的一站式分析解决方案。 Microsoft Fabric 涵盖从数据移动到数据科学、实时分析、商业智能和报告的所有内容。 了解如何免费开始新的试用

本文提供了在 Azure 数据工厂 (ADF) 和 Azure Synapse Pipelines 中预配 Azure-SQL Server Integration Services (SSIS) 集成运行时 (IR) 的步骤。 Azure-SSIS IR 支持:

  • 运行部署在由 Azure SQL 数据库服务器/托管实例托管的 SSIS 目录 (SSISDB) 中的包(项目部署模型)
  • 运行部署在由 Azure SQL 托管实例托管的文件系统、Azure 文件存储或 SQL Server 数据库 (MSDB) 中的包(包部署模型)

注意

Azure Synapse Analytics 中的某些功能不适用于 Azure-SSIS IR,请检查限制

预配 Azure-SSIS IR 后,可以使用熟悉的工具在 Azure 中部署和运行包。 这些工具包括 SQL Server Data Tools (SSDT)、SQL Server Management Studio (SSMS) 和命令行实用工具,例如 dtutilAzureDTExec

预配 Azure-SSIS IR 教程介绍了如何通过 Azure 门户或数据工厂应用创建 Azure-SSIS IR。 该教程还介绍了如何选择性地使用 Azure SQL 数据库服务器或托管实例来承载 SSISDB。 本文对该教程的基础上有所延伸,介绍如何执行以下可选任务:

  • 使用具有IP 防火墙规则/虚拟网络服务终结点的 Azure SQL 数据库服务器或具有专用终结点的托管实例来承载 SSISDB。 作为先决条件,需要配置虚拟网络权限和设置,才能让 Azure-SSIS IR 加入虚拟网络。

  • 对数据工厂指定系统/用户分配的托管标识使用 Microsoft Entra 身份验证,以连接到 Azure SQL 数据库服务器或托管实例。 作为先决条件,需要将数据工厂指定系统/用户分配的托管标识添加为可创建 SSISDB 实例的数据库用户。

  • 将 Azure-SSIS IR 加入虚拟网络,或将自承载 IR 配置为代理,使 Azure-SSIS IR 能够访问本地数据。

本文将介绍如何使用 Azure 门户Azure PowerShellAzure 资源管理器模板来预配 Azure-SSIS IR。

先决条件

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

  • Azure 订阅。 如果还没有订阅,可以创建一个试用帐户。

  • Azure SQL 数据库服务器或 SQL 托管实例(可选)。 如果还没有数据库服务器或托管实例,请在启动之前在 Azure 门户中创建一个。 数据工厂进而会在此数据库服务器上创建一个 SSISDB 实例。

    建议在集成运行时所在的同一 Azure 区域中创建数据库服务器或托管实例。 此配置允许集成运行时将执行日志写入 SSISDB 而无需跨 Azure 区域。

    请记住以下几点:

    • 系统可以代表你创建 SSISDB 实例作为单一数据库、创建此实例作为弹性池的一部分,或者在托管实例中创建。 可以在公用网络中访问或者通过加入虚拟网络来访问该实例。 有关在 SQL 数据库与 SQL 托管实例之间进行选择以托管 SSISDB 的指导,请参阅本文中的比较 SQL 数据库与 SQL 托管实例部分。

      如果使用具有 IP 防火墙规则/虚拟网络服务终结点的 Azure SQL 数据库服务器或具有专用终结点的 SQL 托管实例来承载 SSISDB,或者需要在未配置自承载 IR 的情况下访问本地数据,则需要将 Azure-SSIS IR 加入虚拟网络。 有关详细信息,请参阅将 Azure-SSIS IR 加入虚拟网络

    • 确认为数据库服务器启用了“允许访问 Azure 服务”设置。 使用具有 IP 防火墙规则/虚拟网络服务终结点的 Azure SQL 数据库服务器或具有专用终结点的 SQL 托管实例来承载 SSISDB 时,此设置并不适用。 有关详细信息,请参阅保护 Azure SQL 数据库的安全。 若要通过 PowerShell 来启用此设置,请参阅 New-AzSqlServerFirewallRule

    • 将客户端计算机的 IP 地址或一系列包括客户端计算机 IP 地址的 IP 地址添加到数据库服务器的防火墙设置中的客户端 IP 地址列表。 有关详细信息,请参阅 Azure SQL 数据库服务器级和数据库级防火墙规则

    • 若要连接到数据库服务器,可以通过使用 SQL 身份验证(使用服务器管理员凭据)的方式,也可以通过使用 Microsoft Entra 身份验证(使用为数据工厂指定的系统/用户分配的托管标识)的方式。 对于后一种方式,需要将为数据工厂指定的系统/用户分配的托管标识添加到有权访问数据库服务器的 Microsoft Entra 组中。 有关详细信息,请参阅为 Azure-SSIS IR 启用 Microsoft Entra 身份验证

    • 确认你的数据库服务器还没有 SSISDB 实例。 预配 Azure-SSIS IR 时不支持使用现有的 SSISDB 实例。

  • Azure 资源管理器虚拟网络(可选) 。 如果下列条件中至少有一个属实,则必须配置 Azure 资源管理器虚拟网络:

    • 在具有 IP 防火墙规则/虚拟网络服务终结点的 Azure SQL 数据库服务器或具有专用终结点的托管实例上承载 SSISDB。

    • 需要从 SSIS 包连接到本地据存储,该包运行在没有配置自承载 IR 的 Azure-SSIS IR 上。

  • Azure PowerShell(可选) 。 若要运行 PowerShell 脚本来预配 Azure-SSIS IR,请按照如何安装和配置 Azure PowerShell 中的说明进行操作。

区域支持

有关提供数据工厂和 Azure-SSIS IR 的 Azure 区域列表,请参阅数据工厂和 SSIS IR 在各区域的上市情况

比较 SQL 数据库和 SQL 托管实例

下表比较了 Azure SQL 数据库服务器和 SQL 托管实例与 Azure-SSIR IR 相关的某些功能:

功能 SQL 数据库 SQL 托管实例
计划 SQL Server 代理不可用。

请参阅在数据工厂管道中计划包执行
可以使用托管实例代理。
身份验证 可以使用包含的数据库用户创建 SSISDB 实例。该用户是 db_owner 角色的成员,代表具有数据工厂托管标识的任意 Microsoft Entra 组。

请参阅在 Azure SQL 数据库服务器中启用 Microsoft Entra 身份验证以创建 SSISDB
可以使用代表数据工厂托管标识的包含的数据库用户创建 SSISDB 实例。

请参阅在 Azure SQL 托管实例中启用 Microsoft Entra 身份验证以创建 SSISDB
服务层 在 Azure SQL 数据库服务器上创建 Azure-SSIS IR 时,可以选择 SSISDB 的服务层级。 有多个服务层级。 在托管实例上创建 Azure-SSIS IR 时,无法选择 SSISDB 的服务层级。 托管实例上的所有数据库共享分配给该实例的相同资源。
虚拟网络 如果使用具有 IP 防火墙规则/虚拟网络服务终结点的 Azure SQL 数据库服务器,则 Azure-SSIS IR 可以加入 Azure 资源管理器虚拟网络。 如果将托管实例与专用终结点结合使用,则 Azure-SSIS IR 可加入 Azure 资源管理器虚拟网络。 在未为托管实例启用公共终结点的情况下,虚拟网络是必需的。

如果将 Azure-SSIS IR 加入与托管实例相同的虚拟网络,请确保 Azure-SSIS IR 与托管实例位于不同的子网中。 如果将 Azure-SSIS IR 加入与托管实例不同的虚拟网络,我们建议使用虚拟网络对等互连或网络间的连接。 请参阅将应用程序连接到 Azure SQL 数据库托管实例
分布式事务 通过弹性事务支持此功能。 不支持 Microsoft 分布式事务处理协调器 (MSDTC) 事务。 如果 SSIS 包使用 MSDTC 协调分布式事务,请考虑迁移到 Azure SQL 数据库弹性事务。 有关详细信息,请参阅跨云数据库的分布式事务 不支持。

请参阅本文档中的其他 Azure-SSIS IR 主题: