6 Installing Solaris Cluster 4.2

Solaris Cluster Installation is covered in detail in the Oracle Solaris Cluster Software Installation Guide, available from the Oracle technetwork site (see "Downloading Software Packages" of this document).

ACSLSHA 8.4 is supported on Solaris 11.2 with Oracle Solaris Cluster 4.2.

Cluster Package Installation

Follow this procedure to install Cluster software.

  1. Create a directory, /opt/OSC.

    # mkdir /opt/OSC
    
  2. You may have downloaded one or two iso images for the Solaris Cluster package, depending on the operation system version that you determined in "Downloading Oracle Cluster 4.2". Move each Cluster package downloaded to the /opt/OSC directory.

  3. Unzip the packages. Identify an iso image for each unzipped package.

  4. Create a pseudo device from each iso image.

    #  /usr/sbin/lofiadm -a /opt/OSC/V46190-01.iso
    
    #  /usr/sbin/lofiadm -a /opt/OSC/osc-4_2_5_1_0-repo-incr.iso
    

    Keep track of the /dev/lofi instance numbers you created for each of these.

  5. In the /opt/OSC directory, create a mount point for each pseudo device.

    # mkdir mnt
    
    # mkdir mnt1
    
  6. Mount the pseudo devices to these mount points.

    # mount –F hsfs –o ro /dev/lofi/1 /opt/OSC/mnt
    
    # mount –F hsfs –o ro /dev/lofi/2 /opt/OSC/mnt1
    
  7. Select one of the following:

    • If your Solaris version is 11.2.13 or higher, proceed to step 8.

    • If your Solaris version is 11.2.12 or below and you downloaded only the base Cluster image, you can now publish the repository for that base image.

      #  pkg set publisher –G  ’*'  –g  file:/opt/OSC/mnt/repo  ha-cluster
      

      Proceed to the step 13 in this section to install the package.

  8. In the following steps, you copy the OSC base package into a read/write file system to merge the patch update with the base package.

    Create a read/write file system for merging the OSC packages.

    # cd /opt/OSC
    
    # mkdir merged_iso
    
  9. Copy the base OSC image repository into the directory created.

    # cp –r  mnt/repo  merged_iso
    
  10. Synchronize the two images together into the merged directory.

    # rsync –aP mnt1/repo  merged_iso
    
  11. Rebuild the search indexes for the repository

    # pkgrepo rebuild –s  merged_iso/repo
    
  12. Publish the ha-cluster repository of the merged packages.

    # pkg set-publisher –g file:/opt/OSC/merged_iso/repo ha-cluster
    
  13. Install the Oracle Solaris Cluster package.

    # pkg install -–accept ha-cluster-full
    

Repeat steps 1-13 on the adjacent node.

The scinstall Routine

The Solaris Cluster installation routine makes a series of checks between the two nodes to ensure that it can monitor system operation from both servers and can control startup and failover actions.

Preliminary Steps:

  1. Before running scinstall, it is helpful to establish an environment for root which includes the path to the cluster utilities that have just been installed. Edit the file /root/.profile. Change the path statement to include /usr/cluster/bin.

    export PATH=/usr/cluster/bin:/usr/bin:/usr/sbin
    

    Be sure to make this change on each node. To inherit the new path, log out and log back in, or simply su -.

  2. Confirm that the config/local_only property for rpc/bind is false

    # svccfg -s network/rpc/bind listprop config/local_only
    

    If this property returns true, then you must set it to false.

    # svccfg -s network/rpc/bind setprop config/local_only=false
    

    Now confirm:

    # svccfg -s network/rpc/bind listprop config/local_only
    
  3. An essential hardware setup requirement for Cluster software is the existence of two private network connections, reserved to ensure uninterrupted communication for cluster operation between the two nodes.

    Figure 2-1, "Single HBCr Library Interface Card Connected to Two Ethernet Ports on each Server Node" shows these physical connections, labeled as (2). Each connection originates from a separate network adapter to ensure that no single point of failure can interrupt Cluster's internal communication. The scinstall routine checks each of the two connections to verify that no other network traffic is seen on the wire. Finally, scinstall verifies that communication is functional between the two lines. Once the physical connection is verified, the routine plumbs each interface to a private internal address beginning with 172.16.

    Before running scinstall, verify the assigned network device ID for the two network ports on each server set up for this private connection. Run dladm show-phys to view the interface assignments.

    # dladm show-phys
    
  4. A Logical Host Name and IP address must be established to represent the cluster from either node. This logical host reliably responds to network communication whether the active host would be running from node1 or node2.

    Update the /etc/hosts file on both nodes to include the logical hostname and logical ip address. This host becomes active when you start ACSLS HA ("Configuring ACSLS HA").

  5. For a successful cluster installation, have the Solaris Common Agent Container enabled. Verify that the agent container is enabled.

    # cacaoadm status
    

    If the status response indicates that the agent container is DISABLED at system startup, then enable it as follows:

    # cacaoadm enable
    

