Sun Java System Calendar Server 6.3 Administration Guide

6.7 Configuring a Symmetric High Availability Calendar Server System

This section contains instructions for configuring a symmetric high availability Calendar Server system

To configure a symmetric high availability Calendar Server system, follow the instructions in the following sections:

6.7.1 Initial Tasks

There are two preparatory tasks that must be completed before installing Calendar Server on the nodes.

The preparatory tasks are as follows:


Note –

In various places in the examples, you need to provide the installation directory (cal-svr-base) for each node. For a symmetric HA system, the cal-svr-base is different than the asymmetric HA system. For symmetric HA systems, cal-svr-base has the following format: /opt/node/SUNWics5/cal, where /opt/node is the name of the root directory in which Calendar Server is installed (install-root).

For the purposes of the examples, and to differentiate the installation directories of the two Calendar Server instances, they are designated as cal-svr-baseCS1 and cal-svr-baseCS1.

To differentiate the installation roots for the two Calendar Server instances in this example, they are designated as install-rootCS1 and install-rootCS2:


ProcedureCreating the File Systems

  1. Create six file systems, using either Cluster File Systems (Global File systems) or Fail Over File Systems (Local File systems).

    This example is for Global File Systems. The contents of the /etc/vfstab file should look like the following: (Note that the fields are all tab separated.)

    # Cluster File System/Global File System ##
    /dev/md/penguin/dsk/d500  /dev/md/penguin/rdsk/d500  
        /cal-svr-baseCS1  ufs  2  yes  logging,global
    /dev/md/penguin/dsk/d400  /dev/md/penguin/rdsk/d400  
        /share-disk-dirCS1  ufs  2  yes  logging,global
    /dev/md/polarbear/dsk/d200  /dev/md/polarbear/rdsk/d200  
        /cal-svr-baseCS2  ufs  2  yes  logging,global
    /dev/md/polarbear/dsk/d300  /dev/md/polarbear/rdsk/d300
        /share-disk-dirCS2  ufs  2  yes logging,global
    /dev/md/polarbear/dsk/d600  /dev/md/polarbear/rdsk/d300 
        /var-cal-dirCS1  ufs  2   yes  logging,global
    /dev/md/polarbear/dsk/d700  /dev/md/polarbear/rdsk/d300  
        /var-cal-dirCS2  ufs   2   yes  logging,global

    This example is for the Failover File Systems. The contents of the /etc/vfstab file should look like the following: (Note that the fields are all tab separated.)

    # Failover File System/Local File System ##
    /dev/md/penguin/dsk/d500  /dev/md/penguin/rdsk/d500  
        /cal-svr-baseCS1  ufs  2  yes  logging
    /dev/md/penguin/dsk/d400  /dev/md/penguin/rdsk/d400  
        /share-disk-dirCS1  ufs  2  yes  logging
    /dev/md/polarbear/dsk/d200  /dev/md/polarbear/rdsk/d200 
       /cal-svr-baseCS2  ufs  2  yes  logging
    /dev/md/polarbear/dsk/d300  /dev/md/polarbear/rdsk/d300 
        /share-disk-dirCS2  ufs  2  yes  logging
    /dev/md/polarbear/dsk/d600  /dev/md/polarbear/rdsk/d300 
        /var-cal-dirCS1  ufs  2   yes  logging
    /dev/md/polarbear/dsk/d700  /dev/md/polarbear/rdsk/d300
       /var-cal-dirCS2  ufs  2   yes  logging
  2. Create the following required directories on all nodes of the cluster.

    # mkdir -p /install-rootCS1 share-disk-dirCS1 
         install-rootCS2 share-disk-dirCS2 var-cal-dirCS1 
         var-cal-dirCS2

6.7.1.1 Installing the Calendar Server HA Package

Install the Calendar Server HA package, SUNWscics, on all nodes of the cluster.

This must be done from the Java Enterprise System installer.

For more information about the Java Enterprise System installer, refer to the Sun Java Enterprise System 5 Installation and Configuration Guide.

6.7.2 Installing and Configuring the First Instance of Calendar Server

Follow the instructions in this section to install and configure the first instance of Calendar Server. This section covers the following topics:

