Sun Cluster Data Service for Apache Guide for Solaris OS

ProcedureHow to Register and Configure Sun Cluster HA for Apache by Using Sun Cluster Command Line Interface (CLI)

Complete the registration and configuration on any cluster member.

Before You Begin
  1. On a cluster member, become superuser or assume a role that provides solaris.cluster.admin RBAC authorization.

  2. Register the SUNW.apache resource type for the data service.


    # clresourcetype register SUNW.apache
    
  3. Create a failover resource group to hold the network and application resources.

    This resource group is required for both failover and scalable services. For failover services, the resource group contains both network and failover application resources. For scalable services, the resource group contains network resources only. A dependency is created between this group and the resource group that contains the application resources.

    Optionally, you can select the set of nodes on which the data service can run with the -n option.


    # clresourcegroup create [-n node-zone-list] resource-group
    
    resource-group

    Specifies the name of the failover resource group to add. This name can be your choice but must be unique for the resource groups within the cluster.

    [-n node-zone-list]

    Specifies a comma-separated, ordered list of zones that can master this resource group. The format of each entry in the list is node. In this format, node specifies the node name and zone specifies the name of a non-global Solaris zone. To specify the global zone, or to specify a node without non-global zones, specify only node.

    This list is optional. If you omit this list, the global zone of each cluster node can master the resource group.

  4. Add a network resource, such as logical hostname or shared address, to the failover resource group that you created in Step 3.


    # clressharedaddress create -g resource-group \
    -h hostname,... [-N netiflist] resource
    
    -h hostname,…

    Specifies a comma-separated list of network resources to add.

    resource-group

    Specifies the name of the failover resource group that you created in Step 3.

    resource

    Specifies a resource name. If you do not supply your choice for a resource name, the name of the network resource defaults to the first name that is specified after the -h option.

    -N netiflist

    Specifies an optional, comma-separated list that identifies the IP Networking Multipathing groups that are on each node or zone. The format of each entry in the list is netif@node. The replaceable items in this format are as follows:

    netif

    Specifies an IPMP group name, such as sc_ipmp0, or a public network interface card (NIC). If you specify a public NIC, Sun Cluster attempts to create the required IPMP groups.

    node

    Specifies the name or ID of a node and, optionally, the name of a non-global Solaris zone. To specify the global zone, or to specify a node without non-global zones, specify only node.


    Note –

    If you require a fully qualified hostname, you must specify the fully qualified name with the -h option and you cannot use the fully qualified form in the resource name.



    Note –

    Sun Cluster does not currently support using the adapter name for netif.


  5. For scalable services only – Create a scalable resource group to run on all of the desired cluster nodes.

    If you run Sun Cluster HA for Apache as a failover data service, proceed to Step 7.

    Create a resource group to hold a data service application resource. You must specify the maximum and desired number of primary nodes.


    Note –

    If only a subset of nodes can be primaries for this resource group, you must use the -n option to specify the names of these potential primaries when you create the resource group.


    You must also specify any dependency between this resource group and the failover resource group that you created in Step 3. This dependency ensures that when failover occurs, if the two resource groups are being brought online on the same node, the Resource Group Manager (RGM) starts up the network resource before any data services that depend on the network resource.


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

    Specifies the name of the scalable service resource group to add.

    -p Maximum_primaries=m

    Specifies the maximum number of active primary nodes allowed for this resource group. If you do not assign a value to this property, the default is 1.

    -p Desired_primaries=n

    Specifies the desired number of active primary nodes allowed for this resource group. If you do not assign a value to this property, the default is 1.

    -p RG_dependencies= resource-group

    Identifies the resource group that contains the shared address resource on which the resource group being created depends, that is, the name of the failover resource group that you created in Step 3.

    -n node-zone-list

    Specifies a comma-separated, ordered list of zones that can master this resource group. The format of each entry in the list is node. In this format, node specifies the node name and zone specifies the name of a non-global Solaris zone. To specify the global zone, or to specify a node without non-global zones, specify only node.

    This list is optional. If you omit this list, the global zone of each cluster node can master the resource group.

  6. For scalable services only – Create an application resource in the scalable resource group.

    If you run Sun Cluster HA for Apache as a failover data service, proceed to Step 7.


    # clresource create -g resource-group \
    -t resource-type -p Bin_dir=bin-directory,... \
    -p Network_resources_used=network-resource,… \
    -p Port_list=port-number/protocol[, …] \
    -p Scalable=True resource
    
    resource

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

    -g resource-group

    Specifies the name of the scalable resource group into which the resources are to be placed.

    -t resource-type

    Specifies the type of the resource to add.

    -p Network_resources_used= network-resource, …

    Specifies a comma-separated list of network resource names that identify the shared addresses that the data service uses.

    -p Port_list=port-number/protocol, …

    Specifies a comma-separated list of port numbers and protocol to be used, for example, 80/tcp,81/tcp.

    -p Scalable=

    Specifies a required parameter for scalable services. This parameter must be set to True.

    -p Bin_dir=bin-directory

    Specifies the location where the Apache binaries—in particular, apachect1—are installed. Sun Cluster HA for Apache requires this extension property.

    The resource is created in the enabled state.


    Note –

    Optionally, you can set additional extension properties that belong to the Apache data service to override their default values. See Appendix A, Sun Cluster HA for Apache Extension Properties for a list of extension properties.


  7. For failover services only – Create an application resource in the failover resource group.

    Perform this step only if you run Sun Cluster HA for Apache as a failover data service. If you run Sun Cluster HA for Apache as a scalable data service, you should have performed Step 5 and Step 6 and should now proceed to Step 9.


    # clresource create -g resource-group \
    -t resource-type -p Bin_dir=bin-directory \
    -p Network_resources_used=network-resource,… \
    -p Port_list=port-number/protocol[, …] resource
    
    resource

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

    -g resource-group

    Specifies the name of the resource group into which the resources are to be placed, created in Step 3.

    -t resource-type

    Specifies the type of the resource to add.

    -p Network_resources_used= network-resource, …

    Specifies a comma-separated list of network resources that identify the shared addresses that the data service uses.

    -p Port_list=port-number/protocol, …

    Specifies a comma-separated list of port numbers and protocol to be used, for example, 80/tcp,81/tcp.

    -p Scalable=

    This property is required for scalable services only. Here the value is set to False or can be omitted.

    -p Bin_dir=bin-directory

    Specifies the location where the Apache binaries—in particular, apachect1—are installed. Sun Cluster HA for Apache requires this extension property.

    The resource is created in the enabled state.

  8. Bring the failover resource group online.


    # clresourcegroup online resource-group
    
    resource-group

    Specifies the name of the failover resource group.

  9. For scalable services only – Bring the scalable resource group online.


    # clresourcegroup online resource-group
    
    resource-group

    Specifies the name of the scalable resource group.


