Clustering Options for Windows 2000
By Mike Kosacek and Edward Yardumian (February 2002 Special Edition)
Windows 2000 clustering components—Cluster service, Network Load Balancing, and Component Load Balancing—can be used to create highly available, scalable environments for many types of applications. These components can be combined with Dell PowerEdge servers, Dell PowerVault storage, a high-speed, low-latency interconnect such as the Emulex cLAN adapter, and a management solution such as Dell OpenManage Cluster Assistant with ClusterX to build cluster solutions that meet the scalability and availability requirements of high-end, enterprise-class applications.
With Windows® 2000, Microsoft expands its cluster options to achieve both availability and scalability. This article discusses four different clustering and load-balancing mechanisms within the Windows 2000 server product line (see Figure 1 ).
Figure 1. Windows 2000 Server family
On the surface, it may appear that these are different options for doing the same function, but that is far from true. These complementary solutions can be used separately to provide high availability and load balancing for specific types of applications, or they can be combined to provide true application solutions. Dell fully supports building scalable solutions by interconnecting and managing multitier and multicluster configurations using industry-standard components that together provide scalability and high availability for an application.
Windows 2000 Advanced Server Cluster service: two node
Microsoft® Windows 2000 Advanced Server includes Windows 2000 Cluster service. Cluster service implements a two-node failover cluster, as illustrated in Figure 2 , that delivers high availability for applications and services. Both nodes connect to a common SCSI or Fibre Channel storage system.
Figure 2. Cluster service two-node cluster
As with Windows NT® Server 4.0 Enterprise Edition clusters, both nodes can be configured to host resources (active/active), or one node can be simply a backup, always waiting for the first node to fail (active/passive). Windows 2000 Cluster service now supports plug-and-play for networking and disks and has greater support for core Windows NT applications such as Dynamic Host Configuration Protocol (DHCP), Windows Internet Naming Service (WINS), and Distributed File System (DFS) root.
Windows 2000 Cluster service is positioned for creating highly available, dynamic, transactional applications:
- Databases such as Microsoft SQL Server, Oracle, and IBM® DB2®
- Groupware such as Microsoft Exchange® and Lotus® DominoTM
- Enterprise resource planning (ERP) applications such as SAP and Baan
- File sharing, print queues, and Web servers
|
Microsoft Exchange 2000, SQL Server 2000, and Internet Information Services (IIS) 5.0 are among the new cluster-aware applications written specifically for Windows 2000. Figure 3 shows a comparison of application uses for Windows Cluster service and Network Load Balancing (NLB).
Figure 3. Application uses for Windows Cluster service and Network Load Balancing
Like Microsoft Cluster Server (MSCS) 1.0, the Windows 2000 Cluster service is somewhat hardware dependent (the storage system must be able to support multiple systems attached to it) and has a separate Microsoft certification specifically for Windows 2000. Each server-storage configuration must be thoroughly tested on Windows 2000 and pass a vigorous certification process before Microsoft will list it on the Hardware Compatibility List (HCL). See www.microsoft.com/hwtest.
Each configuration—a specific server with a specific RAID (redundant array of independent disks) controller or Fibre Channel host bus adapter (HBA) and storage-RAID array—must be certified independently; all must be recertified when changes occur in key components, such as a server BIOS, storage system driver, or firmware. With the release of Windows 2000 Advanced Server, Dell announced support for two-node, high-availability clusters with SCSI or Fibre Channel storage (as illustrated in Figure 2). Various combinations of servers, storage, and cluster interconnects have been thoroughly tested and certified and are posted on the Microsoft HCL (www.microsoft.com/hcl).
Windows 2000 Datacentre Server Multinode Cluster service: four node
Windows 2000 Datacentre Server includes support for four-node clusters using Microsoft Cluster service. The Windows Multinode Cluster service is similar to the two-node Cluster service in Windows 2000 Advanced Server. A failover cluster providing high availability for applications and data, the Windows 2000 Datacentre Server's Multinode Cluster service will enable an application or service to fail over from its server to any of three other servers.
To build a multinode cluster, up to four nodes connect to a common Fibre Channel, shared storage array (SCSI-attached storage is not supported), as shown in Figure 4 . Multinode clusters offer numerous options for application configurations. Example configurations include all nodes running one or more applications (for example, active/active/active/active) and N-1 nodes running one or more applications and one node serving as the failover site for the N nodes (for example, active/active/active/passive).
Figure 4. Possible Multinode Cluster service four-node configuration
Application support
Windows 2000 Datacentre Server Cluster service supports the same applications as the two-node service. Applications such as file sharing and Web serving can fail over to any of the other cluster nodes.
For applications written to specifically address a primary node and a secondary node, such as SQL Server 7.0 Enterprise Edition and Exchange 5.5 Enterprise Edition, the application will not fail over to the third and fourth server (if they are installed). The server (or servers) running SQL Server, however, can be the first, second, or third failover location for another server's application. SQL Server 2000 and Exchange 2000 address this requirement by permitting up to four nodes to be active and available for the failover of another node.
Implementation
Microsoft requires a separate, even more extensive certification process for Windows 2000 Datacentre Server multinode clusters. Microsoft performs the initial test process (subsequent testing can now be performed by Dell), which involves many test cycles, often including one to two weeks of strenuous activity. Dell currently offers the PowerEdge® Cluster FE100/FL100 Datacenter cluster configuration, which supports four-node, high-availability clusters with Fibre Channel storage (see Figure 4 ).
Windows 2000 Network Load Balancing
In 1999, Microsoft purchased Valence Research and its Convoy Cluster product. A few months later, Microsoft repackaged the product and released it as a free download for licensed users of Windows NT Server 4.0 Enterprise Edition. The Windows NT Load Balancing Service (WLBS) is a load-balancing cluster capable of distributing IP traffic to a group of servers. It is a highly scalable cluster supporting up to 32 servers.
Renamed Network Load Balancing for Windows 2000, NLB acts as a front-end cluster for clients, distributing incoming IP traffic across all members. This fully distributed, software-based load balancing solution for IP is similar to hardware-based products from Cisco and F5 (including the Dell® PowerApp.BIG-IP appliance servers). It enables incremental scalability and outstanding availability for e-commerce Web sites. Client systems see a single-system image, although their requests are distributed among up to 32 servers.
According to Microsoft, "When a computer fails or goes offline for maintenance, Network Load Balancing automatically reconfigures the cluster to direct client requests to other servers, thereby maintaining continuous availability of network services." See Figure 5 for a possible configuration.
Figure 5. Possible NLB cluster configuration
Enhancements over Windows NT
NLB for Windows 2000 is easier to set up and offers better integration with the operating system than WLBS (for Windows NT Server 4.0 Enterprise Edition). WLBS had to be downloaded and installed separately and then configured; only then could its network bindings be modified.
With Windows 2000 Advanced Server and Windows 2000 Datacentre Server, NLB software is always installed and appears as an option on the Network Properties tab. By default, the option is disabled, but NLB can be easily enabled from the Network Properties dialog (see Figure 6 ). The bindings configuration step has been removed, and the online help is now integrated with the help for the operating system and other cluster offerings.
Figure 6. Windows 2000 Adapter Properties page
Application support
NLB is most appropriate for applications in which the data is static and can be mirrored on other servers (static Web page servers, read-only file sharing, video streaming, and proxy servers) to load balance the incoming requests. NLB also can be used for multitier, multiple-cluster configurations in which the clients access a mission-critical application through a scalable Web front end that uses Cluster service on the back end to protect the dynamic, transactional data.
Microsoft supports Terminal Services (TS) in Windows 2000 using NLB for TS server load balancing under Windows 2000. Note that NLB is intended for IP load balancing and is not appropriate for applications like Exchange or SQL Server. NLB is complementary to Windows 2000 Cluster service and should not be run on nodes running Cluster service. See Figure 3 for a comparison of applications for Windows Cluster service and NLB.
Implementation
NLB does not require specialized hardware or separate Microsoft certification. Dell's departmental and workgroup servers (such as the PowerEdge 1550, 2500, 2550, and 4400) make excellent choices for Web server farms. For applications that require more horsepower and can utilize NLB, such as Terminal Services, more powerful, rack-dense servers such as the PowerEdge 6450 and 8450 models are ideal.

