Using Clusters to Increase Availability and Scalability
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
Different types of clusters provide different benefits. Network Load Balancing clusters are designed to provide scalability because you can add nodes as your workload increases. Server clusters increase availability of stateful applications, and they can also allow you to consolidate servers and save on hardware costs. Figure 6.6 shows the steps for planning cluster deployment.
Figure 6.6 Planning Cluster Deployment
Scaling by Adding Servers
Scaling by adding servers to a Network Load Balancing cluster is also known as scaling out. In Windows Server 2003, Network Load Balancing clusters can contain up to 32 nodes. Windows Server 2003, Enterprise Edition, and Windows Server 2003, Datacenter Edition, support server clusters containing up to eight nodes. For this reason, it is recommended that you use Network Load Balancing rather than server clusters to increase scalability. Additional servers allow you to meet increased demand on your Network Load Balancing clusters; however, not every organization has the budget to readily add hardware.
Table 6.2 summarizes the number of servers a cluster can contain, by cluster type and operating system.
Table 6.2 Maximum Number of Nodes in a Cluster
Operating System | Network Load Balancing | Component Load Balancing* | Server Cluster |
---|---|---|---|
Microsoft® Windows® 2000 Advanced Server |
32 |
12 |
2 |
Microsoft® Windows® 2000 Datacenter Server |
32 |
12 |
4 |
Windows Server 2003, Standard Edition |
32 |
12 |
N/A |
Windows Server 2003, Enterprise Edition |
32 |
12 |
8 |
Windows Server 2003, Datacenter Edition |
32 |
12 |
8 |
* Component Load Balancing is not included with the Windows Server 2003 operating system and runs only on Windows Application Center 2000. You can use CLB clusters with Windows Server 2003, provided that you use Windows Application Center 2000 Service Pack 2 or later. For complete information about Component Load Balancing, see your Windows Application Center 2000 documentation.
Network Load Balancing Clusters also run on Windows Server 2003, Web Edition; the maximum number of nodes is 32.
Scaling by Adding CPUs and RAM
Your options for adding CPUs and RAM, also known as scaling up, depend on the server operating system. This is a less expensive scaling option than adding nodes, but you are limited by the capacity of the operating system.
Table 6.3 illustrates the CPU and RAM capacity in Windows 2000 and Windows Server 2003.
Table 6.3 Maximum Number of Processors and RAM
Operating System | Number of Processors | Maximum RAM |
---|---|---|
Windows 2000 Advanced Server |
8 |
8 GB |
Windows 2000 Datacenter Server |
32 |
64 GB |
Windows Server 2003, Enterprise Edition |
8 |
32 GB |
Windows Server 2003, Datacenter Edition |
32 |
64 GB |
Availability and Server Consolidation with Server Clusters
While Network Load Balancing can meet your scaling needs, server clusters provide high availability for hosted applications by reducing the interruption of service due to unplanned outages and hardware failure.
Increasing the number of nodes in a server cluster proportionally increases the availability of the services and applications running on that server cluster. This is because spreading the workload over a greater number of nodes allows each node to run at a lower capacity. When failover occurs in a server cluster with many nodes, there are more servers available to accept the workload of the failed node. Similarly, when a server running at low capacity takes on additional processing after a failover, the failover is less likely to result in a decline in performance.
The hardware required for server cluster nodes is expensive, however. In some cases, it might be possible for you to save money on hardware by consolidating the number of servers or nodes you have deployed in your server clusters. You can still provide high availability of your mission-critical applications after server consolidation, but be aware that combining clusters to reduce the total number of nodes also reduces availability. This is a tradeoff that your organization should evaluate.
Figure 6.7 shows two clusters before consolidation, where two separate two-node clusters, each with one active and one passive node, provide service for a group of clients.
Figure 6.7 Two Server Clusters Before Consolidation
Two clusters, each dedicated to a separate application, generally have higher availability than one cluster hosting both applications. This is depends on, among other factors, the available capacity of each server, other programs that may be running on the servers, and the hosted applications themselves. However, if a potential loss in availability is acceptable to your organization, you can consolidate servers.
Figure 6.8 shows what the clusters in Figure 6.7 would look like if they were consolidated into a single three-node cluster. There is a potential loss in availability because in the event of a failure, both active clusters will fail over to the same passive node, whereas before consolidation, each active node had a dedicated passive node. In this example, if both active nodes were to fail at the same time, the single passive node might not have the capacity to take on the workloads of both nodes simultaneously. Your organization must consider such factors as the likelihood of multiple failures in the server cluster, the importance of keeping the applications in this server cluster available, and if potential loss in services is worth the money saved by server consolidation.
Figure 6.8 Consolidated Server Cluster