Sun Cluster Data Services Developer's Guide for Solaris OS

Appendix A Standard Properties

This appendix describes the standard resource type, resource group, and resource properties. This appendix also describes the resource property attributes that are available for changing system-defined properties and creating extension properties.

This appendix contains the following sections:

Resource Type Properties

The following information describes the resource type properties that are defined by Sun Cluster. The property values are categorized as follows (after Category):

Resource type properties cannot be updated by administrative utilities with the exception of Installed_nodes and RT_system, which cannot be declared in the RTR file and must be set by the administrator.

Property names are shown first, followed by a description.

API_version (integer)

The version of the resource management API that is used by this resource type implementation.

The following information summarizes the maximum API_version that is supported by each release of Sun Cluster.

Before and up to 3.1

2

3.1 10/03

3

3.1 4/04

4

3.1 9/04

5

Declaring a value for API_version that is greater than 2 in the RTR file prevents that resource type from being installed on a version of Sun Cluster that supports a lower maximum version. For example, if you declare API_version=5 for a resource type, that resource type cannot be installed on any version of Sun Cluster that was released before 3.1 9/04.

Category:

Optional

Default:

2

Tunable:

No

Boot (string)

An optional callback method: the path to the program that the RGM invokes on a node, which joins or rejoins the cluster when a resource of this type is already managed. This method is expected to do initialization actions for resources of this type that are similar to the Init method.

Category:

Conditional/Explicit

Default:

None

Tunable:

No

Failover (boolean)

TRUE indicates that resources of this type cannot be configured in any group that can be online on multiple nodes at once.

Category:

Optional

Default:

FALSE

Tunable:

No

Fini (string)

An optional callback method: the path to the program that the RGM invokes when a resource of this type is removed from RGM management.

Category:

Conditional/Explicit

Default:

None

Tunable:

No

Init (string)

An optional callback method: the path to the program that the RGM invokes when a resource of this type becomes managed by the RGM.

Category:

Conditional/Explicit

Default:

None

Tunable:

No

Init_nodes (enum)

The values can be RG_primaries (just the nodes that can master the resource) or RT_installed_nodes (all nodes on which the resource type is installed). Indicates the nodes on which the RGM is to call the Init, Fini, Boot, and Validate methods.

Category:

Optional

Default:

RG_primaries

Tunable:

No

Installed_nodes (string_array)

A list of the cluster node names on which the resource type is allowed to be run. The RGM automatically creates this property. The cluster administrator can set the value. You cannot declare this property in the RTR file.

Category:

Can be configured by the cluster administrator

Default:

All cluster nodes

Tunable:

Yes

