创建和管理自承载集成运行时

集成运行时 (IR) 是 Microsoft Purview 用于跨不同网络环境进行数据扫描的计算基础结构。

自承载集成运行时 (SHIR) 可用于扫描本地网络或虚拟网络中的数据源。 自承载集成运行时的安装需要本地计算机或专用网络内的虚拟机。

本文介绍自承载集成运行时的设置以及故障排除和管理。

主题
设置新的自承载集成运行时 计算机要求
每个源文章中的先决条件下列出了特定于源的计算机要求
设置指南
网络 网络要求
代理服务器
专用终结点
排查代理和防火墙问题
排查连接问题
管理 常规

注意

Microsoft Purview Integration Runtime不能与同一台计算机上的 Azure Synapse Analytics 或Azure 数据工厂 Integration Runtime共享。 需要在单独的计算机上安装它。

先决条件

  • 受支持的 Windows 版本包括:
    • Windows 8.1
    • Windows 10
    • Windows 11
    • Windows Server 2012
    • Windows Server 2012 R2
    • Windows Server 2016
    • Windows Server 2019
    • Windows Server 2022

不支持在域控制器上安装自承载集成运行时。

重要

扫描某些数据源需要在自承载集成运行时计算机上进行其他设置。 例如,JDK、Visual C++ 可再发行程序包或特定驱动程序。 对于源, 请参阅每个源文章,了解先决条件详细信息。 先决条件 部分将 列出任何要求。

  • 若要在 Microsoft Purview 中添加和管理 SHIR,需要 Microsoft Purview 中的 数据源管理员权限

  • 自承载集成运行时需要.NET Framework 4.7.2 或更高版本的 64 位操作系统。 有关详细信息,请参阅.NET Framework系统要求

  • 对于自承载集成运行时计算机,建议的最低配置是具有 8 个核心、28 GB RAM 和 80 GB 可用硬盘驱动器空间的 2-GHz 处理器。 扫描某些数据源可能需要更高的计算机规格,具体取决于你的方案。 另请检查相应的连接器文章中的先决条件。

  • 如果主机处于休眠状态,则自承载集成运行时不会响应数据请求。 在安装自承载集成运行时之前,在计算机上配置适当的电源计划。 如果计算机配置为休眠,则自承载集成运行时安装程序将提示并显示一条消息。

  • 必须是计算机上的管理员才能成功安装和配置自承载集成运行时。

  • 按已设置的计划以特定频率进行扫描运行。 计算机上的处理器和 RAM 使用率在峰值和空闲时间时遵循相同的模式。 资源使用情况还在很大程度上取决于扫描的数据量。 当多个扫描作业正在进行时,会看到资源使用量在高峰时段上升。

重要

如果使用 Self-Hosted 集成运行时扫描 Parquet 文件,则需要在 IR 计算机上安装 64 位 JRE 8 (Java 运行时环境) 或 OpenJDK 。 有关安装指南,请查看 页面底部的 Java 运行时环境部分

使用自承载 IR 的注意事项

  • 可以使用单个自承载集成运行时来扫描多个数据源。
  • 在任何一台计算机上只能安装一个自承载集成运行时实例。 如果你有两个需要扫描本地数据源的 Microsoft Purview 帐户,请在两台计算机上安装自承载 IR,每个 Microsoft Purview 帐户各安装一个。
  • 自承载集成运行时不需要与数据源位于同一台计算机上,除非在相应的源文章中特别指出为先决条件。 让自承载集成运行时靠近数据源可以减少自承载集成运行时连接到数据源的时间。

设置自承载集成运行时

若要创建和设置自承载集成运行时,请使用以下过程。

创建自承载集成运行时

注意

