tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From C├ędric SAMSON <cedric.sam...@adeuxi.com>
Subject Tomcat 6.0.35 : Cluster and new node
Date Mon, 26 Dec 2011 13:50:18 GMT
Hi all,


Context :
   I have a cluster with 2 nodes (both on linux).

   * The master node is configured as below : *

<Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat-1">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
resourceName="UserDatabase"/>

<Host name="localhost"  appBase="webapps"
             unpackWARs="true" autoDeploy="true"
             xmlValidation="false" xmlNamespaceAware="false">

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" 
channelSendOptions="8">

<Manager className="org.apache.catalina.ha.session.DeltaManager"
                    expireSessionsOnShutdown="false"
                    notifyContainerListenersOnReplication="true"
                    notifySessionListenersOnReplication="true"
                    notifyListenersOnReplication="true"/>

<Channel className="org.apache.catalina.tribes.group.GroupChannel">

<Membership className="org.apache.catalina.tribes.membership.McastService"
                         address="228.0.0.3"
                         port="45566"
                         frequency="500"
                         dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                       address="192.168.30.51"
                       port="3100"
                       autoBind="100"
                       selectorTimeout="5000"
                       maxThreads="6"/>

<Sender 
className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport 
className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter="" 
statistics="true"/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                     tempDir="/usr/local/tomcat/webapps/tempdir"
                     deployDir="/usr/local/tomcat/webapps/"
                     watchDir="/usr/local/tomcat/watchdir/"
                     watchEnabled="true"/>

<ClusterListener 
className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener 
className="org.apache.catalina.ha.session.ClusterSessionListener"/>

</Cluster>

</Host>
</Engine>

   * The slave node is configured as below : *

<Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat-1">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" 
resourceName="UserDatabase"/>

<Host name="localhost"  appBase="webapps"
             unpackWARs="true" autoDeploy="true"
             xmlValidation="false" xmlNamespaceAware="false">

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" 
channelSendOptions="8">

<Manager className="org.apache.catalina.ha.session.DeltaManager"
                    expireSessionsOnShutdown="false"
                    notifyContainerListenersOnReplication="true"
                    notifySessionListenersOnReplication="true"
                    notifyListenersOnReplication="true"/>

<Channel className="org.apache.catalina.tribes.group.GroupChannel">

<Membership className="org.apache.catalina.tribes.membership.McastService"
                         address="228.0.0.3"
                         port="45566"
                         frequency="500"
                         dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                       address="192.168.30.54"
                       port="3100"
                       autoBind="100"
                       selectorTimeout="5000"
                       maxThreads="6"/>

<Sender 
className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport 
className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
<Interceptor 
className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter="" 
statistics="true"/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                     tempDir="/usr/local/tomcat/webapps/tempdir"
                     deployDir="/usr/local/tomcat/webapps/"
                     watchDir="/usr/local/tomcat/watchdir/"
                     watchEnabled="false"/>

<ClusterListener 
className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener 
className="org.apache.catalina.ha.session.ClusterSessionListener"/>

</Cluster>

</Host>
</Engine>

All works fine.

I try to add a new war file in the master node folder 
"/usr/local/tomcat/watchdir/", after few seconds, the war is correctly 
deployed on both nodes.
Now i try to add a third node configured exactily as the slave (i just 
change the IP address of receiver to match with the one of the machine). 
In the master node log, i can see a new member is added, with the 
correct IP, but the war already deployed on the cluster aren't deployed 
on the new node.

  * Question : *
     What's the way to be able to auto deploy on new node without 
restart the master node ? (when i restart the master node, all the nodes 
of the cluster are OK).

Best regards


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message