Sun Java System Application Server Enterprise Edition 8.1 2005Q2 High Availability Administration Guide

Setting Up High Availability Session Persistence

This section explains how to set up high availability session persistence, with the following topics:

ProcedureTo Set Up High Availability Session Persistence

Before You Begin

High availability session persistence is incompatible with dynamic deployment, dynamic reloading, and auto-deployment. These features are for development, not production environments, so you must disable them before enabling HA session persistence. For information about how to disable these features, see Chapter 2, Deploying Applications, in Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Administration Guide.

  1. Create an Application Server cluster.

    For more information, see To Create a Cluster .

  2. Create an HADB database for the cluster.

    For more information , see configure-ha-cluster(1).

  3. Set up HTTP load balancing for the cluster.

    For more information , see Setting Up HTTP Load Balancing

  4. Enable availability for the desired application server instances and web or EJB containers.

    Then configure the session persistence settings. Choose one of these approaches:

  5. Restart each server instance in the cluster.

    If the instance is currently serving requests, quiesce the instance before restarting it so that the instance gets enough time to serve the requests it is handling. For more information, see Disabling (Quiescing) a Server Instance or Cluster

  6. Enable availability for any specific SFSB that requires it.

    Select methods for which checkpointing the session state is necessary. See Configuring Availability for an Individual Bean

  7. Make each web module distributable if you want it to be highly available.

  8. Enable availability for individual applications, web modules, or EJB modules during deployment.

    See Configuring Availability for an Individual Application or EJB Module

    In the Administration Console, check the Availability Enabled box, or use the asadmin deploy command with the --availabilityenabled option set to true.

Enabling Session Availability

You can enable session availability at five different scopes (from highest to lowest):

  1. Server instance, enabled by default. For instructions, see next section, Enabling Availability for a Server Instance .

  2. Container (web or EJB), enabled by default. For information on enabling availability at the container level, see:

  3. Application, disabled by default

  4. Stand-alone web or EJB module, disabled by default

  5. Individual SFSB, disabled by default

To enable availability at a given scope, you must enable it at all higher levels as well. For example, to enable availability at the application level, you must also enable it at the server instance and container levels.

The default for a given level is the setting at the next level up. For example, if availability is enabled at the container level, it is enabled by default at the application level.

When availability is disabled at the server instance level, enabling it at any other level has no effect. When availability is enabled at the server instance level, it is enabled at all levels unless explicitly disabled.

Enabling Availability for a Server Instance

To enable availability for a server instance, use the asadmin set command to set the configuration’s availability-service.availability-enabled property to true.

For example, if config1 is the configuration name:


asadmin set --user admin --passwordfile password.txt 
--host localhost 
--port 4849 
config1.availability-service.availability-enabled="true"

ProcedureTo Enable Availability for the Server Instance with Admin Console

  1. In the tree component, expand the Configurations node.

  2. Expand the node for the configuration you want to edit.

  3. Select the Availability Service node.

  4. In the Availability Service page, enable instance level availability by checking the Availability Service box.

    To disable it, uncheck the box.

    Additionally, you can change the Store Pool Name if you changed the JDBC resource used for connections to the HADB for session persistence. For details, see configure-ha-cluster(1).

  5. Click on the Save button.

  6. Stop and restart the server instance.