Clustering Receiving Hosts
BizTalk Server 2006 provides functionality that allows you to configure a BizTalk Host as a clustered resource within a Windows Server cluster group. Host cluster support is provided to support high availability for integrated BizTalk receive adapters that should not be run in multiple host instances simultaneously, such as the FTP receive handler or, under certain circumstances, the POP3 receive handler. Host cluster support is also provided to ensure transactional consistency for messages sent or received by the MSMQ adapter in scenarios that require that the MSMQ service is clustered.
|Host clustering is available only with BizTalk Server 2006 Enterprise Edition.|
|Before you can cluster a BizTalk Host you must have configured at least two BizTalk Server computers in a BizTalk group as members of a Windows Server cluster. For more information about configuring a Windows Server cluster, see Windows Server Help.|
BizTalk Host cluster support is available to provide high availability for five of the integrated BizTalk adapters: the FTP adapter, the MSMQ adapter, the POP3 adapter, the SQL adapter, and the SAP adapter. Host cluster support is also provided so that there is high availability for running a single instance of an adapter for purposes of ordered delivery.
All of the BizTalk adapter handlers with the exception of the Base EDI adapter can be run in a clustered host, but there is no benefit from running adapter handlers in a clustered host except as described below. If your processing requirements do not include any of the scenarios described below then you should not run adapter handlers in a clustered host. For detailed steps of setting up BizTalk Server clusters, see "Improving Fault Tolerance in BizTalk Server 2006 by Using a Windows Server Cluster" at http://go.microsoft.com/fwlink/?linkid=71367.
|The Base EDI adapter handlers must not be run in a clustered BizTalk Host. The Base EDI adapter is deprecated in BizTalk Server 2006 R2.|
For most of the BizTalk integrated adapters, high availability can be achieved by creating multiple adapter handlers to run on BizTalk Host instances on different BizTalk Server computers within a BizTalk group. FTP adapter receive handlers should not, however, be configured to run in multiple BizTalk Host instances simultaneously. This recommendation is made because the FTP receive adapter uses the FTP protocol to retrieve files from the target system and the FTP protocol does not lock files to ensure that multiple copies of the same file are not retrieved simultaneously when running multiple instances of the FTP receive adapter.
To provide high availability for the FTP receive adapter you should configure the FTP receive adapter to run in a BizTalk Host instance that has been clustered.
To ensure high availability for the MSMQ adapter and to ensure transactional consistency for messages sent or received by the MSMQ adapter you should do the following:
Configure Microsoft Message Queuing (MSMQ) as a clustered resource in a Windows Server cluster group on your BizTalk Server computers.
Add the clustered MSMQ service to the list of resource dependencies for the clustered BizTalk Host. This will ensure that the clustered BizTalk application service will always start after the clustered MSMQ service in failover scenarios.
Configure the MSMQ adapter send and receive handlers in a BizTalk Host instance that has been configured as a cluster resource in the same cluster group as the clustered MSMQ resource.
These steps are recommended for the following reasons:
MSMQ adapter receive handler - MSMQ does not support remote transactional reads; only local transactional reads are supported. The MSMQ adapter receive handler must run in a host instance that is local to the clustered MSMQ service in order to complete local transactional reads with the MSMQ adapter.
Important The MSMQ adapter receive handler requires that a local non-clustered instance of the Message Queuing service is running on the same computer that the receive handler host instance is running on. For more information, see "Known Issues with the MSMQ Adapter" at http://go.microsoft.com/fwlink/?linkid=104185.
MSMQ adapter send handler - To ensure the consistency of transactional sends made by the MSMQ adapter, the outgoing queue used by the MSMQ adapter send handler should be highly available so that if the MSMQ service for the outgoing queue fails it can be resumed. Configuring a clustered MSMQ resource and the MSMQ adapter handlers in a cluster group will ensure that the outgoing queue used by the MSMQ adapter send handler will be highly available. This will mitigate the possibility of message loss in the event that the MSMQ service fails.
The POP3 adapter receive handler does not need to be configured to run in a clustered BizTalk Host unless the POP3 server that the adapter is reading from allows multiple concurrent connections to be made to the same mailbox. If the POP3 server that the POP3 adapter is connected to permits multiple concurrent connections to its mailboxes, then you must ensure high availability for the POP3 adapter by configuring a single POP3 adapter receive handler to run in a BizTalk Host instance that has been clustered. This recommendation is made to ensure that multiple copies of the same e-mail message are not retrieved simultaneously when running multiple instances of the POP3 receive adapter.
The MSMQ and MQSeries integrated adapters provide the ability to submit documents to BizTalk Server in the order that they were received. Correct implementation of this functionality requires that only a single instance of these receive adapters be running at any given time. To provide high availability for a single instance of these adapters, they should be configured to run in a clustered BizTalk Host instance.