Appendix C: Choosing a Cluster Technology for IIS 6.0

Applies To: Windows Server 2003, Windows Server 2003 with SP1

Windows Server 2003 supports three different cluster technologies: Server cluster, which is the Windows Server 2003 name for the Microsoft technology first made available as Microsoft Cluster Server (MSCS) in Windows NT Server 4.0, Enterprise Edition; Network Load Balancing (NLB); and Component Load Balancing (CLB). These Microsoft clustering technologies can be key ingredients in improving availability, reliability and scalability. The following table compares the purposes and uses of the three cluster technologies.

Table 1.1 Cluster Technologies Supported in Windows Server 2003

Cluster technology Purpose Suitable applications

Server cluster

Provide high availability by making application software and data available on several servers linked together in a cluster configuration. If one server stops functioning, a process called failover automatically shifts the workload of the failed server to another server in the cluster. The failover process is designed to ensure continuous availability of critical applications and data.

  • Stateful applications have long-running in-memory state, or they have large, frequently updated data states. A database such as Microsoft® SQL Server™ is an example of a stateful application.

NLB

  • Address bottlenecks caused by front-end Web services and Web servers.

  • Support load balancing of Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and Generic Routing Encapsulation (GRE) traffic requests.

Stateless applications do not have long-running in-memory state. A stateless application treats each client request as an independent operation, and therefore it can load-balance each request independently. Stateless applications often have read-only data or data that changes infrequently. Web front-end servers, virtual private networks (VPNs), and File Transfer Protocol (FTP) servers typically use NLB. Microsoft recommends using NLB with IIS 6.0.

CLB

Perform dynamic load balancing, over multiple nodes, of middle-tier application components that use COM+.

Applications that use COM+ components.

Limitations of clusters

While a well-designed solution can guard against application failure, system failure and site failure, cluster technologies do have the following limitations:

  • Cluster technologies depend on compatible applications and services to respond appropriately when failure occurs.

  • Clusters can be designed to handle failure, but they are not meant to protect user data. The cluster by itself does not guard against loss of a user's work. Typically, the recovery of lost work is handled by the application software; the application software must be designed to recover the user's work, or it must be designed in such a way that the user's session state can be maintained if a failure occurs.

  • Cluster technology cannot protect against failures caused by viruses, software corruption or human error. To protect against these types of problems, organizations need solid data protection and recovery plans.

For more information on cluster technologies available in Window Server 2003, see An Overview of Windows Clustering Technologies: Server Clusters and Network Load Balancing.