Example 1 Registering Scalable Sun Cluster HA for Apache

For scalable services, you create the following resource groups.

The following example shows how to register a scalable Apache service on a two-node cluster.


Cluster Information
Node names: phys-schost-1, phys-schost-2
Shared address: schost-1
Resource groups: resource-group-1 (for shared addresses), 
	resource-group-2 (for scalable Apache application 
    resources)
Resources: schost-1 (shared address), apache-1 (Apache application 
    resource)
 
(Add a failover resource group to contain shared addresses.)
# clresourcegroup create resource-group-1
 
(Add the shared address resource to the failover resource group.)
# clressharedaddress create -g resource-group-1 -h schost-1 
 
(Register the Apache resource type.)
# clresourcetype register SUNW.apache
 
(Add a scalable resource group.)
# clresourcegroup create -p Maximum_primaries=2 \
-p Desired_primaries=2 -p RG_dependencies=resource-group-1 resource-group-2
 
(Add Apache application resources to the scalable resource group.)
# clresource create -g resource-group-2 \
-t SUNW.apache -p Bin_dir=/opt/apache/bin -p Network_resources_used=schost-1 \
-p Scalable=True \
-p Port_list=80/tcp apache-1
 
(Bring the failover resource group online.)
# clresourcegroup online resource-group-1
 
(Bring the scalable resource group online on both nodes.)
# clresourcegroup online resource-group-2


Example 2 Registering Failover Sun Cluster HA for Apache

The following example shows how to register a failover Apache service on a two-node cluster.


Cluster Information
Node names: phys-schost-1, phys-schost-2
Logical hostname: schost-1
Resource group: resource-group-1 (for all of the resources)
Resources: schost-1 (logical hostname),
	apache-1 (Apache application resource)
 
(Add a failover resource group to contain all of the resources.)
# clresourcegroup create resource-group-1
 
(Add the logical hostname resource to the failover resource group.)
# clreslogicalhostname create -g resource-group-1 -h schost-1 
 
(Register the Apache resource type.)
# clresourcetype register SUNW.apache
 
(Add Apache application resources to the failover resource group.)
# clresource create -g resource-group-1 \
-t SUNW.apache -p Bin_dir=/opt/apache/bin -p Network_resources_used=schost-1 \
-p Port_list=80/tcp apache-1
 
(Bring the failover resource group online.)
# clresourcegroup online resource-group-1