若要在 Microsoft Purview 中添加或管理 SHIR,需要 Microsoft Purview 中的 数据源管理员权限

  1. Microsoft Purview 治理门户的主页上,从左侧导航窗格中选择“ 数据映射 ”。

  2. 在左窗格的“ 源和扫描 ”下,选择“ 集成运行时”,然后选择“ + 新建”。

    选择“IR”。

  3. “集成运行时设置 ”页上,选择“ 自承载 ”以创建自承载 IR,然后选择“ 继续”。

    创建新的 SHIR。

  4. 输入 IR 的名称,然后选择“创建”。

  5. “Integration Runtime设置”页上,按照“手动设置”部分下的步骤进行操作。 必须从下载站点将集成运行时下载到要在其中运行它的 VM 或计算机。

    获取密钥

    • 复制并粘贴身份验证密钥。

    • 从本地 Windows 计算机上的 Microsoft Integration Runtime 下载自承载集成运行时。 运行安装程序。 支持自承载集成运行时版本,例如 5.4.7803.1 和 5.6.7795.1。

    • “注册Integration Runtime(自承载)”页上,粘贴之前保存的两个密钥之一,然后选择“注册”。

      输入键。

    • “新建Integration Runtime(自承载)节点”页上,选择“完成”。

  6. 成功注册自承载集成运行时后,会看到以下窗口:

    已成功注册。

可以使用同一密钥为自承载集成运行时注册多个节点。 从 高可用性和可伸缩性中了解详细信息。

管理自承载集成运行时

可以通过在 Microsoft Purview 治理门户中导航到 “集成运行时” 来编辑自承载集成运行时,将鼠标悬停在 IR 上,然后选择“ 编辑” 按钮。

  • “设置” 选项卡中,可以更新说明、复制密钥或重新生成新密钥。
  • 在“ 节点 ”选项卡中,可以看到已注册节点的列表,以及状态、IP 地址和节点删除选项。 从 高可用性和可伸缩性中了解详细信息。
  • 在“ 版本 ”选项卡中,可以看到 IR 版本状态。 有关详细信息,请参阅 自承载集成运行时自动更新和过期通知

编辑 IR 详细信息。

可以通过导航到“集成运行时”删除自承载集成 运行时,将鼠标悬停在 IR 上,然后选择“ 删除 ”按钮。

通知区域图标和通知

如果将光标移到通知区域中的图标或消息上,可以查看有关自承载集成运行时状态的详细信息。

通知区域中的通知

自承载集成运行时的服务帐户

自承载集成运行时的默认登录服务帐户是 NT SERVICE\DIAHostService。 可以在服务 -> Integration Runtime服务 -> 属性 -> 登录中看到它。

自承载集成运行时的服务帐户

确保帐户具有“作为服务登录”的权限。 否则,自承载集成运行时无法成功启动。 可以在本地安全策略 - 安全设置 -> 本地策略 ->> 用户权限分配 -> 以服务身份登录中检查权限

本地安全策略 - 用户权限分配的屏幕截图

“以服务身份登录”用户权限分配的屏幕截图

高可用性和可伸缩性

可以将自承载集成运行时与 Azure 中的多个本地计算机或虚拟机相关联。 这些计算机称为节点。 最多可以有四个与自承载集成运行时关联的节点。 拥有多个节点的好处包括:

  • 提高自承载集成运行时的可用性,以便它不再是扫描的单一故障点。 当最多使用四个节点时,这种可用性有助于确保连续性。
  • 运行更多并发扫描。 每个自承载集成运行时可以同时启用多个扫描运行,根据计算机的 CPU/内存自动确定。 如果需要更多并发,可以安装更多节点。
  • 扫描 Azure Blob、Azure Data Lake Storage Gen1、Azure Data Lake Storage Gen2 和 Azure 文件存储 等源时,每次扫描运行都可以利用所有这些节点来提高扫描性能。 对于其他源,扫描将在其中一个节点上执行。

可以通过从 下载中心安装自承载集成运行时软件来关联多个节点。 然后,使用相同的身份验证密钥注册它。

注意

在添加另一个节点以实现高可用性和可伸缩性之前,请确保在第一个节点上启用了 “对 Intranet 的远程访问 ”选项。 为此,请选择“Microsoft Integration Runtime Configuration Manager>设置对 Intranet 的>远程访问”。

网络要求

自承载集成运行时计算机需要连接到多个资源才能正常工作:

  • 用于管理自承载集成运行时的 Microsoft Purview 服务。
  • 要使用自承载集成运行时扫描的数据源。
  • Microsoft Purview 创建的托管存储帐户。 Microsoft Purview 使用这些资源来引入扫描结果,因此自承载集成运行时需要能够与这些资源连接。

需要考虑两个防火墙:

  • 在组织的中央路由器上运行的公司防火墙
  • 在安装了自承载集成运行时的本地计算机上配置为守护程序的 Windows 防火墙