Windows 2000 COM+ Component Load Balancing
Component Load Balancing (CLB) is a dynamic load-balancing method for Component Object Model (COM)+ application components. This service, capable of scaling to 16 nodes, is integrated in and managed by Windows Application Center 2000.
In addition to enabling distributed load balancing for COM+ applications, Application Center 2000 can help administer and deploy multitier Web configurations using IP load- balancing software, such as NLB (see Figure 7 ) with CLB. Microsoft moved CLB, originally slated for all versions of the Windows 2000 Server family, to Application Center 2000 to offer a consolidated management interface and better load-balancing capabilities.
Figure 7. Web farm using NLB and CLB clustering that is managed, monitored, and replicated by Application Center 2000
CLB helps to load balance applications developed using Microsoft's COM technologies. A COM+ application component is installed on the cluster members through the management console, which replicates the components to the necessary servers.
Application support
CLB is intended for applications developed using the COM+ architecture. The COM+ architecture is an extension of the COM/DCOM model and technologies such as Distributed Transaction Coordinator, Transaction Server, and Message Queuing Server. CLB is not a load-balancing mechanism for applications like Microsoft SQL Server and Oracle.
For example, a COM+ application could be developed to perform order validation for an e-commerce Web site. When a user places a new order, the data collected from the Web site is passed to one of the load-balanced CLB servers to process the COM+ application. The COM+ application fulfills its responsibilities, possibly using data stored in a separate database server. It may either return an error message to the Web site (if an item the customer ordered is out of stock or the customer's credit card is over the limit) or pass the information to the order database and return a success notification to the customer.
Implementation
CLB does not require specialized hardware. Because each CLB configuration is application specific, the number of possible hardware configurations may be almost unlimited. In general, these systems will require substantial processing power because much of the business logic of typical e-commerce applications and Web farms will be running on these systems.
Cluster solutions for enterprise-class applications
With Windows 2000, Microsoft has expanded its cluster options to achieve enhanced availability and scalability. Windows 2000 clustering components—Cluster service, NLB, and CLB—can create highly available, scalable environments for many types of applications.
When used with Dell PowerEdge servers, Dell PowerVault® storage, a high-speed, low-latency interconnect (such as the Emulex® cLANTM adapter), and a management solution like Dell OpenManageTM Cluster Assistant with ClusterX, these components can be used to build cluster solutions that meet the scalability and availability requirements of high-end, enterprise-class applications.
Mike Kosacek (michael_kosacek@dell.com) is a senior member of the Cluster Development Group at Dell. As the lead engineer on several Dell products, Mike's responsibilities include developing, testing, and certifying cluster solutions for the Dell server and storage product lines. Mike has a degree in Electronics Technology and is a Microsoft Certified Systems Engineer (MCSE).
Edward Yardumian (edward_yardumian@dell.com) manages the Operating Systems Engineering team in Dell's Enterprise Systems Group. Previously, Edward was a lead systems engineer for clustering and next-generation PowerEdge servers. His technology focus is in cluster computing and multitiered solutions.
For more information
For more information about clustering options, visit www.dell.com or www.microsoft.com