规划高可用性
BizTalk Server的高可用性侧重于恢复可能会中断BizTalk Server部署中可用性的功能组件。
若要在 BizTalk Server 中演示高可用性,必须导致故障并衡量产品在恢复中的有效性。 高度可用的BizTalk Server部署使错误和故障对外部应用程序和系统透明,并确保所有服务继续正常运行,并将中断降到最低。
设计提供高可用性的BizTalk Server部署涉及为应用程序集成或业务流程集成方案中涉及的每个功能组件实现冗余。 BizTalk Server通过在概念上将数据与处理数据的主机分开来简化这些方案的实现。 主机是 BizTalk 项的逻辑容器,例如业务流程、发送处理程序和接收处理程序。 创建 主机实例 并将其分配给主机。 “主机实例”是特定服务器上的主机的物理表示。 它是名为 BTSNTSvc.exe 的BizTalk Server服务进程,或者另一个进程,例如 IIS 进程。 因此,为BizTalk Server提供高可用性涉及运行多个主机实例并聚类分析BizTalk Server数据库,如下所示:
BizTalk 主机的体系结构。 BizTalk Server允许分离主机并运行多个主机实例,以便为接收消息、处理业务流程和发送消息等关键功能提供高可用性。 这些主机不需要任何其他聚类分析或负载均衡机制,因为BizTalk Server通过主机实例自动跨多台计算机分配工作负载。 但是,运行 HTTP 和 SOAP 适配器接收处理程序的主机需要负载均衡机制(例如网络负载平衡 (NLB) )来提供高可用性,而运行 FTP、MSMQ、POP3、SQL 和 SAP 接收处理程序的主机需要聚类分析机制来提供高可用性。
注意
必须始终群集化 SAP 接收适配器以适应两阶段提交方案。
BizTalk Server 数据库的体系结构。 BizTalk Server数据库的高可用性配置通常由两台或更多台在主动/被动服务器群集配置中配置的SQL Server数据库计算机组成。 这些计算机共享通用磁盘资源 (如 RAID 1+0 SCSI 磁盘阵列或存储区域网络) ,并使用 Windows 故障转移群集提供备份冗余和容错。
另一个对高可用性至关重要的 BizTalk 功能组件是主机密服务器。 BizTalk Server依赖于此服务来获取加密密钥。
本部分介绍如何解决上述每个类别中的高可用性问题。 由于BizTalk Server高可用性解决方案是在 Windows 和 SQL Server 上构建的,因此请确保在为BizTalk Server配置主机之前部署这些产品具有高可用性。 以下链接包括有关确保这些基础产品的高可用性的信息:
高可用性解决方案 (SQL Server) ] (/sql/sql-server/failover-clusters/high-availability-solutions-sql-server)
了解组件故障的影响
下表列出了BizTalk Server环境的组件和依赖项,以及组件或依赖项失败时对BizTalk Server环境的影响。 在决定是群集组件还是依赖项时,应考虑潜在故障的范围。
组件或依赖项 | 故障范围 |
---|---|
SQL Server | 系统范围内。 如果SQL Server失败,则BizTalk Server将无法处理文档。 |
主密钥服务器 | 系统范围内。 如果主机密服务器失败,BizTalk Server将无法处理文档。 注意: 如果主密钥服务器发生故障,BizTalk 组中的每个 BizTalk 服务器将继续使用主机密的缓存内存中副本,直到重新启动该 BizTalk 服务器上的企业 SSO 服务。 如果在 BizTalk 服务器上重启企业 SSO 服务,则主机密的缓存副本将从内存中释放,BizTalk 服务器必须能够联系主机密服务器以获取主机密的另一个副本。 如果主机密服务器发生故障,并且希望 BizTalk 服务器继续处理文档,请不要重启 BizTalk 服务器上的企业 SSO 服务, (组中的) 。 |
MSDTC | Server。 如果 MSDTC 失败,则服务器上需要事务支持的任何组件都将失败。 注意:由于SQL Server和主机密服务器依赖于 MSDTC 来获得事务支持,因此,如果 SQL Server 或主机密服务器上的 MSDTC 发生故障,故障范围将变为系统范围。 BizTalk Server在运行时操作期间与SQL Server和主机密服务器通信时需要事务支持。 |
BizTalk 主机实例 | Server。 如果主机实例失败,驻留在 BizTalk 主机实例中的任何组件都将无法参与文档处理。 |
Microsoft 消息队列 (MSMQ) | Server。 如果 MSMQ 失败,则依赖于 MSMQ 服务的任何文档处理(如 MSMQ 适配器)都将在服务器上停止。 |
文件系统 | Server。 如果文件系统失败,则依赖于文件系统的任何文档处理(如文件适配器)都将在服务器上停止。 |
为了能够更好地管理高可用性BizTalk Server系统,必须充分了解 BizTalk 堆栈:Windows Server、DC (DNS、DHCP) 、BizTalk Server、SQL Server、IIS 服务器、文件服务器、MSMQ 服务器、外部应用程序。 本部分重点介绍BizTalk Server和依赖SQL Server计算机的高可用性。
BizTalk Server High-Availability示例
有关 Microsoft BizTalk Server 中通过主机横向扩展层提供高可用性的示例方案,请参阅示例BizTalk Server高可用性方案。