Biztalk Server 2009 - 故障转移群集和网络负载平衡(NLB)

时间:2010-04-24 02:05:29

标签: biztalk load-balancing high-availability biztalk-2009 nlb

我们计划在Biztalk 2009中设置2个Biztalk应用服务器和2个数据库服务器(数据库服务器位于主动/被动群集中)。所有服务器都运行Windows Server 2008 R2。

作为我们应用程序的一部分,我们将通过MSMQ,FILE和SOAP适配器获得传入流量。我们还需要高可用性和负载平衡。

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

在查看Biztalk文档之后,这是我目前所知道的:

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

  • MSMQ(接收)要求Biztalk主机群集以确保高可用性(但主机群集也需要设置Windows故障转移群集)。这里没有明确的装载平衡选项。

  • SOAP(接收)要求NLB实现负载平衡和高可用性(如果一台服务器出现故障,NLB会将流量引导到另一台服务器)。

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

  • 是否可以在两台应用程序服务器上同时设置Windows故障转移群集和NLB?
    • 如果是,那么请告诉我如何。
    • 如果不是,那么请向我解释当MSMQ和SOAP的基本先决条件相互排斥时,如何为MSMQ和SOAP实现高可用性和负载平衡!


非常感谢您的帮助,
中号

1 个答案:

答案 0 :(得分:3)

Microsoft不支持在同一服务器上运行的NLB和MSCS

“这两个组件在单独的计算机上运行的两层或三层应用程序模型中很好地协同工作。请注意,在同一台计算机上运行这两个组件是不受支持的,并且由于Cluster之间可能存在硬件共享冲突,Microsoft不建议这样做服务和网络负载平衡。“ http://support.microsoft.com/kb/235305

如果要为BizTalk中收到的SOAP请求提供HA,则应将BizTalk服务器配置为在同一BizTalk组中处于主动/主动配置(无MSCS)。执行此操作后,在这两者之间安装配置NLB。您的客户端将能够通过NLB群集查询Web服务,NLB服务将请求路由到群集中的特定服务器(您的asmx文件应该在两个服务器中安装和配置)。

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

此方案的主要原因是BizTalk独立主机不支持群集,因此BizTalk InProcess主机可能全部挂起,隔离主机永远不会知道它并将继续接收请求。

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

Ignacio Quijas Microsoft Biztalk服务器专家