Is_logical_hostname (boolean

TRUE indicates that this resource type is some version of the LogicalHostname resource type that manages failover Internet Protocol (IP) addresses.

Category:

Query-only

Default:

No default

Tunable:

No

Is_shared_address (boolean)

TRUE indicates that this resource type is some version of the SharedAddress resource type that manages failover Internet Protocol (IP) addresses.

Category:

Query-only

Default:

No default

Tunable:

No

Monitor_check (string)

An optional callback method: the path to the program that the RGM invokes before doing a monitor-requested failover of a resource of this type.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Monitor_start (string)

An optional callback method: the path to the program that the RGM invokes to start a fault monitor for a resource of this type.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Monitor_stop (string)

A callback method that is required if Monitor_start is set: the path to the program that the RGM invokes to stop a fault monitor for a resource of this type.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Pkglist (string_array)

An optional list of packages that are included in the resource type installation.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Postnet_stop (string)

An optional callback method: the path to the program that the RGM invokes after calling the Stop method of any network-address resources on which a resource of this type depends. After the network interfaces are configured down, this method must perform Stop actions.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Prenet_start (string)

An optional callback method: the path to the program that the RGM invokes before calling the Start method of any network-address resources on which a resource of this type depends. This method is expected to perform Start actions that must be performed before network interfaces are configured.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Resource_type (string)

The name of the resource type. To view the names of the currently registered resource types, use:

scrgadm -p

In Sun Cluster 3.1 and later releases, a resource type name includes the version, which is mandatory:

vendor_id.resource_type:version

The three components of the resource type name are properties that are specified in the RTR file as Vendor_id, Resource_type, and RT_version. The scrgadm command inserts the period (.) and colon (:) delimiters. The RT_version suffix of the resource type name is the same value as the RT_version property. To ensure that the Vendor_id is unique, the recommended approach is to use the stock symbol for the company creating the resource type. Resource type names that were created before Sun Cluster 3.1 continue to use the syntax:

vendor_id.resource_type

Category:

Required

Default:

Empty string

Tunable:

No

RT_basedir (string)

The directory path that is used to complete relative paths for callback methods. This path is expected to be set to the installation location for the resource type packages. The path must be a complete path, that is, the path must start with a forward slash (/). This property is not required if all the method path names are absolute.

Category:

Required unless all method path names are absolute

Default:

No default

Tunable:

No

RT_description (string)

A brief description of the resource type.

Category:

Conditional

Default:

Empty string

Tunable:

No

RT_system (boolean)

Indicates, when set to TRUE on a resource type, that the permitted scrgadm(1M) operations on that resource type are restricted. A resource type whose RT_system value is set to TRUE is called a system resource type. Editing the RT_system property itself is never restricted, regardless of the current value of RT_system.

Category:

Optional

Default:

FALSE

Tunable:

Yes

RT_version (string)

Starting in Sun Cluster 3.1, a required version string of this resource type implementation. The RT_version is the suffix component of the full resource type name. The RT_version property, which was optional in Sun Cluster 3.0, is mandatory in Sun Cluster 3.1 and later releases.

Category:

Optional/Explicit or Required

Default:

No default

Tunable:

No

Single_instance (boolean)

If TRUE, indicates that only one resource of this type can exist in the cluster. The RGM allows only one resource of this type to run cluster wide at one time.

Category:

Optional

Default:

FALSE

Tunable:

No

Start (string)

A callback method: the path to the program that the RGM invokes to start a resource of this type.

Category:

Required unless the RTR file declares a Prenet_start method

Default:

No default

Tunable:

No

Stop (string)

A callback method: the path to the program that the RGM invokes to stop a resource of this type.

Category:

Required unless the RTR file declares a Postnet_stop method

Default:

No default

Tunable:

No

Update (string)

An optional callback method: the path to the program that the RGM invokes when properties of a running resource of this type are changed.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Validate (string)

An optional callback method: the path to the program that will be invoked to check values for properties of resources of this type.

Category:

Conditional/Explicit

Default:

No default

Tunable:

No

Vendor_ID (string)

See the Resource_type property.

Category:

Conditional

Default:

No default

Tunable:

No

Resource Properties

This section describes the resource properties that are defined by Sun Cluster. The property values are categorized as follows (after Category):

Tunable lists whether and when you can update resource properties, as follows:

NONE or FALSE

Never 

TRUE or ANYTIME

Any time 

AT_CREATION

When the resource is added to a cluster 

WHEN_DISABLED

When the resource is disabled 

Property names are shown first, followed by a description.

Affinity_timeout (integer)

Length of time in seconds during which connections from a given client IP address for any service in the resource are sent to the same server node.

This property is relevant only when Load_balancing_policy is either Lb_sticky or Lb_sticky_wild. In addition, Weak_affinity must be set to FALSE (the default value).

This property is only used for scalable services.

Category:

Optional

Default:

No default

Tunable:

ANYTIME

Cheap_probe_interval (integer)

The number of seconds between invocations of a quick fault probe of the resource. This property is created by the RGM and available to the administrator only if it is declared in the RTR file.

This property is optional if a default value is specified in the RTR file. If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is WHEN_DISABLED.

This property is required if it is declared in the RTR file and the Default attribute is not specified.

Category:

Conditional

Default:

No default

Tunable:

WHEN_DISABLED

Extension properties

Extension properties as declared in the RTR file of the resource's type. The implementation of the resource type defines these properties. Resource Property Attributes contains information about the individual attributes that you can set for extension properties.

Category:

Conditional

Default:

No default

Tunable:

Depends on the specific property

Failover_mode (enum)

NONE, SOFT, and HARD affect only failover behavior when a start method (Prenet_start or Start) fails. Once the resource has started successfully, however, NONE, SOFT, and HARD have no effect on subsequent resource restart or giveover behavior that the resource monitor initiates with scha_control(1HA) or scha_control(3HA). NONE (the default) indicates that the RGM is to set the resource state on method failure and wait for the user to intervene. SOFT indicates that, if a Start method fails, the RGM is to relocate the resource's group to a different node. If a Stop or Monitor_stop method fails, the RGM sets the resource to Stop_failed state and the resource group to Error_stop_failed state. The RGM then waits for the user to intervene. For Stop or Monitor_stop failures, NONE and SOFT are the same. HARD indicates that, if a Start method fails, the RGM is to relocate the group. If a Stop or Monitor_stop method fails, the RGM is to stop the resource by aborting the cluster node. HARD, NONE, SOFT affect failover behavior when a Start or Prenet_start method fails.

Unlike NONE, SOFT, and HARD, RESTART_ONLY and LOG_ONLY affect all failover behavior, including monitor-initiated (scha_control) restarts of resources and resource groups, and giveovers that are initiated by the resource monitor (scha_control). RESTART_ONLY indicates that the monitor can run scha_control to restart a resource, but attempts to perform a resource group restart or giveover with scha_control subsequently fail. The RGM allows Retry_count restarts within Retry_interval. If Retry_count is exceeded, no resource restarts are permitted. If Failover_mode is set to LOG_ONLY, no resource restarts or giveovers are permitted. Setting Failover_mode to LOG_ONLY is the same as setting Failover_mode to RESTART_ONLY with Retry_count set to zero. If a start method fails, RESTART_ONLY and LOG_ONLY are the same as NONE: no failover occurs and the resource moves to Start_failed state.

Category:

Optional

Default:

No default

Tunable:

ANYTIME

Load_balancing_policy (string)

A string that defines the load-balancing policy in use. This property is used only for scalable services. The RGM automatically creates this property if the Scalable property is declared in the RTR file. Load_balancing_policy can take the following values:

Lb_weighted (the default). The load is distributed among various nodes according to the weights set in the Load_balancing_weights property.

Lb_sticky. A given client (identified by the client IP address) of the scalable service is always sent to the same node of the cluster.

Lb_sticky_wild. A given client's IP address that connects to an IP address of a wildcard sticky service is always sent to the same cluster node, regardless of the port number to which the IP address is coming.

Category:

Conditional/Optional

Default:

Lb_weighted

Tunable:

AT_CREATION

Load_balancing_weights (string_array)

For scalable resources only. The RGM automatically creates this property if the Scalable property is declared in the RTR file. The format is weight@node,weight@node, where weight is an integer that reflects the relative portion of load distributed to the specified node. The fraction of load distributed to a node is the weight for this node divided by the sum of all weights. For example, 1@1,3@2 specifies that node 1 receives 1/4 of the load and node 2 receives 3/4. The empty string (“”), the default, sets a uniform distribution. Any node that is not assigned an explicit weight receives a default weight of 1.

If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is ANYTIME. Changing this property revises the distribution for new connections only.

Category:

Conditional/Optional

Default:

The empty string (“”)

Tunable:

ANYTIME

method_timeout for each callback method in the Type (integer)

A time lapse, in seconds, after which the RGM concludes that an invocation of the method has failed.

Category:

Conditional/Optional

Default:

3600 (one hour), if the method itself is declared in the RTR file

Tunable:

ANYTIME

Monitored_switch (enum)

Set to Enabled or Disabled by the RGM if the cluster administrator enables or disables the monitor with an administrative utility. If Disabled, the monitor does not have its Start method called until it is enabled again. If the resource does not have a monitor callback method, this property does not exist.

Category:

Query-only

Default:

No default

Tunable:

Never

Network_resources_used (string_array)

A list of logical host name or shared address network resources that are used by the resource. For scalable services, this property must refer to shared address resources that exist in a separate resource group. For failover services, this property refers to logical host name or shared address resources that exist in the same resource group. The RGM automatically creates this property if the Scalable property is declared in the RTR file. If Scalable is not declared in the RTR file, Network_resources_used is unavailable unless it is explicitly declared in the RTR file.

If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is AT_CREATION.


Note –

The SUNW.Event(5) man page describes how to set up this property for CRNP.


Category:

Conditional/Required

Default:

No default

Tunable:

AT_CREATION

Num_resource_restarts on each cluster node (integer)

You cannot directly set this property, as it is set by the RGM to the number of scha_control, Resource_restart, or Resource_is_restarted calls that have been made for this resource on this node within the past n seconds. n is the value of the Retry_interval property of the resource. The resource restart counter is reset to zero by the RGM whenever a scha_control giveover is executed by this resource, whether the giveover attempt succeeds or fails.

If a resource type does not declare the Retry_interval property, then the Num_resource_restarts property is not available for resources of that type.

Category:

Query-only

Default:

No default

Tunable:

No

Num_rg_restarts on each cluster node (integer)

You cannot directly set this property, which is set by the RGM to the number of scha_control Restart calls that have been made by this resource for its containing resource group on this node within the past n seconds, where n is the value of the Retry_interval property of the resource. If a resource type does not declare the Retry_interval property, then the Num_rg_restarts property is not available for resources of that type.

Category:

See description

Default:

No default

Tunable:

No

On_off_switch (enum)

Set to Enabled or Disabled by the RGM if the cluster administrator enables or disables the resource with an administrative utility. If disabled, a resource is brought offline and then has no callbacks invoked until it is enabled again.

Category:

Query-only

Default:

No default

Tunable:

Never

Port_list (string_array)

A list of port numbers on which the server is listening. Appended to each port number is a slash (/) followed by the protocol that is being used by that port, for example, Port_list=80/tcp or Port_list=80/tcp6,40/udp6. You can specify the following protocol values:

  • tcp, for TCP IPv4

  • tcp6, for TCP IPv6

  • udp, for UDP IPv4

  • udp6, for UDP IPv6

If the Scalable property is declared in the RTR file, the RGM automatically creates Port_list. Otherwise, this property is unavailable unless it is explicitly declared in the RTR file.

Setting up this property for Apache is described in the Sun Cluster Data Service for Apache Guide for Solaris OS.

Category:

Conditional/Required

Default:

No default

Tunable:

AT_CREATION

R_description (string)

A brief description of the resource.

Category:

Optional

Default:

The empty string

Tunable:

ANYTIME

Resource_dependencies (string_array)

A list of resources in the same or in different groups on which this resource has a strong dependency. This resource cannot be started if any resource in the list is not online. If this resource and one of the resources in the list start at the same time, the RGM waits until the resource in the list starts before the RGM starts this resource. If the resource in this resource's Resource_dependencies list does not start, this resource also remains offline. The resource in this resource's list might not start because the resource group for the resource in the list remains offline or because the resource in the list is in a Start_failed state. If this resource remains offline because of a dependency on a resource in a different resource group that fails to start, this resource's group enters a Pending_online_blocked state.

If this resource is brought offline at the same time as those resources in the list, this resource stops before those in the list. However, if this resource remains online or fails to stop, a resource in the list that is in a different resource group stops anyway. Resources in the list cannot be disabled unless this resource is disabled first.

By default in a resource group, application resources have an implicit strong resource dependency on network address resources. Implicit_network_dependencies in Resource Group Properties contains more information.

Within a resource group, Prenet_start methods are run in dependency order before Start methods. Postnet_stop methods are run in dependency order after Stop methods. In different resource groups, the dependent waits for the depended-on resource to finish Prenet_start and Start before it runs Prenet_start. The depended-on resource waits for the dependent to finish Stop and Postnet_stop before it runs Stop.

Category:

Optional

Default:

The empty list

Tunable:

ANYTIME

Resource_dependencies_restart (string_array)

A list of resources in the same or in different groups on which this resource has a restart dependency.

This property works just as Resource_dependencies does, except that, if any resource in the restart dependency list is restarted, this resource is restarted. The restart of this resource occurs after the resource in the list comes back online.

Category:

Optional

Default:

The empty list

Tunable:

ANYTIME

Resource_dependencies_weak (string_array)

A list of resources in the same or in different groups on which this resource has a weak dependency. A weak dependency determines the order of method calls The RGM calls the Start methods of the resources in this list before the Start method of this resource. The RGM calls the Stop methods of this resource before the Stop methods of those in the list. The resource can still start if those in the list fail to start or remain offline.

If this resource and a resource in its Resource_dependencies_weak list start concurrently, the RGM waits until the resource in the list starts before the RGM starts this resource. If the resource in the list does not start—for example, if the resource group for the resource in the list remains offline or the resource in the list is in a Start_failed state—this resource starts. This resource's resource group might enter a Pending_online_blocked state temporarily as resources in this resource's Resource_dependencies_weak list start. When all resources in the list have started or failed to start, this resource starts and its group reenters the Pending_online state.

If this resource is brought offline at the same time as those in the list, this resource stops before those in the list. If this resource remains online or fails to stop, a resource in the list stops anyway. You cannot disable resources in the list unless this resource is disabled first.

Within a resource group, Prenet_start methods are run in dependency order before Start methods. Postnet_stop methods are run in dependency order after Stop methods. In different resource groups, the dependent waits for the depended-on resource to finish Prenet_start and Start before it runs Prenet_start. The depended-on resource waits for the dependent to finish Stop and Postnet_stop before it runs Stop.

Category:

Optional

Default:

The empty list

Tunable:

ANYTIME

Resource_name (string)

The name of the resource instance. This name must be unique within the cluster configuration and cannot be changed after a resource has been created.

Category:

Required

Default:

No default

Tunable:

Never

Resource_project_name (string)

The Solaris project name that is associated with the resource. Use this property to apply Solaris resource management features such as CPU shares and resource pools to cluster data services. When the RGM brings resources online, it launches the related processes under this project name. If this property is not specified, the project name is taken from the RG_project_name property of the resource group that contains the resource (see rg_properties (5)). If neither property is specified, the RGM uses the predefined project name default. The specified project name must exist in the projects database and the user root must be configured as a member of the named project. This property is supported in Solaris 9 and later versions of Solaris only.


Note –

Changes to this property take effect the next time the resource is started.


Category:

Optional

Default:

Null

Tunable:

ANYTIME

Resource_state on each cluster node (enum)

The RGM-determined state of the resource on each cluster node. Possible states are Online, Offline, Start_failed, Stop_failed, Monitor_failed, Online_not_monitored, Starting, and Stopping.

You cannot configure this property.

Category:

Query-only

Default:

No default

Tunable:

Never

Retry_count (integer)

The number of times a monitor attempts to restart a resource if it fails. This property is created by the RGM and available to the administrator only if it is declared in the RTR file. Retry_count is optional if a default value is specified in the RTR file.

If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is WHEN_DISABLED.

This property is required if it is declared in the RTR file and the Default attribute is not specified.

Category:

Conditional

Default:

No default

Tunable:

WHEN_DISABLED

Retry_interval (integer)

The number of seconds over which to count attempts to restart a failed resource. The resource monitor uses this property in conjunction with Retry_count. This property is created by the RGM and available to the administrator only if it is declared in the RTR file. Retry_interval is optional if a default value is specified in the RTR file.

If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is WHEN_DISABLED.

This property is required if it is declared in the RTR file and the Default attribute is not specified.

Category:

Conditional

Default:

No default

Tunable:

WHEN_DISABLED

Scalable (boolean)

Indicates whether the resource is scalable, that is, whether the resource uses the networking load-balancing features of Sun Cluster.

If this property is declared in the RTR file, the RGM automatically creates the following scalable service properties for resources of that type: Affinity_timeout, Load_balancing_policy, Load_balancing_weights, Network_resources_used, Port_list, UDP_affinity, and Weak_affinity. These properties have their default values unless they are explicitly declared in the RTR file. The default for Scalable, when it is declared in the RTR file, is TRUE.

If this property is declared in the RTR file, it is not permitted to be assigned a Tunable attribute other than AT_CREATION.

If this property is not declared in the RTR file, the resource is not scalable, you cannot tune this property, and no scalable service properties are set by the RGM. However, you can explicitly declare the Network_resources_used and Port_list properties in the RTR file, because these properties can be useful in a nonscalable service as well as in a scalable service.

You use this resource property in combination with the Failover resource type property, as follows:

Using this resource property in combination with the Failover resource type property is described in more detail in r_properties(5).

Category:

Optional

Default:

No default

Tunable:

AT_CREATION

Status on each cluster node (enum)

Set by the resource monitor with scha_resource_setstatus(1HA) or scha_resource_setstatus(3HA). Possible values are OK, degraded, faulted, unknown, and offline. When a resource is brought online or offline, the RGM automatically sets the Status value if the Status value is not set by the resource's monitor or methods.

Category:

Query-only

Default:

No default

Tunable:

Never

Status_msg on each cluster node (string)

Set by the resource monitor at the same time as the Status property. When a resource is brought online or offline, the RGM automatically resets this property to the empty string if this property is not set by the resource's methods.

Category:

Query-only

Default:

No default

Tunable:

Never

Thorough_probe_interval (integer)

The number of seconds between invocations of a high-overhead fault probe of the resource. This property is created by the RGM and available to the administrator only if it is declared in the RTR file. Thorough_probe_interval is optional if a default value is specified in the RTR file.

If the Tunable attribute is not specified in the resource type file, the Tunable value for the property is WHEN_DISABLED.

This property is required if the Default attribute is not specified in the property declaration in the RTR file.

Category:

Conditional

Default:

No default

Tunable:

WHEN_DISABLED

Type (string)

The resource type of which this resource is an instance.

Category:

Required

Default:

No default

Tunable:

Never

Type_version (string)

Specifies which version of the resource type is currently associated with this resource. The RGM automatically creates this property, which cannot be declared in the RTR file. The value of this property is equal to the RT_version property of the resource's type. When a resource is created, the Type_version property is not specified explicitly, though it might appear as a suffix of the resource type name. When a resource is edited, the Type_version can be changed to a new value.

The tunability of this property is derived from the following sources:

  • The current version of the resource type

  • The #$upgrade_from directive in the RTR file

Category:

See description

Default:

No default

Tunable:

See description

UDP_affinity (boolean)

If true, all UDP traffic from a given client is sent to the same server node that currently handles all TCP traffic for the client.

This property is relevant only when Load_balancing_policy is either Lb_sticky or Lb_sticky_wild. In addition, Weak_affinity must be set to FALSE (the default value).

This property is only used for scalable services.

Category:

Optional

Default:

No default

Tunable:

WHEN_DISABLED

Weak_affinity (boolean)

If true, enable the weak form of the client affinity. The weak form of the client affinity allows connections from a given client to be sent to the same server node except when the following conditions occur:

  • A server listener starts, in response to, for example, a fault monitor's restarting, a resource's failing over or switching over, or a node's rejoining a cluster after failing

  • Load_balancing_weights for the scalable resource changes because of an administrative action

Weak affinity provides a low-overhead alternative to the default form, both in terms of memory consumption and processor cycles.

This property is relevant only when Load_balancing_policy is either Lb_sticky or Lb_sticky_wild.

This property is only used for scalable services.

Category:

Optional

Default:

No default

Tunable:

WHEN_DISABLED

Resource Group Properties

The following information describes the resource group properties that are defined by Sun Cluster. The property values are categorized as follows (after Category):

Each description states whether the property can be updated (Yes) or not (No) after it is initially set.

Property names are shown first, followed by a description.

Auto_start_on_new_cluster (boolean)

This property disallows automatic startup of the Resource Group when a new cluster is forming.

If set to TRUE, the Resource Group Manager attempts to start the resource group automatically to achieve Desired_primaries when the cluster is rebooted. If set to FALSE, the Resource Group does not start automatically when the cluster reboots.

Category:

Optional

Default:

TRUE

Tunable:

Yes

Desired_primaries (integer)

The number of nodes where the group is desired to be online at once.

If the RG_mode property is Failover, the value of this property must be no greater than 1. If the RG_mode property is Scalable, a value greater than 1 is allowed.

Category:

Optional

Default:

1

Tunable:

Yes

Failback (boolean)

A Boolean value that indicates whether to recalculate the set of nodes where the group is online when the cluster membership changes. A recalculation can cause the RGM to bring the group offline on less preferred nodes and online on more preferred nodes.

Category:

Optional

Default:

FALSE

Tunable:

Yes

Global_resources_used (string_array)

Indicates whether cluster file systems are used by any resource in this resource group. Legal values that the administrator can specify are an asterisk (*) to indicate all global resources, and the empty string (“”) to indicate no global resources.

Category:

Optional

Default:

All global resources

Tunable:

Yes

Implicit_network_dependencies (boolean)

A Boolean value that indicates, when TRUE, that the RGM should enforce implicit strong dependencies of non-network-address resources on network-address resources within the group. Network-address resources include the logical host name and shared address resource types.

In a scalable resource group, this property has no effect because a scalable resource group does not contain any network-address resources.

Category:

Optional

Default:

TRUE

Tunable:

Yes

Maximum_primaries (integer)

The maximum number of nodes where the group might be online at once.

If the RG_mode property is Failover, the value of this property must be no greater than 1. If the RG_mode property is Scalable, a value greater than 1 is allowed.

Category:

Optional

Default:

1

Tunable:

Yes

Nodelist (string_array)

A list of cluster nodes where the group can be brought online in order of preference. These nodes are known as the potential primaries or masters of the resource group.

Category:

Optional

Default:

The list of all cluster nodes

Tunable:

Yes

Pathprefix (string)

A directory in the cluster file system in which resources in the group can write essential administrative files. Some resources might require this property. Make Pathprefix unique for each resource group.

Category:

Optional

Default:

The empty string

Tunable:

Yes

Pingpong_interval (integer)

A nonnegative integer value (in seconds) that is used by the RGM to determine where to bring the resource group online. Conditions under which this property might be needed are as follows:

  • If a reconfiguration occurs

  • A scha_control -O GIVEOVER command or a scha_control() function with the SCHA_GIVEOVER argument is executed

If a reconfiguration occurs, if the resource group fails to come online more than once within the past Pingpong_interval seconds on a particular node, that node is considered ineligible to host the resource group and the RGM looks for another master. The resource group fails to come online because the resource's Start or Prenet_start method exited nonzero or timed out.

If a call to a resource's scha_control command or function causes the resource group to be brought offline on a particular node within the past Pingpong_interval seconds, that node is ineligible to host the resource group as the result of a subsequent call to scha_control() that originates from another node.

Category:

Optional

Default:

3600 (one hour)

Tunable:

Yes

Resource_list (string_array)

The list of resources that are contained in the group. The administrator does not set this property directly. Rather, the RGM updates this property as the administrator adds or removes resources from the resource group.

Category:

Query-only

Default:

No default

Tunable:

No

RG_affinities (string)

The RGM is to try to locate a resource group on a node that is a current master of another given resource group (positive affinity), or to locate a resource group on a node that is not a current master of a given resource group (negative affinity).

You can set RG_affinities to the following strings:

  • ++, or strong positive affinity

  • +, or weak positive affinity

  • -, or weak negative affinity

  • --, or strong negative affinity

  • +++, or strong positive affinity with failover delegation

For example, RG_affinities=+RG2,--RG3 indicates that this resource group has a weak positive affinity for RG2 and a strong negative affinity for RG3.

Using RG_affinities is described in “Administering Data Service Resources” in Sun Cluster Data Services Planning and Administration Guide for Solaris OS.

Category:

Optional

Default:

The empty string

Tunable:

Yes

RG_dependencies (string_array)

Optional list of resource groups that indicate a preferred ordering for bringing other groups online or offline on the same node. The graph of all strong RG_affinities (positive and negative) together with RG_dependencies is not allowed to contain cycles.

For example, suppose that resource group RG2 is listed in the RG_dependencies list of resource group RG1. In other words, suppose that RG1 has a resource group dependency on RG2. The following list summarizes the effects of this resource group dependency:

  • When a node joins the cluster, Boot methods on that node are not run on resources in RG1 until all Boot methods on that node have completed on resources in RG2.

  • If RG1 and RG2 are both in the Pending_online state on the same node at the same time, the starting methods (Prenet_start or Start) are not run on any resources in RG1 until all the resources in RG2 have completed their starting methods.

  • If RG1 and RG2 are both in the Pending_offline state on the same node at the same time, the stopping methods (Stop or Postnet_stop) are not run on any resources in RG2 until all the resources in RG1 have completed their stopping methods.

  • An attempt to switch the primaries of RG1 or RG2 fails if switching the primaries would leave RG1 online on any node and RG2 offline on all nodes. scswitch(1M) and scsetup(1M) contain more information.

  • Setting the Desired_primaries property to a value that is greater than zero on RG1 is not permitted if Desired_primaries is set to zero on RG2.

  • Setting the Auto_start_on_new_cluster property to TRUE on RG1 is not permitted if Auto_start_on_new_cluster is set to FALSE on RG2.

Category:

Optional

Default:

The empty list

Tunable:

Yes

RG_description (string)

A brief description of the resource group.

Category:

Optional

Default:

The empty string

Tunable:

Yes

RG_is_frozen (boolean)

A Boolean value that indicates whether a global device on which a resource group depends is being switched over. If this property is set to TRUE, the global device is being switched over. If this property is set to FALSE, no global device is being switched over. A resource group depends on global devices as indicated by its Global_resources_used property.

You do not set the RG_is_frozen property directly. The RGM updates the RG_is_frozen property when the status of the global devices changes.

Category:

Optional

Default:

No default

Tunable:

No

RG_mode (enum)

Indicates whether the resource group is a failover or scalable group. If the value is Failover, the RGM sets the Maximum_primaries property of the group to 1 and restricts the resource group to being mastered by a single node.

If the value of this property is Scalable, the RGM allows the Maximum_primaries property to have a value greater than 1. As a result, the group can be mastered by multiple nodes simultaneously. The RGM does not allow a resource whose Failover property is TRUE to be added to a resource group whose RG_mode is Scalable.

If Maximum_primaries is 1, the default is Failover. If Maximum_primaries is greater than 1, the default is Scalable.

Category:

Optional

Default:

Depends on the value of Maximum_primaries

Tunable:

No

RG_name (string)

The name of the resource group. This name must be unique within the cluster.

Category:

Required

Default:

No default

Tunable:

No

RG_project_name (string)

The Solaris project name that is associated with the resource group. Use this property to apply Solaris resource management features such as CPU shares and resource pools to cluster data services. When the RGM brings resource groups online, it launches the related processes under this project name for resources that do not have the Resource_project_name property set. The specified project name must exist in the projects database and the user root must be configured as a member of the named project.

This property is supported in Solaris 9 and later versions of Solaris only.


Note –

Changes to this property take effect the next time the resource is started.


Category:

Optional

Default:

The text string “default

Tunable:

ANYTIME

RG_state on each cluster node (enum)

Set by the RGM to Unmanaged, Online, Offline, Pending_online, Pending_offline, Pending_online_blocked, Error_stop_failed, Online_faulted, or Pending_online_blocked to describe the state of the group on each cluster node.

You cannot configure this property. However, you can indirectly set this property by invoking scswitch(1M), or by using the equivalent scsetup(1M) or SunPlex Manager commands.

Category:

Query-only

Default:

No default

Tunable:

No

RG_system (boolean)

If the RG_system property is TRUE for a resource group, then particular operations are restricted for the resource group and for the resources that the resource group contains. This restriction is intended to help prevent accidental modification or deletion of critical resource groups and resources. Only scrgadm(1M) and scswitch(1M) commands are affected by this property. Operations for scha_control(1HA) and scha_control(3HA) are not affected.

Before performing a restricted operation on a resource group (or a resource group's resources), you must first set the RG_system property of the resource group to FALSE. Use care when you modify or delete a resource group that supports cluster services, or when you modify or delete the resources that such a resource group contains.

A resource group whose RG_system value is set to TRUE is called a system resource group. Editing the RG_system property itself is never restricted, regardless of the current value of RG_system. The rg_properties(5) man page describes these restrictions in more detail.

Category:

Optional

Default:

FALSE

Tunable:

Yes

Resource Property Attributes

The following information describes the resource property attributes that can be used to change system-defined properties or create extension properties.


Caution – Caution –

You cannot specify Null or the empty string (“”) as the default value for boolean, enum, or int types.


Property names are shown first, followed by a description.

Array_maxsize

For stringarray type, the maximum number of array elements permitted.

Array_minsize

For stringarray type, the minimum number of array elements permitted.

Default

Indicates a default value for the property.

Description

A string annotation that is intended to be a brief description of the property. The Description attribute cannot be set in the RTR file for system-defined properties.

Enumlist

For an enum type, a set of string values that are permitted for the property.

Extension

If used, indicates that the RTR file entry declares an extension property that is defined by the resource type implementation. Otherwise, the entry is a system-defined property.

Max

For an int type, the maximum value permitted for the property.

Maxlength

For string and stringarray types, the maximum string length permitted.

Min

For an int type, the minimal value permitted for the property.

Minlength

For string and stringarray types, the minimum string length permitted.

Property

The name of the resource property.

Tunable

Indicates when the cluster administrator can set the value of this property in a resource. Can be set to NONE or FALSE to prevent the administrator from setting the property. Values that allow administrator tuning are TRUE or ANYTIME (at any time), AT_CREATION (only when the resource is created), or WHEN_DISABLED (when the resource is offline). To establish other tunability conditions, such as “when monitoring is disabled” or “when offline”, set this attribute to ANYTIME and validate the state of the resource in the Validate method.

The default differs for each standard resource property, as shown in the following section. The default setting for tuning an extension property, if not otherwise specified in the RTR file, is TRUE (ANYTIME).

Type of the property

Allowable types are: string, boolean, int, enum, and stringarray. You cannot set the type attribute in an RTR file entry for system-defined properties. The type determines acceptable property values and the type-specific attributes that are allowed in the RTR file entry. An enum type is a set of string values.