以下是企业防火墙和 Windows/计算机防火墙上需要允许的域和出站端口。

提示

对于以“managed_storage_account>”<列出的域,请添加与 Microsoft Purview 帐户关联的托管资源的名称。 可以从 Azure 门户 -> Microsoft Purview 帐户 -> 托管资源选项卡找到它们。

域名 出站端口 说明
*.frontend.clouddatahub.net 443 需要连接到 Microsoft Purview 服务。 目前需要通配符,因为没有专用资源。
*.servicebus.windows.net 443 在 Microsoft Purview 治理门户中设置扫描所必需的。 此终结点用于从 UI 进行交互式创作,例如,测试连接、浏览文件夹列表和表列表以限定扫描范围。 若要避免使用通配符,请参阅 获取 Azure 中继的 URL
<purview_account>.purview.azure.com 443 需要连接到 Microsoft Purview 服务。 如果使用 Purview 专用终结点,则 帐户专用终结点涵盖此终结点。
<managed_storage_account>.blob.core.windows.net 443 需要连接到 Microsoft Purview 托管的 Azure Blob 存储帐户。 如果使用 Purview 专用终结点,则 引入专用终结点涵盖此终结点。
<managed_storage_account>.queue.core.windows.net 443 需要连接到 Microsoft Purview 托管的 Azure 队列存储帐户。 如果使用 Purview 专用终结点,则 引入专用终结点涵盖此终结点。
download.microsoft.com 443 下载自承载集成运行时更新所必需的。 如果已禁用自动更新,则可以跳过配置此域。
login.windows.net
login.microsoftonline.com
443 需要才能登录到 Azure Active Directory。

注意

由于 Azure 中继目前不支持服务标记,因此必须在 NSG 规则中使用服务标记 AzureCloud 或 Internet 来与 Azure 中继通信。

根据要扫描的源,还需要允许其他 Azure 或外部源的其他域和出站端口。 此处提供了几个示例:

域名 出站端口 说明
<your_storage_account>.dfs.core.windows.net 443 扫描 Azure Data Lake Store Gen 2 时。
<your_storage_account>.blob.core.windows.net 443 扫描 Azure Blob 存储时。
<your_sql_server>.database.windows.net 1433 扫描Azure SQL数据库时。
*.powerbi.com*.analysis.windows.net 443 扫描 Power BI 租户时。
<your_ADLS_account>.azuredatalakestore.net 443 扫描 Azure Data Lake Store Gen 1 时。
各种域 依赖 SHIR 将扫描的任何其他源的域和端口。

对于某些云数据存储(例如 Azure SQL 数据库和 Azure 存储),可能需要在其防火墙配置上允许自承载集成运行时计算机的 IP 地址,或者可以在自承载集成运行时的网络中创建服务的专用终结点。

重要

在大多数环境中,还需要确保 DNS 配置正确。 若要确认,可以从 SHIR 计算机使用 nslookup 来检查到每个域的连接。 每个 nslookup 应返回资源的 IP。 如果使用 专用终结点,应返回专用 IP,而不是公共 IP。 如果未返回 IP,或者使用专用终结点时返回公共 IP,则需要寻址 DNS/VNet 关联或专用终结点/VNet 对等互连。

获取 Azure 中继的 URL

需要放入防火墙允许列表中的一个必需域和端口用于与 Azure 中继通信。 自承载集成运行时使用它进行交互式创作,例如测试连接和浏览文件夹/表列表。 如果不希望允许 .servicebus.windows.net 并且想要具有更具体的 URL,则可以查看自承载集成运行时所需的所有 FQDN。 请按照下列步骤操作:

  1. 转到 Microsoft Purview 治理门户 -> 数据映射 -> 集成运行时,然后编辑自承载集成运行时。

  2. 在“编辑”页中,选择“ 节点 ”选项卡。

  3. 选择“ 查看服务 URL” 以获取所有 FQDN。

    显示如何获取集成运行时的 Azure 中继 URL 的屏幕截图。

  4. 可以在防火墙规则的允许列表中添加这些 FQDN。

注意

有关 Azure 中继连接协议的详细信息,请参阅 Azure 中继混合连接协议

