15.3 Configuring a Web Application to Provide High Availability Functionality for Your Vibe Site

After Novell Vibe is installed and running on multiple servers, you must provide additional software to provide high availability functionality. Because Vibe is based on Tomcat, you can use software that provides high availability for Tomcat.

  1. Install and configure one of the following Web applications to provide high availability for your Vibe site:

  2. Configure the Web application to establish the Vibe site URL, which then stays constant for Vibe users regardless of which Vibe server they access at any given time.

  3. Start the Web application with its new configuration settings.

  4. Test your Vibe site for high availability.

    • If you are using Apache Web server, Linux Virtual Services, or Microsoft Internet Information Services, users can immediately log in to the Vibe site again after a failover has occurred. The connection between the user’s browser and the Vibe site is maintained as the failover occurs.

    • If you are using Novell Access Manager, users must start a new browser session, then log in to the Vibe site after a failover has occurred. They cannot log in again from the same browser session because the connection between the user’s browser and the Vibe site must be reestablished after the failover.

The following sections provide examples of how to configure the Web applications:

15.3.1 Configuring Apache as a Load Balancer

The following example configuration uses the balancer module built into the newer Apache (version 2.2.4 and later) Web server. It is based on a widely used sticky session technique. Novell Vibe does not support session sharing/replication among Tomcat instances.

If you are using Novell Access Manager as described in Section 9.9, Configuring Single Sign-On with Novell Access Manager, you do not need to configure Apache to load balance as described in this section, because Access Manager provides this service.

NOTE:When you update your Vibe system, these settings are not preserved. You must redefine these settings each time you update your Vibe system.

To configure Apache to load balance:

  1. Install the Apache Web server on one server.

  2. Edit the /etc/sysconfig/apache2 file:

    1. Locate the following line:

      APACHE_MODULES=
      

      Then add the following lines:

      proxy
      proxy_ajp
      proxy_balancer
      

      The end result should look similar to the following:

      APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 reqtimeout proxy proxy_ajp proxy_balancer"
      
    2. Create the following new configuration file:

      /etc/apache2/httpd.conf.vibe
      
    3. Add the following section to the /etc/apache2/httpd.conf.vibe file, providing a BalancerMember line for each jvmRoute value in a Tomcat server.xml file.

      <Location /balancer-manager>
         SetHandler balancer-manager
         Order deny,allow
         Deny from all
         Allow from 127.0.0.1
      </Location>
      <Proxy balancer://cluster_name>
         BalancerMember ajp://vibe_server_1:8009 route=worker1
         BalancerMember ajp://vibe_server_2:8009 route=worker2
      </Proxy>
      <Location />
         ProxyPass balancer://cluster_name/ stickysession=JSESSIONID
      </Location>
      

      The values that you specify for the route setting (for example, worker1, worker2, etc.) must exactly match the values that you specify as the JVM Route setting during the Vibe installation, as described in Section 15.2, Installing the Vibe Software on Multiple Servers.

    4. Save the httpd.conf.vibe file.

  3. Reconfigure each Vibe server in the cluster so that each server has the same network information (hostname and ports) as the Apache Web server.

    For each Vibe server in the cluster:

    1. Run the Vibe installation program by reconfiguring the Vibe server.

      For information about how to reconfigure your Vibe server, see Section 11.0, Setting Configuration Options after Installation.

    2. On the Network Information page in the Vibe installation program, change the hostname in the Host field for each Vibe server. The hostname must match the DNS name that users use to access the Vibe service.

      For example, if the URL for you Vibe site is vibe.acme.com, you would specify vibe.acme.com in this field.

    3. Continue through the Vibe installation program for each Vibe server in the cluster, as described in Section 11.0, Setting Configuration Options after Installation.

  4. Restart Apache.

HINT:For enhanced performance when using the Internet Explorer browser to access a Vibe system that is using Apache as an SSL reverse-proxy server, change the Apache SSL exclusion regular expression configuration from the following:

SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0

to the following:

SetEnvIf User-Agent ".*MSIE [1-5].*"
nokeepalive ssl-unclean-shutdown
downgrade-1.0 force-response-1.0

SetEnvIf User-Agent ".*MSIE [6-9].*"
ssl-unclean-shutdown

15.3.2 Configuring Linux Virtual Server as a Load Balancer

Consult the following online sources for instructions for setting up Linux Virtual Server as a load balancer for your Novell Vibe site: