Microsoft Clustering solutions
The most recent generation of Server Cluster are cost-effective to deploy and manage. Microsoft Windows Server 2003 meets the requirements most businesses have for continuity without putting pressure on staff or budget. Network Load Balancing clusters will scale applications allowing your requirements to start small and grow as needed. Factor in the savings from improved availability, the scalability benefits, the simplified management, and competitive total cost of ownership and Windows Server 2003 pays for itself.
Typically, Microsoft's clustering solution is implemented with a SAN, in an Active/Passive Configuration. Although it is possible to have an Active/Active cluster, it is not recommended due to memory fragmentation issues, especially with applications like SQL Server. A simple two node Active/Passive cluster configuration is used. All devices connected to the SAN have dual connections, eliminating a single point of failure. However, the SAN itself is potentially a single point of failure unless it, too, is configured for redundancy.
A Cluster Heartbeat on a dedicated network is used to monitor the health of all nodes in the cluster. The major advantage of using a cluster with a SAN is when you have more than two nodes in the cluster. MSCS does not limit the number of nodes you can place in the cluster. For example, you can have a four-node cluster with three active nodes and one passive node acting as a backup for the other three active nodes. Replication between the nodes is not an issue because all of the data resides on the SAN.
Neverfail Clustering Solution
With Neverfail all data changes are replicated from the Active node to the Passive node. Each node has its own copy of the data stored internally on the node. A Cluster Heartbeat on a dedicated network is used to monitor the health of the primary and secondary server just like MSCS.
This is an excellent solution for a geographically dispersed cluster, because the data replication can take place over a WAN, automatically replicating changes to a remote location.