ProcedureTo Install Calendar Server

  1. Verify the files are mounted.

    On the primary node (Node1), enter the following command:

    df -k

    The following is an example of the output you should see:

    /dev/md/penguin/dsk/d500     35020572   
         34738 34635629   1%   /install-rootCS1
    /dev/md/penguin/dsk/d400     35020572   
         34738 34635629   1%   /share-disk-dirCS1
    /dev/md/polarbear/dsk/d300   35020572   
         34738 34635629   1%   /share-disk-dirCS2
    /dev/md/polarbear/dsk/d200   35020572   
         34738 34635629   1%   /install-rootCS2
    /dev/md/polarbear/dsk/d600   35020572   
         34738 34635629   1%   /var-cal-dirCS1
    /dev/md/polarbear/dsk/d700   35020572   
         34738 34635629   1%   /var-cal-dirCS2
  2. Using the Sun Java Systems Communications Suite installer, install Calendar Server on the Primary Node.

    1. At the Specify Installation Directories panel, specify the installation root (install-rootCS1):

      For example, if your Primary node is named red and the root directory is dawn, the installation root would be /dawn/red. This is the directory where you are installing Calendar Server on the first node.

    2. Choose Configure Later.

  3. Run the Directory Preparation Tool script on the machine with the Directory Server.

ProcedureTo Configure Sun Cluster on the First Node

Using the Sun Cluster command-line interface, configure Sun Cluster on the first node by performing the following steps:

  1. Register the following resource types:

    ./scrgadm -a -t SUNW.HAStoragePlus
    ./scrgadm -a -t SUNW.scics
  2. Create a fail over resource group.

    In the following example, the resource group is CAL-CS1-RG, and the two nodes are named Node1 as the primary node and Node2 as the fail over node.

    ./scrgadm -a -g CAL-CS1-RG -h Node1,Node2
  3. Create a logical hostname resource for this node.

    The calendar client listens on this logical hostname. The example that follows uses LOG-HOST-CS1-RS in the place where you will substitute in the actual hostname.

    ./scrgadm -a -L -g CAL-RG -l LOG-HOST-CS1-RS
    ./scrgadm -c -j LOG-HOST-CS1-RS -y R_description=
         "LogicalHostname resource for LOG-HOST-CS1-RS"
  4. Bring the resource group online.

    scswitch -Z -g CAL-CS1-RG
  5. Create an HAStoragePlus resource and add it to the fail over resource group.

    In this example, the resource is called CAL-HASP-CS1-RS. You will substitute you own resource name. Note that the lines are cut and show as two lines in the example for display purposes in this document.

    ./scrgadm -a -j CAL-HASP-CS1-RS -g CAL-CS1-RG -t 
         SUNW.HAStoragePlus:4 -x FilesystemMountPoints=/install-rootCS1,
         /share-disk-dirCS1,/cal-svr-baseCS1
    ./scrgadm -c -j CAL-HASP-CS1-RS -y R_description="Failover data 
         service resource for SUNW.HAStoragePlus:4"
  6. Enable the HAStoragePlus resource.

    ./scswitch -e -j CAL-HASP-CS1-RS

ProcedureTo Configure the First Instance of Calendar Server

  1. Run the configuration program on the primary node.

    # cd /cal-svr-baseCS1/sbin/
    
    # ./csconfigurator.sh

    For further information about running the configuration script, see the Sun Java System Calendar Server 6.3 Administration Guide.

  2. On the Runtime Configuration panel, deselect both of the Calendar Server start up options.

  3. On the Directories to Store Configuration and Data Files panel, provide the shared disk directories as shown in the following list:

    Config Directory

    /share-disk-dirCS1/config

    Database Directory

    /share-disk-dirCS1/csdb

    Attachment Store Directory

    /share-disk-dirCS1/store

    Logs Directory

    /share-disk-dirCS1/logs

    Temporary Files Directory

    /share-disk-dirCS1/tmp

    When you have finished specifying the directories, choose Create Directory.

  4. On the Archive and Hot Backup panel, provide the shared disk directory names as shown in the following list:

    Archive Directory

    /share-disk-dirCS1/csdb/archive

    Hot Backup Directory

    /share-disk-dirCS1/csdb/hotbackup

    After specifying these directories, choose Create Directory.

  5. Verify that the configuration was successful.

    The configuration program will display a series of messages. If they all start with PASSED, which means it was successful. For an example of the output you might see, check the example at: 6.11 Example Output from the Calendar Configuration Program (Condensed).

