How to enable Terracotta clustering in WebMethod Integration Server.

Reading Time: 3 minutes

What is Terracotta in WebMethods ?

In order to cluster more than one integration server , terracotta clustering is used. Terracotta has two components the first is Terracotta Server Array and the local Ehcache library. These components help in in-memory caching and clustering.

The TSA is installed when there are more than one server and they need to be clustered. So clustering in WebMethod IS is provided to tackle the in memory and processes that the servers of same pool deal with.

Terracotta cluster for two Integration server

When to enable terracotta clustering in WebMethod ?

As the term clustering itself suggest that it should be done when there are more than one IS . The clustering is enabled to get a parallel memory caching of XML parser docs and service results and also server side caching of sessions , auth tokens etc.

Steps to follow for enabling the terracotta clustering.

1 – Kill the already running terracotta process in the server.

So in this step first ssh in to the server then run the following commmand:

ps aux | grep TC

With the above command you will get the PID of running Terracotta process .Then kill the process using below command.

kill -9 PID

NOTE: This steps needs to be done all the integration server that will be clustered.

2 – Shutdown the IS.

In this step all you need to do is shutdown the integration server. For this step proceed with the below steps mentioned.

To shutdown the IS first ssh into the server then proceed to the below path.

cd  /apps/webmethods/wm_1011/profiles/IS_default/bin/ 

On the above path there is shutdown.sh script. All you need to do is run the script.

nohup ./shutdown.sh

Note: Follow this step on all the IS

3 – Bring up the terracotta service

For this step all needs to be done is to first ssh in to the server . Then proceed to the below path.

cd  /apps/webmethods/wm_1011/Terracotta/server/wrapper/bin/ 

On the above path run the script startup.sh

nohup ./startup.sh

4 – Now start the integration server.

To start the integration server you need to follow a very simple step. Proceed to the below path after doing ssh into the server .

cd  /apps/webmethods/wm_1011/profiles/IS_default/bin/  

and then run the startup.sh script.

nohup ./satrtup.sh

After this once the server is up all you need to do is login into the console with the id and password . Over there move towards the setting option.Over there is a clustering option.

The above image shows the clustering option. Once you will click on the option it will show the status as enabled or disabled.

The final status of clustering would be shown on the dashboard.

Conclusion

In the above blog we saw about the clustering of integration server.This basically helps to lower the downtime of the application running on the IS. It helps to achieve the caching of memory and also server side caching of cluster state.

Written by 

Rishivant is a enthusiastic devops learner at Knoldus. He believes in going 1% up everyday and showcases his learning in his work.