我们正在计划建立一个BizTalk 2009,其中我们有2个BizTalk应用程序服务器和2个DB服务器(DB服务器在活动/被动群集中)。所有服务器都运行Windows Server 2008 R2。

作为我们应用程序的一部分,我们将通过MSMQ,文件和肥皂适配器进行传入的流量。我们还需要高可用性和负载平衡。

假设我创建了两个不同的biztalk主机,并将文件接收处理程序分配给第一个,而将MSMQ接收处理程序分配给第二个。现在,我为两个主机中的每个主机创建两个主机实例(即两个物理服务器中的每个主机)。

在审查了BizTalk文档后,这就是我到目前为止所知道的:

  • 对于文件(接收),BizTalk会自动实现高可利用性和负载平衡,因为我在组中的两个服务器上设置了一个主机实例。

  • MSMQ(接收)需要BizTalk主机群集以确保高可用性(主机群集,但是还需要设置Windows故障转移群集)。这里没有加载平衡选项。

  • SOAP(接收)需要NLB实现负载平衡和高可用性(如果一台服务器降低,NLB将将流量引导到另一个)。

这是我完全困惑的地方,我迫切需要您的帮助:

  • 是否可以在两个应用程序服务器上同时设置Windows故障转移群集和NLB?
    • 如果是,请告诉我如何。
    • 如果否,请向我解释,当他们的基础先决条件是互斥的时,任何人如何在MSMQ和肥皂上恢复高可用性和负载平衡!


非常感谢您的帮助,
m

有帮助吗?

解决方案

微软不支持在同一服务器上运行的NLB和MSC

“这两个组件在运行在单独的计算机上运行的两或三层应用程序模型中很好地工作。请注意,由于潜在的硬件共享冲突与网络之间的潜在硬件共享冲突,因此Microsoft不支持同一计算机上运行这两个组件,并且不建议使用。负载均衡。”http://support.microsoft.com/kb/235305

如果要为BizTalk中收到的肥皂请求提供HA,则应将BizTalk服务器配置为同一BizTalk组中的活动/活动配置(无MSC)。完成此操作后,您将在这两个之间安装配置NLB。您的客户端将能够通过NLB群集查询Web服务,而NLB服务将将请求路由到集群中的特定服务器(应在两台服务器中安装和配置您的ASMX文件)。

关于MSMQ,您到目前为止获得的信息是正确的,确保此适配器HA的唯一方法是聚集BizTalk服务器。如果您也想实现此功能,那么您必须为肥皂接收主机和MSMQ提供单独的基础架构。

这种情况的主要原因是,一个孤立的主机不知道一个孤立的主机,因此BizTalk Inprocess Host可以全部挂起,并且孤立的主机永远不会知道,并且会继续收到请求。

我目前正在设计一个非常相似的架构,因此,如果您想分享更多评论或问题,您可以通过ignacioquijas@hotmail.com与我联系。

Ignacio Quijas Microsoft Biztalk服务器专家

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top