如何配置 BAM 门户以在 NLB 群集上运行

可以将 BAM 门户配置为在网络负载均衡 (NLB) 群集中工作。

重要

BAM 门户 仅在 32 位模式下运行。 如果 IIS 安装在 64 位计算机上,则确认在 32 位模式下启用了 ASP.NET 2.0。 为此,请打开 IIS 管理器,打开应用程序池,选择应用程序池(BAMAppPool),然后单击“高级设置”。“启用 32 位应用程序”中,选择 “True”。

有关其他 BAM 门户要求,请参阅 “规划 BAM 门户”。

准备在 NLB 群集上配置 BAM 门户

  1. 在第一台计算机上安装并配置门户。

    注释

    你只需在第一台计算机上配置门户。 可以选择在群集中的其他计算机上启用 BAM 门户,但配置仅在第一台计算机上完成。

  2. 在要包含在 NLB 群集中的所有计算机上安装门户组件,然后将群集中的其他计算机加入到配置门户的计算机的 BizTalk 组。 必须启用 BizTalk 组并加入相应的组。

  3. 选择为安装门户的计算机配置的 BizTalk 管理数据库。

  4. 创建 NLB 群集。 更多关于创建和管理网络负载均衡群集的信息,请参阅https://go.microsoft.com/fwlink/?LinkId=56206的“创建和管理网络负载均衡群集”。

    注释

    在继续之前,应确认 NLB 群集在 BizTalk Server 上下文之外正常工作。

    注释

    若要设置基于硬件的 NLB,请参阅硬件提供商的文档。

更新 BAM 配置以反映群集的位置

  1. 使用 BAM 管理实用工具获取当前的 BAM 配置。 为此,请单击“ 开始”,单击“ 运行”,然后键入 \Program Files (x86)\Microsoft BizTalk Server <VERSION>Tracking\bm get-config -FileName:MyConfig.xml。

  2. 将本地主机名替换为 NLB 群集的名称。 为此,请单击“ 开始”、“ 运行”,然后键入记事本 \Program Files (x86)\Microsoft BizTalk Server <VERSION>Tracking\MyConfig.xml。

  3. 仅对于基于硬件的 NLB,请验证配置文件包含以下内容:

    <GlobalProperty Name="BAMVRoot">
    http://<NLB IP Address>:portname/BAM</GlobalProperty>
    

    注释

    在基于硬件的 NLB 上更新 BAM 配置时,不需要执行步骤 4 和 5。

  4. 将计算机名称(machinename)替换为群集名称,修改以下行以指向 NLB 群集:

    <GlobalProperty Name=" BAMVRoot">  http://machinename:portname/BAM
    </GlobalProperty>
    
  5. 保存新配置。 为此,请单击“ 开始”、“ 运行”,然后键入 \Program Files (x86)\Microsoft BizTalk Server <VERSION>Tracking\bm update-config -FileName:MyConfig.xml。

若要编辑 BAM 门户 web.config 文件,将 BAMmanagementService 和 QueryService 的 URL 更改为指向 NLB 服务器名称。 注意:基于硬件的 NLB 不需要此过程。

  1. 使用记事本打开 web.config 文件:单击开始,单击运行,键入“notepad \Program Files (x86)\Microsoft BizTalk Server <VERSION>BAMPortal\web.config”,然后单击确定

  2. 修改以下计算机名称(machinename)和以下两行中的端口名称,以指向群集的名称:

    <add key="BamQueryWSUrl" value="http://machinename:portname /BAM/BAMQueryService/BamQueryService.asmx" />
    <add key="BamManagementWSUrl" value=" http://machinename:portname/BAM/BAMManagementService/BamManagementService.asmx" />
    
  3. 保存文件。 为此,请单击“ 文件”,然后单击“记事本”菜单栏上的“ 保存 ”。

