High availability (failover) clustering in Windows Server using Apache Tomcat

This page describes a usage or software configuration that is not supported by IBM.

Table of contents

Overview
Setting up a Microsoft Cluster
Adding the Team Server Group
Install the RTC Server as a Service
Add the Service to the Cluster
Jazz Build Engine in a failover cluster
References

Overview

For those that are running Windows Server, failover clustering can be used to keep IBM Rational Team Concert (RTC) online should a server fail or critical maintenance is required. Whilst this high availability option does not address any load balancing requirements, it does give the Jazz Team Server (JTS) added redundancy. This was trialed using Apache Tomcat as the application server and Microsoft SQL Server 2005 as the database. I believe that Derby could be used although the disk size allocated to the RTC server would need to incorporate projected CCM usage. With the database separate, the RTC server does not expand in any vast sizes.


Setting up a Microsoft Cluster

The steps to achieve a generic fail over cluster can be found on Microsoft TechNet. This will list how to achieve a cluster but with no resource groups to manage the JTS. Microsoft have written a guide on clustering Server 2003

Set up another disk as per the TechNet article. This will be the drive in which the Jazz Team Server is installed. Also decide upon the network name of the JTS and reserve a static IP address. This is the network interface that will be used to access the JTS.


Adding the Jazz Team Server Group

Open Cluster Administrator (Start > Administrative Tools > Cluster Administrator) and right click to add a new Group. This is the group which will manage the Jazz Team Server. Set the preferred owner. In this example, the group name is set to Jazz Team Server.

Adding Resources

Right click and add the following resources. The drives and names can be amended to suit.

  • Physical Disk
    • Name :- Disk K:
    • Resource Type :- Physical Disk
    • Group :- Jazz Team Server
    • Possible Owners :- All nodes of the cluster
    • Dependencies :- None
    • Disk :- K:
  • IP Address
    • Name :- JTS IP Address
    • Resource Type :- IP Address
    • Group :- Jazz Team Server
    • Possible Owners :- All nodes of the cluster
    • Dependencies :- None
    • TCP/IP Address Parameters :- As per the planned IP address reserved during the planning phase
  • Network Name
    • Name :- JTS Network Name
    • Resource Type :- Network Name
    • Group :- Jazz Team Server
    • Possible Owners :- All nodes of the cluster
    • Dependencies :- JTS IP Address
    • Name :- JTS-Server

Install the RTC Server as a Service

Now RTC Server can be installed. The post installation set up tasks though will have to wait until the cluster is fully operational and can be communicated with via the network name and IP address. The way that the Microsoft Cluster Service (MSCS) communicates with RTC is by installing the RTC server as a service. These next steps must be followed on each node.

  • Install as a service. As I have used Apache Tomcat in my installation, follow these instructions to install Tomcat as a service. If you change the name of the service, ensure all nodes have the service named the same. By default, the service name is “Tomcat5”. The startup type must be set to manual.
  • Move the group. As this has installed the service on one node, the disk must be moved to another node to install the service there. This can be achieved by right clicking the group and selecting Move Group to bring it online elsewhere.

Repeat the service installation for each node


Add the Service to the Cluster

Now all hosts have the service installed, MSCS can now manipulate it as a Generic Service. To achieve this, you must return to Cluster Administrator, select the Jazz Team Server group, right click and add a new resource. The example below lists the defaults. The dependencies are required to make the service wait for both the physical disk and the network availability.

  • Name :- Jazz Team Server
  • Resource Type :- Generic Service
  • Group :- Jazz Team Server
  • Possible Owners :- All nodes of the cluster
  • Dependancies :- Disk K: and JTS Network Name
  • Service Name :- Tomcat5
  • Start Parameters :- Left blank
  • Use Network Name for computer name :- Ticked

Now to start and stop the server, you can open Cluster Administrator and take the RTC Server offline, or move the host to carry out preventative maintenance. Now that the RTC server is online and functional, the post installation tasks can be completed using the RTC Group virtual name.


Jazz Build Engine in a failover cluster

The same principal can be applied to the Jazz Build Engine (JBE). Once the service has been installed on all nodes and the startup type is set to manual, MSCS can manage the services for keeping a build engine online to service build requests.


References


About the author

Terry Taylor is an IT Administrator for the Tornado In-Service Software Team at RAF Boscombe Down. He has always had a computer apart somewhere from the ZX Spectrum and 086 PC’s through to todays workstations. Always working towards continuous improvement, he has found simpler or better ways of working in many areas of IT Administration. He can be contacted at Terry.Taylor746@mod.uk.

Feedback
Was this information helpful? Yes No 0 people rated this as helpful.