Sun Cluster Data Services Planning and Administration Guide for Solaris OS

ProcedureEncapsulating an SMF Service Into a Scalable Proxy Resource Configuration

For information about scalable configuration, see How to Create a Scalable Resource Group


Note –

Perform this procedure from any cluster node.


  1. On a cluster member, become superuser or assume a role that provides solaris.cluster.modify RBAC authorization.

  2. Register the SMF proxy scalable resource type.


    # clresourcetype register -f\
    /opt/SUNWscsmf/etc/SUNW.Proxy_SMF_scalable SUNW.Proxy_SMF_scalable  
    
  3. Create the SMF failover resource group that holds the shared address that the scalable resource group is to use. See How to Create a Failover Resource Group to create the failover resource group.

  4. Create the SMF proxy scalable resource group.


    # clresourcegroup create\-p Maximum_primaries=m\-p Desired_primaries=n\
    -p RG_dependencies=depend-resource-group\
    [-n node-zone-list]\
    resource-group
    
    -p Maximum_primaries=m

    Specifies the maximum number of active primaries for this resource group.

    -p Desired_primaries=n

    Specifies the number of active primaries on which the resource group should attempt to start.

    -p RG_dependencies=depend-resource-group

    Identifies the resource group that contains the shared address-resource on which the resource group that is being created depends.

    -n node-zone-list

    Specifies a comma-separated, ordered list of nodes in which this resource group is to be available. The format of each entry in the list is node:zone. In this format, node specifies the global-cluster voting node and zone specifies the name of a global-cluster non-voting node. To specify the global-cluster voting node, or to specify a node without global-cluster non-voting nodes, specify only node.

    This list is optional. If you omit this list, the resource group is created on all nodes in the cluster.

    The node list of the scalable resource can contain the same list or a subset of nodename:zonename pairs as the node list of the shared address resource

    resource-group

    Specifies your choice of the name of the scalable resource group to add. This name must begin with an ASCII character.

  5. Verify that the scalable resource group has been created.


    # clresourcegroup show resource-group
    
  6. Add an SMF proxy scalable resource to the resource group.


    # clresource create-g resource-group -t SUNW.Proxy_SMF_scalable \
    -p Network_resources_used=network-resource[,network-resource...] \
    -p Scalable=True
    [-p "extension-property[{node-specifier}]"=value, …] [-p standard-property=value, …] resource
    
    -g resource-group

    Specifies the name of a scalable service resource group that you previously created.

    -p Network_resources_used= network-resource[,network-resource...]

    Specifies the list of network resources (shared addresses) on which this resource depends.

    -p Scalable=True

    Specifies that this resource is scalable.

    -p "extension-property[{node-specifier}]"=value, …

    Specifies that you are setting extension properties for the resource. To determine which extension properties to set, see the documentation for the resource type.

    node-specifier is an optional qualifier to the -p and -x options. This qualifier indicates that the extension property or properties on only the specified node or nodes are to be set when the resource is created. The specified extension properties on other nodes in the cluster are not set. If you do not include node-specifier, the specified extension properties on all nodes in the cluster are set. You can specify a node name or a node identifier for node-specifier. Examples of the syntax of node-specifier include the following:


    -p "myprop{phys-schost-1}"
    

    The braces ({}) indicate that you want to set the specified extension property on only node phys-schost-1. For most shells, the double quotation marks (“) are required.

    You can also use the following syntax to set an extension property in two different global-cluster non-voting nodes on two different global-cluster voting nodes:


    -x "myprop{phys-schost-1:zoneA,phys-schost-2:zoneB}"
    
    -p standard-property=value, …

    Specifies a comma-separated list of standard properties that you are setting for the resource. The standard properties that you can set depend on the resource type. For scalable services, you typically set the Port_list, Load_balancing_weights, and Load_balancing_policy properties. To determine which standard properties to set, see the documentation for the resource type and Appendix B, Standard Properties.

    resource

    Specifies your choice of the name of the resource to add.

    The resource is created in the enabled state.

  7. Verify that the SMF proxy scalable application resource has been added and validated.


    # clresource show resource
    
  8. Bring the SMF proxy scalable resource group online.


    # clresourcegroup online -M +
    

    Note –

    If you use the clresource status command to view the state of the SMF proxy resource type, the status is displayed as online but not monitored. This is not an error message. The SMF proxy resource is enabled and running and this status message is displayed because there is no monitoring support provided for the resources of SMF proxy resource type.



Example 2–55 Registering an SMF Proxy Scalable Resource Type

The following example registers the SUNW.Proxy_SMF_scalable resource type.


# clresourcetype register SUNW.Proxy_SMF_scalable
# clresourcetype show SUNW.Proxy_SMF_scalable

Resource Type:           SUNW.Proxy_SMF_scalable
RT_description:          Resource type for proxying scalable SMF services 
RT_version:              3.2
API_version:             6
RT_basedir:              /opt/SUNWscsmf/bin
Single_instance:          False
Proxy:                    False
Init_nodes:               All potential masters
Installed_nodes:          <All>
Failover:                 True
Pkglist:                  SUNWscsmf 
RT_system:                 False
Global_zone:				  False


Example 2–56 Creating and Adding an SMF Proxy Scalable Application Resource to a Resource Group

This example shows the creation and addition of a scalable proxy resource type SUN.Proxy_SMF_scalalble to a resource group resource-group-1.


# clresourcegroup create\
-p Maximum_primaries=2\
-p Desired_primaries=2\
-p RG_dependencies=resource-group-2\
-n phys-schost-1, phys-schost-2\
resource-group-1
# clresourcegroup show resource-group-1

=== Resource Groups and Resources ===          

Resource Group:                      resource-group-1
RG_description:                     <NULL>
RG_mode:                             Scalable
RG_state:                            Unmanaged
RG_project_name:                     default
RG_affinities:                       <NULL>
Auto_start_on_new_cluster:           True
Failback:                            False
Nodelist:                            phys-schost-1 phys-schost-2
Maximum_primaries:                   2
Desired_primaries:                   2
RG_dependencies:                     resource-group2
Implicit_network_dependencies:       True
Global_resources_used:               <All>
Pingpong_interval:                   3600
Pathprefix:                          <NULL>
RG_System:                            False
Suspend_automatic_recovery:           False

# clresource create -g resource-group-1 -t SUNW.Proxy_SMF_scalable
-x proxied_service_instances=/var/tmp/svslist.txt resource-1
# clresource show resource-1

=== Resources ===

  Resource:                            resource-1
  Type:                                SUNW.Proxy_SMF_scalable
  Type_version:                        3.2 
  Group:                               resource-group-1
  R_description:                       
  Resource_project_name:               default
  Enabled{phats1}:                     True 
  Monitored{phats1}:                   True