代理服务器注意事项

如果企业网络环境使用代理服务器访问 Internet,请将自承载集成运行时配置为使用适当的代理设置。 可以在初始注册阶段或注册代理后设置代理。

指定代理

配置后,自承载集成运行时使用代理服务器连接到使用 HTTP 或 HTTPS 协议的服务。 这就是在初始设置期间选择 “更改链接” 的原因。

设置代理

Microsoft Purview 支持两个配置选项:

  • 不使用代理:自承载集成运行时不会显式使用任何代理连接到云服务。
  • 使用系统代理:自承载集成运行时使用可执行文件配置文件中配置的代理设置。 如果未在这些文件中指定代理,则自承载集成运行时将直接连接到服务,而无需通过代理。
  • 使用自定义代理:配置要用于自承载集成运行时的 HTTP 代理设置,而不是使用 diahost.exe.config 和 diawp.exe.config 中的配置。 地址端口 值是必需的。 “用户名”“密码” 值是可选的,具体取决于代理的身份验证设置。 所有设置在自承载集成运行时上使用 Windows DPAPI 加密,并存储在本地计算机上。

注意

Azure 数据源和 Power BI 以外的连接器不支持通过代理连接到数据源。

保存更新的代理设置后,集成运行时主机服务会自动重启。

注册自承载集成运行时后,如果要查看或更新代理设置,请使用 Microsoft Integration Runtime Configuration Manager。

  1. 打开Microsoft Integration Runtime Configuration Manager
  2. 选择“设置”选项卡。
  3. “HTTP 代理”下,选择“ 更改 ”链接以打开“ 设置 HTTP 代理 ”对话框。
  4. 选择“下一步”。 然后,你会看到一条警告,要求你拥有保存代理设置和重启集成运行时主机服务的权限。

注意

如果使用 NTLM 身份验证设置代理服务器,则集成运行时主机服务将在域帐户下运行。 如果以后更改域帐户的密码,请记得更新该服务的配置设置并重启服务。 由于此要求,建议使用不需要频繁更新密码的专用域帐户来访问代理服务器。

如果使用系统代理,请确保代理服务器允许到 网络规则的出站流量。

配置代理服务器设置

如果为 HTTP 代理选择“使用系统代理”选项,则自承载集成运行时将使用路径 C:\Program Files\Microsoft Integration Runtime\5.0\ 下以下四个文件中的代理设置来执行不同的操作:

  • .\Shared\diahost.exe.config
  • .\Shared\diawp.exe.config
  • .\Gateway\DataScan\Microsoft.DataMap.Agent.exe.config
  • .\Gateway\DataScan\DataTransfer\Microsoft.DataMap.Agent.Connectors.Azure.DataFactory.ServiceHost.exe.config

如果未在这些文件中指定代理,则自承载集成运行时将直接连接到服务,而无需通过代理。

以下过程提供了更新 diahost.exe.config 文件的说明。

  1. 在 文件资源管理器 中,将 C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config 的安全副本作为原始文件的备份。

  2. 打开以管理员身份运行的记事本。

  3. 在记事本中,打开文本文件 C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config。

  4. 查找默认 system.net 标记,如以下代码所示:

    <system.net>
        <defaultProxy useDefaultCredentials="true" />
    </system.net>
    

    然后,可以添加代理服务器详细信息,如以下示例所示:

    <system.net>
      <defaultProxy>
        <proxy bypassonlocal="true" proxyaddress="<your proxy server e.g. http://proxy.domain.org:8888/>" />
      </defaultProxy>
    </system.net>
    

    代理标记允许其他属性指定所需的设置,例如 scriptLocation。 有关语法,请参阅 <proxy> Element (Network Settings)

    <proxy autoDetect="true|false|unspecified" bypassonlocal="true|false|unspecified" proxyaddress="uriString" scriptLocation="uriString" usesystemdefault="true|false|unspecified "/>
    
  5. 将配置文件保存在其原始位置。

重复相同的过程以更新 diawp.exe.configMicrosoft.DataMap.Agent.exe.config 文件。