Run scinstall

From one of the two nodes, run the command scinstall, and then follow this procedure:

  1. From the main menu, select Create a new cluster.

  2. From the sub menu, select Create a new cluster.

  3. Accept initial defaults.

  4. Select Typical install.

  5. Assign a name for the cluster, such as acsls_cluster.

  6. At the Cluster Nodes prompt, enter the hostname of the adjacent node. Accept the node list if it is correct

  7. Define the two private node interconnections identified for this purpose. Allow the install routine to plumb TCP links to the physical connections.

  8. Follow the prompts to create the cluster. Unless you have identified a specific device to serve as a quorum device, allow the scinstall routine to select the quorum device(s).

  9. Don't be alarmed if the utility reports that the cluster check failed on both nodes. A failure is reported even for minor warnings. Review the report for each node, and look for any serious errors or violations that may be returned. The routine displays the path to a log file which reports details surrounding any errors or warnings encountered during the operation. Review the log file and correct any severe or moderately severe problems that were identified.

    The scinstall routine is run from one node and installs Solaris Cluster on both nodes. Observe the routine configuring one node, rebooting that node, then configuring the second node, and rebooting that second node.

Verify Cluster Configuration

  1. Verify that both nodes are included in the cluster.

    # clnode list -v
    Node                Type
    ----                ----
    node1               cluster
    node2               cluster
    
  2. View the list of devices available to Solaris Cluster.

    # cldevice list -v
    DID Device   Full Device Path
    d1           node1:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0
    d1           node2:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0
    d2           node1:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0
    d2           node2:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0
    d3           node1:/dev/rdsk/c1t0d0
    d4           node1:/dev/rdsk/c1t1d0
    d5           node2:/dev/rdsk/c1t0d0
    d6           node2:/dev/rdsk/c1t1d0
    

    In this example, the shared disk devices are d1 and d2 while d3 and d4 are the node1 boot devices and d5 and d6 are the node2 boot devices. Notice that d1 and d2 are accessible from either node.

  3. A quorum consists of three or more devices. It is used during startup events to determine which node is to become the active node.

    Confirm that a full quorum has been configured.

    # clquorum list -v
    Quorum              Type
    ------              ----
    d1                  shared_disk
    node1               node
    node2               node
    

    A second shared_disk can be optionally added to the list of quorum devices.

    # clquorum add d2
    # clquorum list -v
    Quorum              Type
    ------              ----
    d1                  shared_disk
    d2                  shared_disk
    node1               node
    node2               node
    

    If the shared disk devices are not listed, determine their device id's and then add them to the quorum.

    1. Identify the device id for each shared disk.

      # cldevice list -v
      
    2. Run clsetup to add the quorum devices.

      # clsetup
      
      Select '1' for quorum.
      Select '1' to dd a quorum device.
      Select 'yes' to continue.
      Select 'Directly attached shared disk'
      Select 'yes' to continue.
      Enter the device id (d<n>) for the first shared drive.
      Answer 'yes' to add another quorum device.
      Enter the device id for the second shared drive.
      
    3. Run clquorum show to confirm the quorum membership.

      # clquorum show
      
  4. Review overall cluster configuration.

    # cluster check -v | egrep -v "not applicable|passed"
    

    Look for any violated instances in the list.

  5. Verify the list of registered resource types.

    # clrt list
    SUNW.LogicalHostname:4
    SUNW.SharedAddress:2
    SUNW.gds:6
    

    If SUNW.gds is not listed, register it.

    # clrt register SUNW.gds
    

    Confirm with clrt list.