我必须使用 Azure 数据工厂将数据从本地 SQL Server 传输到 Azure Sql,但是 SQL Server 所有者需要将公共 IP 列入白名单才能提供对其服务的访问。我知道 ADF 在特定区域使用一系列 IP,但有没有办法设置一个不会更改的静态 IP,并且我可以将其提供给我的客户?
正如 Nick 和 wBob 所正确提到的,您可以获得 Azure 集成运行时使用的 IP 地址,但这对于同一区域中的所有服务器都是相同的,而不是仅您的集成运行时的唯一静态 IP 地址,因为 Azure 集成运行时是无服务器的。您必须设置自托管集成运行时才能获取数据工厂连接器的静态 IP。
另请查看 simialr 使用专用端点将数据从 Azure Blob 存储安全地复制到 SQL 数据库
使用 ADF SHIR 的替代方法是使用 ADF Azure Batch 活动,其中 Azure Batch 池位于客户 VNET 中 - 特别是在与具有公共 IP 的 NAT 网关关联的子网中。任何 SFTP 请求都将通过 NATG 公共 IP 传出。
您的 Azure Batch 节点可以是 Linux VM,您可以在其中使用 sftp 命令。
与 ADF SHIR 相比,这种方法的好处之一是 Azure Batch 是基于消耗的计费,而 ADF SHIR 可能位于始终开启的虚拟机上(并且您需要为此付费)。