ProcedureTo Perform the Final Configuration Steps for the First Instance

  1. Using the Sun Cluster command-line interface, perform a fail over to the second node.

    For example:

    # /usr/cluster/bin/scswitch -z -g CAL-CS1-RG -h Node2
  2. Edit the configuration file, ics.conf, by adding the parameters shown in the example that follows.


    Note –

    Back up the ics.conf file before starting this step.


    ! The following changes were made to configure Calendar Server
    ! Highly Available
    !
    local.server.ha.enabled="yes"
    local.server.ha.agent="SUNWscics"
    service.http.listenaddr="IPAddressCS1"
    local.hostname="LOG-HOST-CS1-RS"
    local.servername="LOG-HOST-CS1-RS"
    service.ens.host="LOG-HOST-CS1-RS"
    service.http.calendarhostname="LOG-HOST-CS1-RS-Domain.com"
    local.autorestart="yes"
    service.listenaddr = "IPAddressCS1"

    Note –

    The expected value for service.http.calendarhostname is a fully qualified hostname.


  3. Using the Sun Cluster command-line interface, create the Calendar Server resource group.

    Create a calendar resource group and enable it.

    For example:

    ./scrgadm -a -j CAL-SVR-CS1-RS -g CAL-CS1-RG
          -t SUNW.scics  -x ICS_serverroot=/cal-svr-baseCS1
          -y Resource_dependencies=CAL-HASP-CS1-RS,LOG-HOST-CS1-RS
    
    ./scrgadm -e -j CAL-SVR-CS1-RS
  4. Using the Sun Cluster command-line interface to test the successful creation of the Calendar Server resource group, perform a fail over to the first node, which is the Primary node.

    For example:

    ./scswitch -z -g CAL-CS1-RG -h Node1

6.7.3 Installing and Configuring the Second Instance of Calendar Server

The primary node for the second Calendar Server instance is the second node (Node2).

ProcedureTo Install Calendar Server on the Second Node

  1. Verify the files are mounted.

    On the primary node (Node2), enter the following command:

    df -k

    The following is an example of the output you should see:

    /dev/md/penguin/dsk/d500     35020572   
         34738 34635629   1%   /install-rootCS1
    /dev/md/penguin/dsk/d400     35020572   
         34738 34635629   1%   /share-disk-dirCS1
    /dev/md/polarbear/dsk/d300   35020572   
         34738 34635629   1%   /share-disk-dirCS2
    /dev/md/polarbear/dsk/d200   35020572   
         34738 34635629   1%   /install-rootCS2
    /dev/md/polarbear/dsk/d600   35020572   
         34738 34635629   1%   /var-cal-dirCS1
    /dev/md/polarbear/dsk/d700   35020572   
         34738 34635629   1%   /var-cal-dirCS2
  2. Using the Sun Java Systems Communications Suite installer, install Calendar Server on the new Primary Node (second node).

    1. At the Specify Installation Directories panel, specify the installation root for the second node (/install-rootNode2):

      For example, if your Node 2 machine is named blue and your root directory is ocean, your installation directory would be /ocean/blue.

    2. Select the Configure Later option.

ProcedureTo Configure Sun Cluster for the Second Instance

