Yes MULTICAST is enabled i see that by too fact : first, ifconfig eth0 :
eth0 Link encap:Ethernet HWaddr 00:13:D4:45:A6:3F inet addr:192.168.2.102 Bcast:192.168.2.255 Mask:255.255.255.0 UP BROADCAST NOTRAILERS RUNNING ALLMULTI MULTICAST MTU:1500 Metric:1 RX packets:264493 errors:0 dropped:0 overruns:0 frame:0 TX packets:292063 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:98079150 (93.5 Mb) TX bytes:41007393 (39.1 Mb) ALLMULTI and MULTICAST is enabled on two serveur interface. second, as you see in my first post tcpdump track the UDP messages send between server. For sticky_session=true i' m not agree with you. In the connector documentation (see http://tomcat.apache.org/connectors-doc/config/workers.html) => Set sticky_session to *False* when Tomcat is using a Session Manager which can persist session data across multiple instances of Tomcat It' s my situation. So i' m alway in the trouble by thanks a lot for the verification ;) On 2/15/06, Peter Rossbach <[EMAIL PROTECTED]> wrote: > > Hey, > > 1) Clustering need sticky_session=true and is only design for > failover (see servlet spec). > 2) Are your sure that MULTICAST is enabled at eth0? > > regards > Peter > [EMAIL PROTECTED] > > > > Am 15.02.2006 um 02:26 schrieb David Avenante: > > > Hi, > > > > I' ve try to use Tomcat 5.5.15 in cluster mod. And after some work on > > configuration and test > > i seems to be on limit of my all possibilities ;) > > > > I try to use two tomcat in cluster with apache web server and > > mod_jk as > > connector. > > > > my Apache configuration look like : > > > > > > # workers.properties > > > > ps=/ > > > > # List the workers name > > worker.list=loadbalancer > > > > # ---------------- > > # First worker > > # ---------------- > > worker.node01.port=8009 > > worker.node01.host=agnes > > worker.node01.type=ajp13 > > worker.node01.lbfactor=1 > > #worker.node01.domain=cluster1 > > # ---------------- > > # Second worker > > # ---------------- > > worker.node02.port=9009 > > worker.node02.host=ovea-inspiron > > worker.node02.type=ajp13 > > worker.node02.lbfactor=1 > > #worker.node02.domain=cluster1 > > # ---------------------- > > # Load Balancer worker > > # ---------------------- > > worker.loadbalancer.type=lb > > worker.loadbalancer.sticky_session=false > > worker.loadbalancer.balanced_workers=node01,node02 > > > > As you can see i use two server ('agnes' IP : 192.168.2.102 and > > 'ovea-inspiron' IP : 192.168.2.103) > > I' ve coded a little aplication who read un file and create a > > sessions if > > session not exist. > > > > If i use the system in mod load balancing (with no cluster mod > > activate) > > all is great (my config is of course > > worker.loadbalancer.sticky_session=true > > ) > > > > So system run with session affinitu but the two server are > > accessible ;) > > > > Now i try to configure as cluster mode with session replication > > (my config is now worker.loadbalancer.sticky_session=3Dfalse) > > > > I configure my to server.xml like that : > > agnes (IP : 192.168.2.102) > > > > <Server port="8005" shutdown="SHUTDOWN"> > > <GlobalNamingResources> > > <Resource name="UserDatabase" auth="Container" > > type="org.apache.catalina.UserDatabase" > > description="User database that can be updated > > and saved" > > factory=" > > org.apache.catalina.users.MemoryUserDatabaseFactory" > > pathname="conf/tomcat-users.xml" /> > > > > </GlobalNamingResources> > > > > <Service name="Catalina"> > > <Connector port="8080" maxHttpHeaderSize="8192" > > maxThreads="150" minSpareThreads="25" > > maxSpareThreads="75" > > enableLookups="false" redirectPort="8443" > > acceptCount="100" > > connectionTimeout="20000" > > disableUploadTimeout="true" > > /> > > > > <Connector port="8009" enableLookups="false" > > redirectPort="8443" protocol="AJP/1.3" /> > > > > <Engine name="Catalina" defaultHost="localhost" > > jvmRoute="node01" > > > > > <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.cluster.tcp.SimpleTcpCluster" > > doClusterLog="true" > > clusterLogName="clusterlog" > > manager.className=" > > org.apache.catalina.cluster.session.DeltaManager" > > manager.expireSessionsOnShutdown="false" > > manager.notifyListenersOnReplication="true" > > manager.notifySessionListenersOnReplication="true" > > manager.sendAllSessions="true" > > manager.sendAllSessionsSize="500" > > manager.sendAllSessionsWaitTime="20"> > > > > <Membership className=" > > org.apache.catalina.cluster.mcast.McastService" > > mcastBindAddress="192.168.2.102" > > mcastAddr="224.0.0.1" > > mcastPort="45564" > > mcastFrequency="1000" > > mcastDropTime="30000"/> > > > > <Receiver className=" > > org.apache.catalina.cluster.tcp.ReplicationListener" > > tcpListenAddress="192.168.2.102" > > tcpListenPort="4000" > > tcpSelectorTimeout="100" > > tcpThreadCount="6" /> > > > > <Sender className=" > > org.apache.catalina.cluster.tcp.ReplicationTransmitter" > > replicationMode="fastasyncqueue" > > doTransmitterProcessingStats="true" > > doProcessingStats="true" > > doWaitAckStats="true" > > queueTimeWait="true" > > queueDoStats="true" > > queueCheckLock="true" > > ackTimeout="15000" > > waitForAck="true" > > keepAliveTimeout="80000" > > keepAliveMaxRequestCount="-1" /> > > > > </Host> > > </Engine> > > </Service> > > </Server> > > > > > > ovea-inspiron (IP : 192.168.2.103) > > <Server port="9005" shutdown="SHUTDOWN"> > > > > <GlobalNamingResources> > > <Resource name="UserDatabase" auth="Container" > > type="org.apache.catalina.UserDatabase" > > description="User database that can be updated > > and > > saved" > > factory=" > > org.apache.catalina.users.MemoryUserDatabaseFactory" > > pathname="conf/tomcat-users.xml" /> > > </GlobalNamingResources> > > > > <Service name="Catalina"> > > > > <Connector port="9080" maxHttpHeaderSize="8192" > > maxThreads="150" minSpareThreads="25" > > maxSpareThreads="75" > > enableLookups="false" redirectPort="8443" > > acceptCount="100" > > connectionTimeout="20000" > > disableUploadTimeout="true" > > /> > > > > <Connector port="9009" enableLookups="false" > > redirectPort="8443" protocol="AJP/1.3" /> > > > > <Engine name="Catalina" defaultHost="localhost" jvmRoute="node02" > > > <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.cluster.tcp.SimpleTcpCluster" > > doClusterLog="true" > > clusterLogName="clusterlog" > > manager.className=" > > org.apache.catalina.cluster.session.DeltaManager" > > manager.expireSessionsOnShutdown="false" > > manager.notifyListenersOnReplication="true" > > manager.notifySessionListenersOnReplication="true" > > manager.sendAllSessions="true" > > manager.sendAllSessionsSize="500" > > manager.sendAllSessionsWaitTime="20"> > > > > <Membership className=" > > org.apache.catalina.cluster.mcast.McastService" > > mcastBindAddress="192.168.2.103" > > mcastAddr="224.0.0.1" > > mcastPort="45564" > > mcastFrequency="1000" > > mcastDropTime="30000"/> > > > > <Receiver className=" > > org.apache.catalina.cluster.tcp.ReplicationListener" > > tcpListenAddress="192.168.2.103" > > tcpListenPort="4000" > > tcpSelectorTimeout="100" > > tcpThreadCount="6" /> > > > > <Sender className=" > > org.apache.catalina.cluster.tcp.ReplicationTransmitter" > > replicationMode="fastasyncqueue" > > doTransmitterProcessingStats="true" > > doProcessingStats="true" > > doWaitAckStats="true" > > queueTimeWait="true" > > queueDoStats="true" > > queueCheckLock="true" > > ackTimeout="15000" > > waitForAck="true" > > keepAliveTimeout="80000" > > keepAliveMaxRequestCount="-1" /> > > > > </Host> > > </Engine> > > </Service> > > </Server> > > > > > > I'm user linux so i've compiled my kernel with multicat kernel option > > I add the rout like rooute add -host 224.0.0.1 dev eth0 > > > > N.B : why 224.0.0.1 => http://www.iana.org/assignments/multicast- > > addresses > > > > So route is : > > ALL-SYSTEMS.MCA * 255.255.255.255 UH 0 0 0 eth0 > > 192.168.2.0 * 255.255.255.0 U 0 > > 0 0 > > eth0 > > loopback * 255.0.0.0 U 0 0 > > 0 lo > > default . 0.0.0.0 UG > > 0 0 > > 0 eth0 > > > > now i start the two tomcat with the same application in webapp > > directories > > with tcpdump i verify the multicasting btewen my server .. so : > > > > 19:39:17.809978 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:18.546034 IP ovea-inspiron.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:18.814418 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564UDP, > > length 56 > > 19:39:19.790470 IP ovea-inspiron.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:19.818691 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:20.826650 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:20.943933 IP ovea-inspiron.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:21.806813 arp who-has . tell 192.168.2.102 > > 19:39:21.806972 arp reply . is-at 00:04:e2:b6:65:0a (oui Unknown) > > 19:39:21.831048 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:22.164812 IP ovea-inspiron.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > 19:39:22.835240 IP 192.168.2.102.45564 > all-systems.mcast.net. > > 45564:UDP, > > length 56 > > > > So all semms to be OK but i've > > > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.tcp.SimpleTcpCluster st > > art > > INFO: Cluster is about to start > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.tcp.SimpleTcpClustercreateDefaultClusterVa > > lves > > INFO: Add Default ClusterValves at cluster localhost > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.tcp.SimpleTcpClustercreateDefaultClusterLi > > stener > > INFO: Add Default ClusterListener at cluster localhost > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.tcp.ReplicationTransmitter start > > INFO: Start ClusterSender at cluster > > Catalina:type=3DCluster,host=3Dlocalhost > > with name Catalina:type=3DClusterSender,host=3Dlocalhost > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.mcast.McastServiceImplsetupSocket > > INFO: Setting multihome multicast interface to:/192.168.2.102 > > Feb 14, 2006 6:33:26 PM > > org.apache.catalina.cluster.mcast.McastService start > > INFO: Sleeping for 4000 secs to establish cluster membership > > Feb 14, 2006 6:33:30 PM > > org.apache.catalina.cluster.mcast.McastServiceregisterMBean > > INFO: membership mbean registered > > (Catalina:type=3DClusterMembership,host=3Dlocalhost) > > Feb 14, 2006 6:33:31 PM org.apache.catalina.startup.HostConfig > > deployWAR > > INFO: Deploying web application archive cluster-1.0-SNAPSHOT.war > > Feb 14, 2006 6:33:31 PM > > org.apache.catalina.cluster.session.DeltaManager st > > art > > INFO: Register manager /cluster-1.0-SNAPSHOT to cluster element > > Host with > > name localhost > > Feb 14, 2006 6:33:31 PM > > org.apache.catalina.cluster.session.DeltaManager st > > art > > INFO: Starting clustering manager at /cluster-1.0-SNAPSHOT > > Feb 14, 2006 6:33:31 PM > > org.apache.catalina.cluster.session.DeltaManagergetAllClusterSessions > > INFO: Manager [/cluster-1.0-SNAPSHOT]: skipping state transfer. No > > members > > active in cluster group. > > > > As you can see in the last line cluster member are not found !!!! > > > > What's the hell ;) > > > > When i test my application i've always the sequences : > > > > This page is rendered on server : *Cluster Node - 01 (One) New > > session is > > created with saved value ....UserId : 123456 > > This page is rendered on server : *Cluster Node - 02 (Two) New > > session is > > created with saved value ....UserId : 123456 > > This page is rendered on server : *Cluster Node - 01 (One) New > > session is > > created with saved value ....UserId : 123456 > > > > So the request is well balanced but a new session is alway > > created !!!!! > > > > Some ideas ... > > > > Thank you guys > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >