Resource Types

Cluster resources are organized by type. Resource types are associated with a set of control codes. The control codes describe operations that all resource types can perform, such as returning or updating property values. To invoke a particular operation, applications call the Cluster API function ClusterResourceTypeControl and pass the control code that represents the specific operation.

Resource types are also associated with a set of properties, or attributes. There are common properties, or attributes that apply to all resource types, and private properties, or attributes that apply only to resources of a particular type. Only some resource types define private properties.

Cluster Server defines several types of resources and provides resource DLLs to manage those types. Third-party developers are encouraged to create new types to fit the specific needs of their cluster-aware applications and services. By creating a new resource type, a developer can have more control over how Cluster Server manages his or her application or service.

The following types of resources are defined by Cluster Server:

The Distributed Transaction Coordinator (DTC) resource type supports the Distributed Transaction Coordinator, Microsoft's transaction manager. Every DTC resource has a required dependency on both a Network Name resource and a storage class device.

There can only be one DTC resource residing on each node. There are no private properties associated with the DTC resource type.

The Generic Application resource type is used to provide basic management of cluster-unaware applications. The Generic Application resource type can also be used to manage cluster-aware applications that are not associated with custom resource types. Generic Application resources have very crude failure detection and are taken offline by terminating the process. To query for failure, the resource DLL merely determines whether the process still exists. Generic Application resources maintain several private properties such as the command line for running the application and a reference directory.

The Generic Service resource type manages Microsoft® Windows NT® services as cluster resources. Similar to the Generic Application resource type, the Generic Service resource type provides only the most basic functionality. For example, the failure of a Generic Service resource is determined by a query of the Microsoft Windows NT Service Controller. If the service is running, it is presumed to be online. To provide greater functionality, a custom resource type should be defined. Generic Service resources maintain three private properties: a set of startup parameters, the name of the service, and a value that affects the name of the node on which the service is running.

The Physical Disk resource type describes a shared disk connected to two or more nodes in a cluster. In a typical cluster, the Physical Disk is included as a dependency for resources of various other types. Physical Disk resources are the only type of resource defined by Cluster Server that can operate as a cluster's quorum resource. Physical Disks maintain two private properties: the disk signature and a drive designator. These properties are used to identify the resource. Only one property is required; a Physical Disk resource must set either the disk signature or the drive designator.

The Print Spooler resource type describes a network printer that applications access using a network IP address rather than an individual name. Every group can have only a single Print Spooler resource. Print Spooler resources maintain two private properties: a default spool directory and a time-out value.

The File Share resource type is used to manage a file share that applications can access using a network path. File Share resources maintain several private properties, some that are required and some that are optional. The required properties include a share name and the path to the resource.

The IP Address resource type is used to manage Internet Protocol (IP) network addresses. When an IP Address resource is included in a group with a Network Name resource, the group can be accessed by network clients as a virtual server. To configure an IP Address resource, administrators provide values for its private properties. An IP Address resource's private properties consist of the address, subnet mask, and network name.

The IIS Virtual Root resource type manages Microsoft® Internet Information Server (IIS) virtual roots that support the WWW, FTP, and GOPHER services. IIS Virtual Root resources are closely tied to other Cluster Server resources, namely IP Address resources, Network Name resources, and Physical Disk resources. The private properties of the IIS Virtual Root resource type include the physical location of the resource, security information, an alias for client access, and the name of the related Web service.

The Message Queue resource supports the Microsoft® Message Queue Server (MSMQ). This resource depends on a Network Name resource and a Distributed Transaction Coordinator (DTC) resource. Only one Message Queue resource can be running on a node at any point in time. Message Queue resources do not maintain any private properties.

The Network Name resource type is used to provide an alternate computer name for an entity that exists on a network. When included in a group with an IP Address resource, a Network Name resource provides an identity to the group, allowing it to be accessed by network clients as a virtual server. Network Name resources maintain one private property: the name of the resource.

The Time Service resource type ensures that time remains synchronized across all nodes within a cluster. The Time Service is a special resource type unlike the other types. One node is selected automatically to host the Time Service resource and to provide the correct time to the other nodes in the cluster. The selected node is posted in the cluster database. If an alternate node must be used, the Time Service is stopped and restarted so that time is kept consistent across all members of the cluster. The Time Service does not maintain any private properties.