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 Re: Tomcat 6.0.35 : Cluster and new node
Date Tue, 27 Dec 2011 15:46:58 GMT
Ok thanks for the informations :D

Le 27/12/2011 14:39, Pid * a écrit :
> On 27 Dec 2011, at 12:07, "Cédric SAMSON"<cedric.samson@adeuxi.com>  wrote:
>
>> Yes I tried and it works fine, but I just want all is automatic.
> FarmWarDeployer doesn't do that.
> It is a push mechanism rather than a repository of applications queued
> for deployment.
>
>
> p
>
>
>> I mean, a machine crash, we have to change it.
>> The new machine has :
>>
>> 1. the same IP
>> 2. the same name
>> 3. the same tomcat configuration (but without the war files already
>>    deployed)
>>
>> as the previous machine (in order to not restart the load balancer and
>> not interrupt the service).
>>
>> The best for me is that all the war in the watchdir of the master node
>> (the one with watchEnabled="true" ) are deployed in this new machine
>> because the contexts don't yet exist on this node.
>> It's only for machine replacement purpose.
>>
>> For a "real" new node, we are force to reboot the cluster after
>> declaring the new node in the balancer.
>>
>> Thanks for helping
>>
>> Le 27/12/2011 12:09, Pid * a écrit :
>>> On 26 Dec 2011, at 14:33, "Cédric SAMSON"<cedric.samson@adeuxi.com>  
wrote:
>>>
>>>> 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 : *
>>> The term 'slave' is an odd one to use here.
>>>
>>>
>>>> <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).
>>> Did you try to deploy the app again after the new node has joined?
>>>
>>>
>>> p
>>>
>>>
>>>> Best regards
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>
>>>
>>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
>


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


Mime
View raw message