配置群集中的每个附加计算机

  1. 将 web.config 文件复制到群集中每台附加计算机的 \Program Files (x86)\Microsoft BizTalk Server <VERSION>BAMPortal 文件夹。

    注释

    在以下步骤中,对 Program Files 文件夹的所有引用都将是 64 位计算机的 Program Files (x86)。

    重要

    在以下步骤中,创建虚拟目录时,请检查以确保它们具有与第一台计算机上的 BizTalk Server 配置创建的三个 BAM 虚拟目录相同的确切设置。 确认文件路径、ASP.NET 版本、目录权限和应用程序池。 在您正在设置的计算机上使用与设置第一台计算机时相同的域服务帐户来运行 BAMAppPool。 确保所有计算机上都运行 BAMAppPool。 需要您复制两个 web.config 文件。

    除了 web.config 文件 \Program Files (x86)\Microsoft BizTalk Server <VERSION>BAMPortal 之外,还必须将 \Program Files (x86)\Microsoft BizTalk Server VERSION BAMPortal\BAMManagementService 和 \Program Files (x86)\Microsoft BizTalk Server <<VERSION>>BAMPortal\BAMQueryService 中的 web.config 文件复制到此计算机上的同一文件夹中。

  2. 对于基于硬件的 NLB,请修改以下两行中的计算机名称 (machinename) 和端口名称,以指向集群的名称:

    <add key="BamQueryWSUrl" value="http://machinename:portname /BAM/BAMQueryService/BamQueryService.asmx" />
    <add key="BamManagementWSUrl" value=" http://machinename:portname/BAM/BAMManagementService/BamManagementService.asmx" />
    
  3. 创建名为 BAMAppPool 的应用程序池。

    注释

    虚拟目录的目录路径应 %InstallationFolder%/BamPortal、%InstallationFolder%/BamPortal/BAMManagementService 和 %InstallationFolder%/BamPortal/BAMQueryService。

  4. 在名为 BAM 的默认网站下创建虚拟目录。

  5. 将 BAM 虚拟目录的应用程序池更改为 BAMAppPool。

    注释

    虚拟目录的目录路径应 %InstallationFolder%/BamPortal、%InstallationFolder%/BamPortal/BAMManagementService 和 %InstallationFolder%/BamPortal/BAMQueryService。

  6. 在 BAM 下创建名为 BAMManagementService 的虚拟目录。

  7. 将 BAMManagementService 的应用程序池更改为 BAMAppPool。

    注释

    虚拟目录的目录路径应 %InstallationFolder%/BamPortal、%InstallationFolder%/BamPortal/BAMManagementService 和 %InstallationFolder%/BamPortal/BAMQueryService。

  8. 在 BAM 下创建名为 BAMQueryService 的虚拟目录。

  9. 将 BAMQueryService 的应用程序池更改为 BAMAppPool。

  10. 使用位于虚拟目录 Properties ASP.NET 选项卡上的 INETMGR,将 BAM、BAMMANAGEMENTSERVICE 和 BAMQUERYSERVICE 的版本更改为 .NET Framework 4。

  11. 运行 aspnet_setreg.exe -k:“SOFTWARE\Microsoft\BizTalk Server\3.0\BAM\WebServices\identity” -u:BAMWebServiceAccount -p:Password。 此处指定的帐户是 BAM 管理 Web 服务用户帐户。

    谨慎

    BAM 门户 仅在 32 位模式下运行。 如果在 64 位计算机上安装 IIS,则必须在 32 位模式下启用 ASP.NET 2.0。 为此,请打开 IIS 管理器,打开应用程序池,选择应用程序池(BAMAppPool),然后单击“高级设置”。“启用 32 位应用程序”中,选择 “True”。

    规划 BAM 门户 列出了额外要求。

  12. 通过运行 SubInACL(命令行工具)在 WebServices 上设置 AppPool 用户的读取 ACL,该命令行工具使管理员能够获取有关文件、注册表项和服务的安全信息,以及将此信息从用户传输到用户、从本地组或全局组传输到组以及从域传输到域。

  13. 下载 SubInAcl。

  14. 打开命令提示符。 为此,请单击“ 开始”,单击“ 运行”,键入 cmd,然后单击“ 确定”。

  15. 在命令提示符处键入以下内容:subinacl.exe /subkeyreg “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BizTalk Server\3.0\BAM\WebServices” “/grant=Network Service=R”

    注释

    此命令的目的是授予 BAM 应用程序池用户对 SOFTWAREMicrosoftBizTalk Server3.0BAMWebServicesidentity 注册表项的读取访问权限。 该示例使用网络服务,因为它是 IIS 用于应用程序池的默认服务。 如果不使用默认 IIS 设置,则应替换部署使用的应用程序池用户。

  16. 在命令提示符处键入以下内容:subinacl.exe /keyreg “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BizTalk Server\3.0” “/grant=<BAM WebService 帐户>”

    注释

    此命令的目的是授予 BAM 管理 Web 服务用户帐户对 SOFTWARE\Microsoft\BizTalk Server\3.0\BAM\WebServices\Identity 注册表项的读取访问权限。

  17. 验证 BAMManagement Web 服务所运行的应用程序池是否具有对ASPNET_SETREG密钥的读取访问权限的标识。

  18. 使用计算机管理管理员工具将 BAM 管理 Web 服务用户和 BAM 应用程序池用户帐户添加到 IIS 辅助进程组(IIS_WPG)和 SharePoint 服务组(STS_WPG)。

  19. 为应用程序池和 Web 服务用户设置对临时 ASP.NET 文件夹的权限:c:\windows\system32\cacls '%windir%\Microsoft.NET\Framework\v2.0.<min version number>\Temporary ASP.NET Files' /T /E /G <BAM WebService Account>:F

    注释

    授予对 BAM 管理 Web 服务用户帐户和 BAM 应用池用户帐户的访问权限。

另请参阅

管理 BAM 门户