Configuring Web Application Clusters on Microsoft Cluster Service

on-site-related topic

Using Microsoft Cluster nodes you can create a web application cluster that has the same availability characteristics as the Microsoft Cluster. When the node of the central Redwood Server fails or becomes unreachable its service is moved by Microsoft Cluster Service to a backup node. The DataRootDirectory where configuration and output files are stored as well as the installation directory must not reside on a NAS (NFS or SMB share). SAN file systems may be considered local (if they are mounted via iSCSI, for example).

Note: Redwood recommends strongly against installing the software on a networked file system. If this recommendation is ignored, and you have random errors that Redwood believes are caused by the NAS (NFS or SMB share), that Redwood cannot reproduce on local storage, you will be required to demonstrate that the issue can be reproduced when installed on local storage. The resolution to this issue may require that you reinstall on local storage.

Cluster Fail Over

Configure each pair of active-passive nodes with the same hostname, that way you may use a single license for each pair. Both nodes of a pair should share a filesystem, which should be used to store data. You use the System_SetSystemDataRootDirectory Process Definition to set the storage location of process data.

Prerequisites

To create a service that is managed by the Microsoft Cluster Service you need:

  • A Microsoft Windows Server cluster consisting of at least two nodes.
  • A shared physical drive that is available on those nodes.

Procedure

  1. Deploy the web application on your application servers.
  2. Start the application server housing the admin server on the first node and as usual, create the database objects. If you are using Redwood Platform, start the adminserver1 with the j2ee/cluster/adminserver1/bin/start.bat shell script.
  3. Stop the admin server once the database objects have been created (j2ee/cluster/adminserver1/bin/stop.bat on Redwood Platform) and start the application server housing the scheduler web application. If you are using Redwood Platform, start the server1 using the j2ee/cluster/server1/bin/start.bat shell script.
  4. Once the scheduler web application has finished populating the database and has come up, log in and install the license.
  5. Shut down the application server if started and install a Windows service using the <install_dir>/j2ee/cluster/global/bin/rw_service.bat shell script.
  6. Start the service, ensure the web application comes up properly and that you can log in, then stop the service again.
  7. Fail-over to the other node and perform the last two steps for the new node.
  8. Submit the Process Definition System_SetSystemDataRootDirectory with the parameter Directory pointing to a directory on the shared filesystem.
  9. Use the Microsoft Cluster Administrator software to add a new resource that is in the same group as the cluster IP address and shared physical disk. Ensure that the central Redwood Server is made dependent on both resources.
  10. Start the scheduler resource. The cluster group will show that the Scheduler is off-line. Bring the scheduler online. Move the cluster group to a different node to verify that the scheduler service can run on all nodes.
  11. To verify that everything works, submit and run a process (for example System_Sleep ). Move the cluster group to a different node. Run another process.

Values

Here is an example of the data that is filled in

  • New Resource
Copy
  Name: Scheduler <instance>
  Description: Redwood Server Scheduler
  Resource Type: Generic Service
  Group: Suggested: same group as the IP address and physical disk
  • Possible Owners
Copy
  Add the nodes in the cluster that have the scheduler installed.
  • Dependencies
Copy
  Add the Cluster IP Address and the physical disk.
  • Generic Service Parameters
Copy
  Service name: jcs_<instance>   (MUST be already present on the nodes set in Window 2)
  Start parameters: Empty.
  • Registry Replication is not needed, choose Finish.