使用 Azure 数据工厂 + Azure Integration Runtime 连接到本地 SQL 服务器
Use Azure Data Factory + Azure Integration Runtime to connect to on-premises SQL Server
我在虚拟机上安装了一个 SQL 服务器实例,该虚拟机连接到 Azure VNet。我的目标是连续从此 SQL 服务器获取数据并将其存储在 Azure Data Lake 中。
是否可以使用 Azure 数据工厂 + Azure 集成运行时(不是自托管集成运行时!)来做到这一点?
如果我创建一个新的数据工厂(包括专用端点,这样工厂就可以获得 VNet 的 IP 地址)并使用标准集成运行时“AutoResolveIntegrationRuntime”,则可以指定 SQL 服务器名称和凭据,但是,连接测试失败:
在 VM 上安装自承载集成运行时并使用此 IR 后,它似乎可以工作:
集成运行时到底在做什么,没有它就不可能做到?最后,难道 Azure Integration Runtime(托管在 Azure 上)不能只打开一个 ODBC 连接,尤其是因为所有资源都在同一个网络中吗?
我们无法使用 Azure IR 针对 本地 或 Azure VNet 中的计算资源调度以下转换活动。
引用此 document。我们可以得出结论:
- Azure IR 可以:
- 运行 Azure 中的数据流
- 运行 在云数据存储之间复制 activity
- 在 public 网络.
中调度以下转换活动
- 自托管 IR 能够:
- 运行在云数据存储和私有网络中的数据存储之间复制activity。
- 针对 本地 或 Azure 虚拟网络
中的计算资源调度以下转换活动
更新:
根据章节 Integration runtime location,我们可以看到 Azure IR 是动态的 built.And Auto-resolve Azure IR 默认是 运行 in public network。我认为这就是您无法通过 Azure IR 连接位于 Azure VNet 中的 sql 服务器的原因。
我们可以看到Azure IR的子类型是public如下:
我在虚拟机上安装了一个 SQL 服务器实例,该虚拟机连接到 Azure VNet。我的目标是连续从此 SQL 服务器获取数据并将其存储在 Azure Data Lake 中。
是否可以使用 Azure 数据工厂 + Azure 集成运行时(不是自托管集成运行时!)来做到这一点?
如果我创建一个新的数据工厂(包括专用端点,这样工厂就可以获得 VNet 的 IP 地址)并使用标准集成运行时“AutoResolveIntegrationRuntime”,则可以指定 SQL 服务器名称和凭据,但是,连接测试失败:
在 VM 上安装自承载集成运行时并使用此 IR 后,它似乎可以工作:
集成运行时到底在做什么,没有它就不可能做到?最后,难道 Azure Integration Runtime(托管在 Azure 上)不能只打开一个 ODBC 连接,尤其是因为所有资源都在同一个网络中吗?
我们无法使用 Azure IR 针对 本地 或 Azure VNet 中的计算资源调度以下转换活动。
引用此 document。我们可以得出结论:
- Azure IR 可以:
- 运行 Azure 中的数据流
- 运行 在云数据存储之间复制 activity
- 在 public 网络. 中调度以下转换活动
- 自托管 IR 能够:
- 运行在云数据存储和私有网络中的数据存储之间复制activity。
- 针对 本地 或 Azure 虚拟网络 中的计算资源调度以下转换活动
更新:
根据章节 Integration runtime location,我们可以看到 Azure IR 是动态的 built.And Auto-resolve Azure IR 默认是 运行 in public network。我认为这就是您无法通过 Azure IR 连接位于 Azure VNet 中的 sql 服务器的原因。
我们可以看到Azure IR的子类型是public如下: