Sun Java logo     Previous      Contents      Index      Next     

Sun logo
Sun Java System Calendar Server 6 2005Q1 Administration Guide 

Chapter 7
Configuring for High Availability (Failover Service)

Configuring Calendar Server for high availability (HA) provides for monitoring of and recovery from software and hardware failures. The Calendar Server high availability feature is implemented as a failover service. This chapter describes a Calendar Server HA configuration using Sun Cluster software.

This chapter describes how to install and configure a Calendar Server HA service, including:

Appendix C, "High Availability (HA) Configuration Worksheets" provides a set of worksheets to help you plan a Calendar Server HA configuration.


Requirements for an HA Configuration

A Calendar Server HA configuration requires the software shown in Table 7-1. (QFS is not supported, because an HA agent is not available.)

Table 7-1  Supported Software for a Calendar Server HA Configuration 

Software and Version

Notes and Patches

Solaris 9 OS

SPARC Platform only

All versions of Solaris 9 OS are supported.

Solaris 9 OS requires Sun Cluster 3.0 U3 or later.

Solaris 9 OS includes Solaris Logical Volume Manager (LVM).

Solaris 8 OS

SPARC Platform only

Solaris 8 Maintenance Update 7 (MU7) OS or later plus required patches.

Sun Cluster 3.0 U3 or 3.1

Sun Cluster software must be installed and configured on all nodes in the cluster.

To install Sun Cluster 3.1, use the Java Enterprise System installer by following the installation process in the Sun Java Enterprise System 2005Q1 Installation Guide.

After you install the Sun Cluster software, you must configure the cluster. For information, refer to the Sun Cluster System Administration Guide for Solaris OS. For related documentation, see Sun Cluster Documentation.

Sun Cluster Patches

For the Solaris 9 OS, see the Sun Cluster InfoDoc 49704:

http://sunsolve.Central.Sun.COM/cgi/retrieve.pl?doc=finfodoc%2F49704

For the Solaris 8 OS, see the Sun Cluster InfoDoc 49705:

http://sunsolve.Central.Sun.COM/cgi/retrieve.pl?doc=intinfodoc%2F49705

Solstice DiskSuite 4.x

Solstice DiskSuite is available for Solaris 8 OS only.

Solstice DiskSuite is not required for Solaris 9 OS, which includes the Logical Volume Manager (LVM).

Veritas Volume Manager (VxVM) 3.x

Solaris 8 OS requires version 3.2 or later plus required patches.

Solaris 9 OS requires version 3.5 or later plus required patches.

Veritas File System (VxFS) 3.x

Solaris 8 OS requires version 3.4 or later plus required patches.

Solaris 9 OS requires version 3.5 or later plus required patches.

HAStoragePlus requires patch 110435-08 or later.

 


Installation and Configuration

The Calendar Server HA configuration examples in this section use the following names:

Name in Example

Description

/global/cal

Global file-system mount point

cal-logical-host

Logical host name

cal-logical-host-ip

Logical host IP numeric address

cs-admin@cal-logical-host

Email address for the Calendar Server administrator

cal-node-1

Node 1

cal-node-2

Node 2

cal-resource-group

Calendar resource group

cal-resource-group-store

Calendar Server storage resource

cal-resource

Calendar Server resource

To install and configure a Calendar Server HA configuration

Log in as root

To install and configure a Calendar Server HA configuration, log in as or become superuser (root) and specify a console or window for viewing messages sent to /dev/console.

Prepare Each Node in the Cluster

On each node in the cluster, perform these steps:

  1. Create the Calendar Server runtime user and group under which Calendar Server will run as follows:
    1. Add icsgroup (or the value you selected) to the /etc/group file.
    2. Add icsuser (or the value you selected) to the /etc/passwd file.
    3. Note The default names are icsuser and icsgroup. You can use other names if you prefer, but the UID and GID numbers must be the same on all nodes in the cluster. The user name should not be root.

      You must provide the user and group names when you Configure Calendar Server on Node 1.

  2. Add or set the following fields in the /etc/vfstab file:

Install Sun Java Enterprise System Products and Packages

The installation of Sun Java Enterprise System products, including Calendar Server, has significantly changed from earlier Sun branded products (for example, Sun ONE, and iPlanet). To install Sun Java Enterprise System products (2003Q4 and later), you must use the Sun Java Enterprise System installer.

For information about the installer, refer to the Sun Java Enterprise System 2005Q1 Installation Guide.

Table 7-2 describes the Sun products and packages required for a Calendar Server HA configuration.

Table 7-2  Sun Products and Packages Required for a Calendar Server HA Configuration

Product or Package

Node 1

Node 2

Sun Cluster Software

yes

yes

Calendar Server (6.0 and later)

yes

no

Sun Cluster Agent for Calendar Server (SUNWscics package)

yes

yes

Shared components (SUNWicu, SUNWldk, SUNWpr, SUNWsasl, and SUNWtls packages)

yes

yes

Node 1

On node 1, install all selected products and packages using the Java Enterprise System installer. When you install Calendar Server, you must specify a directory other the default directory. See Selecting the Calendar Server Installation Directory.

Node 2

On node 2, follow these steps:

  1. Install Sun Cluster and the Sun Cluster Agent for Calendar Server (SUNWscics package) using the Java Enterprise System installer.
  2. Note You cannot install only the Sun Cluster Agent for Calendar Server. When you chose the Sun Java System Agents for Sun Cluster, the Java Enterprise System installer installs all agents.

  3. Install shared components (SUNWicu, SUNWldk, SUNWpr, SUNWsasl, and SUNWtls packages) using the pkgadd command. See Installing Shared Components.

Selecting the Calendar Server Installation Directory

For Calendar Server, the Java Enterprise System installer uses the following default installation directory: /opt

However, for an HA configuration, you must specify a global installation directory. For example: /global/cal/opt/

Installing Shared Components

To make the required shared components available on node 2, you must install the following packages:

These packages are available in the following directories:

.../Solaris_sparc/Product/shared_components/Packages/SUNWldk
.../Solaris_sparc/Product/shared_components/Solaris_8/Packages
.../Solaris_sparc/Product/shared_components/Solaris_9/Packages

To install these packages, change to one of the directories shown above and use the pkgadd command. For example:

# pkgadd -d . SUNWicu SUNWpr SUNWsasl SUNWtls

 

Configure the Logical Host

To configure the logical host:

  1. Create a Calendar Server failover resource group named cal-resource-group:
  2. # scrgadm -a -g cal-resource-group -h cal-node-2,cal-node-1

  3. Add the logical host name named cal-logical-host to the resource group. Calendar Server will listen on this host name.
  4. # scrgadm -a -L -g cal-resource-group -l cal-logical-host

  5. Bring the resource group online:
  6. # scswitch -Z -g cal-resource-group

Activate the Storage Resource

To activate the storage resource:

  1. Register the storage resource specifying the mount point as the ServicePaths property:
  2. # scrgadm -a -j cal-resource-group-store -g cal-resource-group -t SUNW.HAStorage \
              -x ServicePaths=/global/cal \
              -x AffinityOn=True

  3. Enable the storage resource:
  4. # scswitch -e -j cal-resource-group-store

If SUNW.HAStoragePlus has also chosen to setup a global file system (GFS), the FileSystemMountPoints property must be set instead of ServicePaths.

Configure Calendar Server

After you install Calendar Server, run the Directory Server Setup script (comm_dssetup.pl) and the Calendar Server configuration program (csconfigurator.sh) as described in the Sun Java SystemCalendar Server 6 2005Q1 Administration Guide.

Table 7-3 describes the specific configuration information that you must provide for an HA configuration.

Table 7-3  Calendar Server Configuration Options for an HA Configuration 

Configuration Panel

Description

Runtime Configuration

Runtime User ID and Group ID

  • Runtime user ID is the user name under which Calendar Server will run. This name should not be root. The default is icsuser.
  • Runtime Group ID is the group under which Calendar Server will run. The default is icsgroup.

Although the configuration program can create these names for you, you should create them before you run the configuration program. See Prepare Each Node in the Cluster.

These names must be in the following files:

  • icsuser (or the name you select) in /etc/passwd on all nodes in the cluster
  • icsgroup (or the name you select) in /etc/group on all nodes in the cluster

Calendar Server Startup

Do not check either of these options.

  • Start after successful installation
  • Start on system startup

Select Directories

For the location of the database, temporary, and log files, select global partitions. For example:

  • Database: /global/cal/var/csdb
  • Temporary Files: /global/cal/var/tmp
  • Logs: /global/cal/var/logs
  • Backups:/global/cal/var/hotbackupdb, and /global/cal/var/archivedb

Locate Automatic Backup Directories on Shared Storage

When configuring automatic backups for HA, backup directories must reside on shared storage partitions to prevent incomplete copies on individual nodes of the cluster. Pay particular attention to the size of the partition, since backup directories are large.

Disk space calculations fail for symbolic links. Therefore, do not use symbolic links for automatic backup directories.

Relocate the Calendar Server config Directory

The Calendar Server stores configuration files in the config directory. For Calendar Server 6 2005Q1, the config directory has been relocated. Its new location is:

/etc/opt/SUNWics5/config/

Symbolic links to the old config directory are kept in the following directories:

After running the Calendar Server configuration program, csconfigurator.sh, remove the symbolic link in each of the old directories and replace it with a link to the new directory as described in the procedures that follows. Note that these procedures preserve the settings from the original configuration files found in /etc/opt/SUNWics5/config.

Before you start, make sure the contents of the config directory are owned by icsuser and icsgroup (or your choices you specified for the runtime User ID and Group ID):

# ls -ld config
... icsuser icsgroup ... config/

To Change the Symbolic Link Found in /opt/SUNWics5/cal:

  1. Change to the /global/cal/opt/SUNWics5/cal directory, For example:
  2. # cd /global/cal/opt/SUNWics5/cal/

    where /global/cal is the file-system mount point.

  3. Check that config is a symbolic link to the new config directory. For example:
  4. # ls -l config
    ... config -> /etc/opt/SUNWics5/config/

  5. In the /opt/SUNWics5/cal/ directory, remove the config symbolic link:
  6. # cd /opt/SUNWics5/cal

    # rm config

  7. Copy the contents of the /etc/opt/SUNWics5/config directory into the new HA directory, preserving the ownership and permissions:
  8. # cd /global/cal/opt/SUNWics5/cal

    # cp -pr /etc/opt/SUNWics5/config .

To Change the Symbolic Link Found in /opt/SUNWics5/lib:

  1. In the /global/cal/opt/SUNWics5/cal/lib directory, check that config is a symbolic link to /etc/opt/SUNWics5/config.
  2. # cd /global/cal/opt/SUNWics5/cal/lib
    # ls -l config
    ... config -> /etc/opt/SUNWics5/config/

  3. Remove the config symbolic link:
  4. # rm config

  5. Create a new symbolic link to the new config location:
  6. # ln -s ../config config

  7. Verify the new link:
  8. # ls -l config
    ... config -> ../config/

To Change the Symbolic Link Found in /opt/SUNWics5/sbin:

  1. In the /global/cal/opt/SUNWics5/cal/sbin directory, check that config is a symbolic link to /etc/opt/SUNWics5/config.
  2. # cd /global/cal/opt/SUNWics5/cal/sbin
    # ls -l config
    ... config -> /etc/opt/SUNWics5/config/

  3. Remove the config symbolic link:
  4. # rm config

  5. Create a new symbolic link to the new config location:
  6. # ln -s ../config config

  7. Verify the new link:
  8. # ls -l config
    ... config -> ../config/

 


Note

If you need to uninstall Calendar Server, use the Java Enterprise System uninstaller, which removes the SUNWics5 and SUNWica5 packages.

For a Calendar Server HA configuration, however, you must first remove the relocated config directory and all of its contents before you run the uninstaller. For example:

# cd /global/cal/opt/SUNWics5/cal/
# rm -rf config

If you do not remove the config directory, the uninstall operation fails for the SUNWics5 package.


 

Edit the Calendar Server ics.conf File

In the /opt/SUNWics5/cal/config directory, edit the ics.conf configuration file as follows:

  1. Add the following parameters:
  2. local.server.ha.enabled = "yes"
    local.server.ha.agent = "SUNWscics"

  3. Rename the service.listenaddr parameter to service.http.listenaddr and then set the parameter to the IP address of the logical host. For example:
  4. service.http.listenaddr = "cal-logical-host-ip"

    where "cal-logical-host-ip" is the numeric IP address of the logical host. For example: 123.321.12.2.

  5. Change all parameters that refer to a local host name to the logical host name. For example:
  6. local.hostname = "cal-logical-host"
    local.servername = "cal-logical-host"
    service.ens.host = "cal-logical-host"
    service.http.calendarhostname = "cal-logical-host.sesta.com"

 

Start the HA Calendar Server

Before you start the HA Calendar Server, register the calendar resource type SUNWscics and create a calendar resource as follows:

  1. Register the calendar resource type:
  2. # scrgadm -a -t SUNW.scics

  3. Create the calendar resource:
  4. # scrgadm -a -j cal-resource -g cal-resource-group -t SUNW.scics \
           -x Confdir_list=/global/cal/cal-resource-group \
           -y Resource_dependencies=cal-resource-group-store \
           -y Port_list=80/tcp

  5. Enable the resource and start Calendar Server:
  6. # scswitch -e -j cal-resource

Verify the HA Configuration

After you start Calendar Server check that all required processes or daemons (csadmind, enpd, csnotifyd, and cshttpd) are running.

Additionally, conduct a switchover of the service to the backup node to ensure the high availability. For example, if the service is running on cal-node-1, issue the following command to switch the service to cal-node-2.

# scswitch -z -g cal-resource-group -h cal-node-2

Then check that all processes are started on cal-node-2.

For troubleshooting, error messages are written to the console and /var/adm/messages.

The /var/cluster/rgm/rt/SUNW.scics/loglevel file contains the logging level. Use ‘9’ for maximum verbosity.

For information about using the logging facility, refer to the Sun Cluster Documentation.


Starting and Stopping Calendar Server HA Service

To start and stop the Calendar Server HA service, use the Sun Cluster scswitch command. Do not use the Calendar Server start-cal, csstart, stop-cal, or csstop utilities. For example:

To start the Calendar Server HA service:

# scswitch -e -j cal-resource

To stop the Calendar Server HA service:

# scswitch -n -j cal-resource

To restart the Calendar Server HA service:

# scswitch -R -j cal-resource

For information about the Sun Cluster scswitch command, refer to the Sun Cluster Reference Manual for Solaris OS.


Related Documentation

Sun Java Enterprise System Documentation

Sun Cluster Documentation



Previous      Contents      Index      Next     


Part No: 819-0024-10.   Copyright 2005 Sun Microsystems, Inc. All rights reserved.