然后转到路径 C:\Program Files\Microsoft Integration Runtime\5.0\Gateway\DataScan\DataTransfer,创建名为“Microsoft.DataMap.Agent.Connectors.Azure.DataFactory.ServiceHost.exe.config”的文件,并按如下所示配置代理设置。 还可以如上文所述扩展设置。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.net>
    <defaultProxy>
      <proxy bypassonlocal="true" proxyaddress="<your proxy server e.g. http://proxy.domain.org:8888/>" />
    </defaultProxy>
  </system.net>
</configuration>

必须从代理中排除本地流量,例如,如果 Microsoft Purview 帐户位于专用终结点后面。 在这种情况下,请将路径下的以下四个文件更新为包含绕过列表 C:\Program Files\Microsoft Integration Runtime\5.0\ 所需的绕过列表:

  • .\Shared\diahost.exe.config
  • .\Shared\diawp.exe.config
  • .\Gateway\DataScan\Microsoft.DataMap.Agent.exe.config
  • .\Gateway\DataScan\DataTransfer\Microsoft.DataMap.Agent.Connectors.Azure.DataFactory.ServiceHost.exe.config

用于扫描Azure SQL数据库和 ADLS 第 2 代存储的绕过列表的示例:

 <system.net>
   <defaultProxy>
     <bypasslist>
       <add address="scaneastus4123.blob.core.windows.net" />
       <add address="scaneastus4123.queue.core.windows.net" />
       <add address="Atlas-abc12345-1234-abcd-a73c-394243a566fa.servicebus.windows.net" />
       <add address="contosopurview123.purview.azure.com" />
       <add address="contososqlsrv123.database.windows.net" />
       <add address="contosoadls123.dfs.core.windows.net" />
       <add address="contosoakv123.vault.azure.net" />
     </bypasslist>
     <proxy proxyaddress=http://proxy.domain.org:8888 bypassonlocal="True" />
   </defaultProxy>
 </system.net>

重启自承载集成运行时主机服务,这会选取更改。 若要重启服务,请使用 控制面板 中的服务小程序。 或者从Integration Runtime Configuration Manager,选择“停止服务”按钮,然后选择“启动服务”。 如果服务未启动,则可能在编辑的应用程序配置文件中添加了不正确的 XML 标记语法。

重要

不要忘记更新上面提到的所有四个文件。

还需要确保 Microsoft Azure 在公司的允许列表中。 可以下载有效的 Azure IP 地址列表。 每个云的 IP 范围(按区域和该云中标记的服务细分)现已在 MS 下载上提供:

如果看到如下所示的错误消息,则可能是因为防火墙或代理服务器配置不当。 此类配置会阻止自承载集成运行时连接到 Microsoft Purview 服务。 若要确保防火墙和代理服务器已正确配置,请参阅上一部分。

  • 尝试注册自承载集成运行时时,会收到以下错误消息:“未能注册此Integration Runtime节点! 确认身份验证密钥有效,并且集成服务主机服务正在此计算机上运行。”

  • 打开Integration Runtime Configuration Manager时,会看到状态为“已断开连接”“正在连接”。 查看 Windows 事件日志时,在>事件查看器应用程序和服务日志>”下Microsoft Integration Runtime会看到如下所示的错误消息:

    Unable to connect to the remote server
    A component of Integration Runtime has become unresponsive and restarts automatically. Component name: Integration Runtime (Self-hosted)
    

Java 运行时环境安装

如果使用自承载集成运行时和 Microsoft Purview 扫描 Parquet 文件,则需要在自承载 IR 计算机上安装 Java 运行时环境或 OpenJDK。

使用自承载 IR 扫描 Parquet 文件时,服务首先通过检查注册表 (HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\{Current Version}\JavaHome) 中的 JRE 来查找 Java 运行时,如果未找到,则首先检查 OpenJDK 的系统变量 JAVA_HOME 。 可以在计算机上的“系统设置”和“环境变量”下设置JAVA_HOME。 创建或编辑 JAVA_HOME 变量以指向计算机上的 Java jre。 例如:C:\Program Files\Java\jdk1.8\jre

  • 若要使用 JRE:64 位 IR 需要 64 位 JRE。 可从 此处找到它。
  • 若要使用 OpenJDK:自 IR 版本 3.13 起就支持它。 将 jvm.dll 与 OpenJDK 的所有其他必需程序集打包到自承载 IR 计算机中,并相应地JAVA_HOME设置系统环境变量。

后续步骤