The RGM handles three major kinds of interrelated objects: resource types, resources, and resource groups. One way to introduce these objects is by means of an example, as follows.
You implement a resource type, ha-oracle, that makes an existing Oracle DBMS application highly available. An end user defines separate databases for marketing, engineering, and finance, each of which is a resource of type ha-oracle. The cluster administrator places these resources in separate resource groups so that they can run on different nodes and fail over independently. You create a second resource type, ha-calendar, to implement a highly available calendar server that requires an Oracle database. The cluster administrator places the resource for the finance calendar into the same resource group as the finance database resource. The cluster administrator does so to ensure that both resources run on the same node and fail over together.
A software component to be run in the cluster
Control programs that are used as callback methods by the RGM to manage the software component as a cluster resource
A set of properties that form part of the static configuration for the software component on the cluster
The RGM uses resource type properties to manage resources of a particular type.
You specify the properties for the resource type and set property values in a resource type registration (RTR) file. The RTR file follows the format that is described in Setting Resource and Resource Type Properties and in the rt_reg(4) man page. See also Defining the Resource Type Registration File for a description of a sample RTR file.
Resource Type Properties provides a list of the resource type properties.
The cluster administrator installs and registers the resource type implementation and underlying application on a cluster. The registration procedure enters the information from the RTR file into the cluster configuration. The Oracle Solaris Cluster 4.3 Data Services Planning and Administration Guide describes the procedure for registering a data service.
A resource inherits the properties and values of its resource type. In addition, you can declare resource properties in the RTR file. Resource Properties contains a list of resource properties, each of which can take a different value for each resource of this type.
The cluster administrator can change the values of particular properties depending on how the properties are specified in the RTR file. For example, property definitions can specify a range of allowable values. Property definitions can also specify when the property is tunable: never, any time, at creation (when the resource is added to the cluster), or when the resource is disabled. Within these specifications, the cluster administrator can make changes to properties by using administration commands.
The cluster administrator can create many resources of the same type, with each resource having its own name and set of property values, so that more than one instance of the underlying application can run in the cluster. Each instantiation requires a unique name within the cluster.
Each resource must be configured in a resource group. The RGM brings all resources in a group online and offline together on the same node. When the RGM brings a resource group online or offline, it runs callback methods on the individual resources in the group.
The nodes where a resource group is currently online are called its primaries or primary nodes. A resource group is mastered by each of its primaries. Each resource group has an associated Nodelist property that identifies all potential primaries or masters of the resource group. The cluster administrator sets the Nodelist property, which otherwise includes all cluster nodes by default.
A resource group also has a set of properties. These properties include configuration properties that can be set by the cluster administrator and dynamic properties, set by the RGM, that reflect the active state of the resource group.
The RGM defines two types of resource groups: failover and scalable. A failover resource group can be online on only one node at any time. A scalable resource group can be online on multiple nodes simultaneously. The RGM provides a set of properties to support the creation of each type of resource group. See Transferring a Data Service to a Cluster and Implementing Callback Methods for details about these properties.
Resource Group Properties contains a list of resource group properties.