In the Daily Drill Down “Understanding Clustering Options for Windows 2000,” I explored server-clustering options for Windows 2000 Advanced Server and Datacenter Server. Both platforms include Network Load Balancing and Microsoft Cluster Service, which allow you to create two-server clusters under Advanced Server and four-server clusters under Datacenter Server. Microsoft offers an add-on clustering application suite called Application Center 2000 that provides enhanced manageability, support for Windows 2000 Server, and additional benefits not included with MSCS. In this Daily Feature, I’ll give you a look at Application Center 2000 and how it fits into Microsoft’s clustering services.
Overview of Application Center 2000
Working in conjunction with Network Load Balancing, Microsoft Cluster Service (MSCS) lets you build server clusters to provide application failover and static application load balancing. You might use MSCS to create a file-server cluster, a print-server cluster, or a cluster for applications such as Exchange Server or SQL Server. MSCS relies on shared storage between the nodes (servers) in the cluster to provide common application-data storage and cluster-state storage. Component Load Balancing (CLB) is also included with Windows 2000 Advanced Server and Datacenter Server and allows you to build clusters for balancing COM+ applications. Unlike MSCS, CLB does not require shared storage.
Application Center 2000, which Microsoft lists for about $3,000 per node, performs a somewhat different function from MSCS and CLB. Like CLB, Application Center does not require shared storage. It is geared primarily toward creating and managing Web farms—groups of servers providing a common Web resource such as a Web or an FTP site. If you manage your own Web site for e-commerce, providing product information to customers, offering technical support services, and related functions, the more important those functions are to your core business, the more likely you are to benefit from clustering, in general, and Application Center, in particular. You can use Application Center to deploy multiple servers that present a single presence to the Web for your customers. If your only server goes down, you could be dead in the water. With a cluster, however, one or more nodes can go down with little or no effect on service availability. In most cases, your customers and users will never know a server failed because the load is almost immediately distributed to other nodes in the cluster.
Application Center relies on NLB for IP load balancing under Windows 2000 Advanced Server and Datacenter Server but requires a third-party load balancing service such as Cisco Systems’ LocalDirector, F5 Networks’ BIG-IP, or Alteon WebSystems’ ACEdirector to run under Windows 2000 Server. You can also use Application Center to create and manage clusters for COM+ load balancing and routing.
One of the primary benefits of Application Center is its ease of administration. The Application Center console, which is included with the product, integrates the majority of the management tasks in a single interface. This includes IIS configuration, monitoring, and component services. You can create a new cluster, add and remove nodes from the cluster, brings nodes online and offline, and perform related administration tasks with relative ease thanks to several wizards. Of particular interest to administrators currently using NLB by itself or in conjunction with MSCS is the fact that Application Center integrates NLB configuration and management within the Application Center console. Many of the NLB configuration tasks you must perform manually with MSCS are accomplished automatically with Application Center through its wizards.
Because the Application Center console comprises a group of standard MMC console snap-ins, you can tailor your cluster control console to your needs. You might also integrate DNS, DHCP, and other administrative functions under a custom Application Center console, as well as the standard cluster snap-ins, to enable you to manage all Web farm- and IP-related properties from a single interface.
Deploying and synchronizing applications and content
Deploying Web applications and content is a frequent task for any busy Web site, and deploying and synchronizing that data can be a major undertaking. Application Center eases the burden on administrators by providing a wizard-based interface for defining new applications and deploying them in a synchronized manner to all nodes in the cluster. You use the New Deploy wizard to specify the nodes on which an application should be deployed, what content should be included, how to handle file and directory permissions, and all other aspects of the deployment. For example, you would use the New Deployment wizard to define a virtual Web server and deploy it across the cluster.
When you define an application, you can specify several resource types, including COM+ applications, data source names (DSNs), file system paths, registry keys, Web sites, and virtual directories. Because you can specify multiple resources for an application, you can deploy multiple Web services—such as multiple Web sites—at one time.
Deploying the content is just one aspect of providing a unified presence for a given Web service. You also need to ensure that the content you deploy across the cluster remains synchronized. When you deploy new content, for example, you probably want that content to be broadcast to all nodes in the cluster as quickly as possible. In some cases, however, you might want to deploy the content only to specific nodes initially for testing or leave the content on the cluster controller (first node in the cluster) for a period of time for staging and testing. Application Center synchronizes content across the cluster automatically when you add new content, or every 60 minutes. You can modify the synchronization period or disable automatic synchronization if you want to replicate specific applications to certain nodes.
Monitoring is a key task that Web administrators need to perform to ensure that their Web resources remain available and to provide the performance required by the client load at any given point. Closely monitoring performance, for example, will help you recognize when you need to add additional nodes to the cluster for improved load balancing to service peak demand.
In addition to integrating the Event Viewer in the Application Center console to help monitor events generated by the cluster and Web services, Application Center integrates the Performance snap-in to help monitor node and overall cluster performance. For example, among other properties, you might monitor the number of requests per second to the cluster and use that information to determine whether your group of servers is able to handle the load. Or perhaps you would monitor CPU utilization, disk space, and other properties on a per-node basis to determine how individual nodes are performing in the cluster and when they might need to be upgraded or replaced. Application Center provides several default data collectors to help you monitor cluster and node health. You can easily add your own to monitor at the cluster and local levels.
Digging deeper into clustering
You can get a taste for load balancing and clustering without Application Center if you have either Windows 2000 Advanced Server or Datacenter Server. If you’re just beginning to consider and evaluate clustering options, spend some time deploying a small test cluster with MSCS. You don’t even need a true shared storage device if you intend to create a cluster of only one node to explore node and resource configuration—you can use any drive separate from your operating-system drive as the shared storage device. In fact, you don’t need a separate server at all. You can install an application such as VMware and create a virtual machine containing Windows 2000 Advanced Server on a Windows 2000 Professional workstation, setting it up as a one-node cluster for experimentation.
Application Center supports several different types of clusters, including:
- General Clusters, which are a group of servers that work together to process client requests. They can include servers that service Web requests, database requests, e-mail services, and file and print services.
- COM+ Application Clusters, which process COM+ components exclusively. When a Web server makes a call to a COM+ object, Application Center spreads the request among all of the servers in the cluster.
- COM+ Routing Clusters, which are fairly rare, but use CLB to route requests for COM+ components from general clusters to COM+ application clusters.
Just about any computer strong enough to run Windows 2000 Server efficiently will be able to support Application Center. On your server, Microsoft recommends the following minimum configuration:
- 400-MHz, Pentium-compatible CPU
- 256 MB of RAM
- 100 MB of available hard disk space to install services, with additional free space for databases
- 800x600 video resolution
- Two network cards for Network Load Balancing
- Windows 2000 Server or Advanced Server running Service Pack 1 or later
Hardware limitations aren’t as stringent for clients. As a matter of fact, any client that runs Windows 2000 Professional shouldn’t have a problem, even though computers running Windows 2000 Server can also act as clients. For clients, Microsoft recommends the following configuration:
- 266-MHz, Pentium-compatible CPU
- 128 MB of RAM
- 20 MB in available hard disk space
- 800x600 video resolution
- One network card
- Windows 2000 Professional, Server, or Advanced Server running Service Pack 1 or later
To learn more about Application Center, visit the Microsoft Application Center Web site. You’ll find detailed information about Application Center’s requirements, capabilities, costs, and other issues. You can also download a 120-day evaluation copy. You’ll need to register with Microsoft and have a Microsoft Passport before downloading this test version, though.