Appendix A, Comparing Host Clustering to Other Types of Clustering

Host clustering is different from other types of clustering. The other types of clustering are guest clustering and standard clustering (clustering without virtualization).

Host Clustering Compared to Guest Clustering

Host clustering is different from guest clustering:

  • With host clustering, the physical host is the cluster node. If the host stops running, all of its guests are restarted on another physical host. Host clustering protects against failure of a physical host (hardware failure of a computer).
  • With guest clustering, a guest is a cluster node, and therefore the guest runs applications that are monitored in some way by the Cluster service, either because they are designed to work with clustering (cluster-aware) or because they are configured in the cluster as a Generic Service, Generic Application, or Generic Script resource. With guest clustering, if either the guest operating system or the clustered application fails, the guest can fail over to another guest, either on the same host or on a different host. Guest clustering protects against failure of a cluster-aware application on a guest as well as failure of an individual instance of a guest.

The following figure shows a simple host clustering configuration:

Simple Host Clustering Configuration

Virtual Server host cluster with 2 guests

The following figure shows a simple guest clustering configuration that uses only one physical host:

Simple Guest Clustering Configuration on One Host

Virtual Server guest cluster with 1 guest

Although the preceding diagram shows guest clustering on only one physical host, guest clustering can be configured to use multiple physical host computers. However, the variety of possibilities for guest clustering are beyond the scope of this document.

Host Clustering Compared to Standard Clustering

Host clustering is different from standard clustering (without virtualization). Standard clustering often uses an application designed for clustering (sometimes called a cluster-aware application). This subsection compares host clustering to clustering with a cluster-aware application.

With host clustering, when a physical host stops running, all of its guests are restarted on another physical host. This is possible because each of the guests is configured as a clustered resource group, and inside each resource group, the script Havm.vbs is configured as a Generic Script resource. This Generic Script resource has the effect of making the guest itself like a cluster-aware application, with the Cluster service providing health monitoring and automatic recovery for the guest.

However, it is important to note that with host clustering, an application running within a guest is not monitored by the Cluster service. If you use host clustering, you must find a different way to respond to application problems, such as by monitoring the application itself.

In contrast, on a cluster without virtualization, if a cluster-aware application fails, automatic checks done by the clustering software will usually discover the application failure, and the cluster will respond. The cluster response is configurable, so that the application can be restarted a specified number of times and then failed over to another server, or failed over immediately without restarts.

Examples of Situations for Each Type of Clustering

The following table lists examples of situations in which each type of clustering is appropriate:

Example of a situation Type of clustering to use

Cluster-aware applications that all run on a single operating system: You have one or more cluster-aware applications that all run on one operating system, preferably a version no earlier than Windows Server 2003 with Service Pack 1.

Standard clustering (without virtualization).

Testing or demonstrations: You are creating tests or demonstrations that use Virtual Server 2005 R2 or server clusters or both. You might have only one physical server available for your tests or demonstrations.

Guest clustering.

Server consolidation: You have multiple servers that run a variety of operating systems and you want to consolidate. At the same time, you do not want all the services you provide to depend on a single physical server. Instead, you want to minimize client downtime even if that physical server goes down.

Host clustering. To increase availability, implement close monitoring of the applications as well, so that an administrator can respond quickly if an application fails.