Using the Sun Cluster command-line interface, configure the second instance of Calendar Server as described in the following steps:

  1. Create a fail over resource group.

    In the following example, the resource group is CAL-CS2-RG, and the two nodes are named Node2 as the primary node and Node1 as the fail over node.

    ./scrgadm -a -g CAL-CS2-RG -h Node2,Node1
  2. Create a logical hostname resource.

    The calendar client listens on this logical hostname. The example that follows uses LOG-HOST-CS2-RS in the place where you will substitute in the actual hostname.

    ./scrgadm -a -L -g CAL-CS2-RG -l LOG-HOST-CS2-RS
    ./scrgadm -c -j LOG-HOST-CS2-RS -y R_description="LogicalHostname 
         resource for LOG-HOST-CS2-RS"
  3. Bring the resource group online.

    scswitch -Z -g CAL-CS2-RG
  4. Create an HAStoragePlus resource and add it to the fail over resource group.

    In this example, the resource is called CAL-SVR-CS2-RS. You will substitute you own resource name.

    ./scrgadm -a -j CAL-SVR-CS2-RS -g CAL-CS2-RG -t 
         SUNW.HAStoragePlus:4 -x FilesystemMountPoints=/install-rootCS2,
         /share-disk-dirCS2,/var-cal-dirCS2
    ./scrgadm -c -j CAL-HASP-CS2-RS -y R_description="Failover data 
         service resource for SUNW.HAStoragePlus:4"
  5. Enable the HAStoragePlus resource.

    ./scswitch -e -j CAL-HASP-CS2-RS

ProcedureTo Configure the Second Instance of Calendar Server

  1. Run the configuration program again on the secondary node.

    # cd /cal-svr-baseCS2/sbin/
    
    # ./csconfigurator.sh

    For further information about running the configuration script, see the Sun Java System Calendar Server 6.3 Administration Guide.

  2. On the Runtime Configuration panel, deselect both of the Calendar Server start up options.

  3. On the Directories to Store Configuration and Data Files panel, provide the proper directories as shown in the following list:

    Config Directory

    share-disk-dirCS2/config

    Database Directory

    /share-disk-dirCS2/csdb

    Attachment Store Directory

    /share-disk-dirCS2/store

    Logs Directory

    /share-disk-dirCS2/logs

    Temporary Files Directory

    /share-disk-dirCS2/tmp

    When you have finished specifying the directories, choose Create Directory.

  4. On the Archive and Hot Backup panel, provide the appropriate directory names as shown in the following list:

    Archive Directory

    /share-disk-dirCS2/csdb/archive

    Hot Backup Directory

    /share-disk-dirCS2/csdb/hotbackup

    After specifying these directories, choose Create Directory.

  5. Verify that the configuration was successful.

    The configuration program will display a series of messages. If they all start with PASSED, which means it was successful. For an example of the output you might see, check the example at: 6.11 Example Output from the Calendar Configuration Program (Condensed).

ProcedureTo Perform the Final Configuration Steps for the Second Instance

  1. Using the Sun Cluster command-line interface, perform a fail over to the first node.

    For example:

    # /usr/cluster/bin/scswitch -z -g CAL-CS2-RG -h Node1
  2. Edit the configuration file, ics.confby adding the parameters shown in the example that follows.


    Note –

    The values shown are examples only. You must substitute your own information for the values in the example.

    Back up the ics.conf file before starting this step.


    ! The following changes were made to configure Calendar Server
    ! Highly Available
    !
    local.server.ha.enabled="yes"
    local.server.ha.agent="SUNWscics"
    service.http.listenaddr="IPAddressCS2"
    local.hostname="LOG-HOST-CS2-RS"
    local.servername="LOG-HOST-CS2-RS"
    service.ens.host="LOG-HOST-CS2-RS"
    service.http.calendarhostname="LOG-HOST-CS2-RS-Domain.com"
    local.autorestart="yes"
    service.listenaddr = "IPAddressCS2"

    Note –

    The value for service.http.calendarhostname must be a fully qualified hostname.


  3. Using the Sun Cluster command-line interface, create a Calendar Server resource group.

    Create a Calendar Server resource group and enable it.

    For example:

    ./scrgadm -a -j CAL-SVR-CS2-RS -g CAL-CS2-RG
          -t SUNW.scics -x ICS_serverroot=/cal-svr-baseCS2
          -y Resource_dependencies=CAL-HASP-CS2-RS,LOG-HOST-CS2-RS
    
    ./scrgadm -e -j CAL-SVR-CS2-RS
  4. Using the Sun Cluster command-line interface to test the successful creation of the calendar resource group, perform a fail over to the second node, which is primary node for this Calendar Server instance.

    For example:

    ./scswitch -z -g CAL-CS2-RG -h Node2

    Your have now finished installing and configuring a symmetric HA Calendar Server.