Para hacer que las aplicaciones funcionen con el cluster podemos hacerlo de dos formas:
Además de lo anterior hay que tener en cuenta en la aplicación lo siguiente :
Para desplegar la aplicación que queramos configurar en alta disponibilidad, antes de desplegarla en cada uno de los tomcats, deberemos añadir la propiedad <distributable /> en el web.xml de la aplicación.
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <distributable />
Permite que poniendo un war dentro de la carpeta definida como watchDir, el war en cuestión se despliegue en todos los servidores del cluster.
Esto sólo debe de hacerse en el servidor que consideremos como master de la configuración para tener un unico punto de publicación. En el resto de los nodos del cluster ponemos el parametro watchEnabled=false
Añadir las siguientes líneas al server.xml en la parte de configuración del cluster
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/opt/tomcat/temp/" deployDir="/opt/tomcat/webapps/" watchDir="/opt/tomcat/despliegue/" watchEnabled="enable"/>