You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Martin Kristensen <ma...@gmail.com> on 2008/02/28 14:28:00 UTC

Tomcat 6 Cluster multicast problem

Hi,
I am trying to upgrade two Tomcat 5.5 servers to version 6.0.16, but I´m
having a problem with the cluster settings.
The two current servers are using clustering now, and it is working fine,
but when trying to port this to version 6, I get the following error:

Feb 28, 2008 2:12:43 PM
org.apache.catalina.tribes.membership.McastServiceImpl$ReceiverThread run
WARNING: Error receiving mcast package. Sleeping 500ms
java.lang.IllegalArgumentException: Invalid package, should start with:{84,
82, 73, 66, 69, 83, 45, 66}
    at org.apache.catalina.tribes.membership.MemberImpl.getMember(
MemberImpl.java:322)
    at org.apache.catalina.tribes.membership.MemberImpl.getMember(
MemberImpl.java:298)
    at org.apache.catalina.tribes.membership.MemberImpl.getMember(
MemberImpl.java:403)
    at org.apache.catalina.tribes.membership.McastServiceImpl.receive(
McastServiceImpl.java:319)
    at
org.apache.catalina.tribes.membership.McastServiceImpl$ReceiverThread.run(
McastServiceImpl.java:413)

Both servers are starting up and working fine by themselves, but I need
clustering to work.

Can you help me please?

Here is server.xml for server 1:


<Server port="8005" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.AprLifecycleListener"
SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener
className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               maxThreads="150" connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="11009" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Standalone" defaultHost="localhost"
jvmRoute="tomcat1">


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

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

          <Channel
className="org.apache.catalina.tribes.group.GroupChannel">
            <Receiver
className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto"
                      port="4001"
                      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.StaticMembershipInterceptor">
               <Member
className="org.apache.catalina.tribes.membership.StaticMember"
                          port="4000"
                          securePort="-1"
                          host="localhost"
                          domain="staging-cluster"
                          uniqueId="{0,1,2,3,4,5,6,7,8,9}"/>
             </Interceptor>
               <Interceptor
className="
org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
"/>
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*
\.html;.*\.css;.*\.txt;"/>

          <Valve
className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

          <Deployer
className="org.apache.catalina.ha.deploy.FarmWarDeployer"
          tempDir="/temp/war-temp"
                      deployDir="/temp/webapps/"
                      watchDir="/temp/war-listen/"
                      watchEnabled="false"/>

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

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
           xmlValidation="false" xmlNamespaceAware="false">
      </Host>
    </Engine>
  </Service>
</Server>

Here is server.xml for server 2:

<Server port="8005" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.AprLifecycleListener"
SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener
className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               maxThreads="150" connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="11009" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Standalone" defaultHost="localhost"
jvmRoute="tomcat2">


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

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

          <Channel
className="org.apache.catalina.tribes.group.GroupChannel">
            <Receiver
className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto"
                      port="4000"
                      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.StaticMembershipInterceptor">
               <Member
className="org.apache.catalina.tribes.membership.StaticMember"
                          port="4001"
                          securePort="-1"
                          host="localhost"
                          domain="staging-cluster"
                          uniqueId="{0.1.2.3.4.5.6.7.8.9}"/>
             </Interceptor>
               <Interceptor
className="
org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
"/>
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*
\.html;.*\.css;.*\.txt;"/>

          <Valve
className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

          <Deployer
className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                 tempDir="${catalina.base}/war-temp"
                      deployDir="${catalina.base}/webapps/"
                      watchDir="${catalina.base}/war-listen/"
                      watchEnabled="false"/>

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

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>
    </Engine>
  </Service>
</Server>

Re: Tomcat 6 Cluster multicast problem

Posted by Filip Hanik - Dev Lists <de...@hanik.com>.
you probably have a 5.5 instance running on the same multicast address 
somewhere, and so your 6.0.16 instance is getting packages from a node 
you don't know about
give you TC6 instances a new multicast address or port
Filip

Martin Kristensen wrote:
> Hi,
> I am trying to upgrade two Tomcat 5.5 servers to version 6.0.16, but I´m
> having a problem with the cluster settings.
> The two current servers are using clustering now, and it is working fine,
> but when trying to port this to version 6, I get the following error:
>
> Feb 28, 2008 2:12:43 PM
> org.apache.catalina.tribes.membership.McastServiceImpl$ReceiverThread run
> WARNING: Error receiving mcast package. Sleeping 500ms
> java.lang.IllegalArgumentException: Invalid package, should start with:{84,
> 82, 73, 66, 69, 83, 45, 66}
>     at org.apache.catalina.tribes.membership.MemberImpl.getMember(
> MemberImpl.java:322)
>     at org.apache.catalina.tribes.membership.MemberImpl.getMember(
> MemberImpl.java:298)
>     at org.apache.catalina.tribes.membership.MemberImpl.getMember(
> MemberImpl.java:403)
>     at org.apache.catalina.tribes.membership.McastServiceImpl.receive(
> McastServiceImpl.java:319)
>     at
> org.apache.catalina.tribes.membership.McastServiceImpl$ReceiverThread.run(
> McastServiceImpl.java:413)
>
> Both servers are starting up and working fine by themselves, but I need
> clustering to work.
>
> Can you help me please?
>
> Here is server.xml for server 1:
>
>
> <Server port="8005" shutdown="SHUTDOWN">
>
>   <Listener className="org.apache.catalina.core.AprLifecycleListener"
> SSLEngine="on" />
>   <Listener className="org.apache.catalina.core.JasperListener" />
>   <Listener
> className="org.apache.catalina.mbeans.ServerLifecycleListener" />
>   <Listener
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
>
>   <Service name="Catalina">
>     <Connector port="8080" protocol="HTTP/1.1"
>                maxThreads="150" connectionTimeout="20000"
>                redirectPort="8443" />
>     <Connector port="11009" protocol="AJP/1.3" redirectPort="8443" />
>     <Engine name="Standalone" defaultHost="localhost"
> jvmRoute="tomcat1">
>
>
>         <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
>                  channelSendOptions="8">
>
>           <Manager
> className="org.apache.catalina.ha.session.DeltaManager"
>                    expireSessionsOnShutdown="false"
>                    notifyListenersOnReplication="true"/>
>
>           <Channel
> className="org.apache.catalina.tribes.group.GroupChannel">
>             <Receiver
> className="org.apache.catalina.tribes.transport.nio.NioReceiver"
>                       address="auto"
>                       port="4001"
>                       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.StaticMembershipInterceptor">
>                <Member
> className="org.apache.catalina.tribes.membership.StaticMember"
>                           port="4000"
>                           securePort="-1"
>                           host="localhost"
>                           domain="staging-cluster"
>                           uniqueId="{0,1,2,3,4,5,6,7,8,9}"/>
>              </Interceptor>
>                <Interceptor
> className="
> org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
> "/>
>           </Channel>
>
>           <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
>                  filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*
> \.html;.*\.css;.*\.txt;"/>
>
>           <Valve
> className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
>
>           <Deployer
> className="org.apache.catalina.ha.deploy.FarmWarDeployer"
>           tempDir="/temp/war-temp"
>                       deployDir="/temp/webapps/"
>                       watchDir="/temp/war-listen/"
>                       watchEnabled="false"/>
>
>           <ClusterListener
> className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
>           <ClusterListener
> className="org.apache.catalina.ha.session.ClusterSessionListener"/>
>         </Cluster>
>
>       <Host name="localhost"  appBase="webapps"
>             unpackWARs="true" autoDeploy="true"
>            xmlValidation="false" xmlNamespaceAware="false">
>       </Host>
>     </Engine>
>   </Service>
> </Server>
>
> Here is server.xml for server 2:
>
> <Server port="8005" shutdown="SHUTDOWN">
>
>   <Listener className="org.apache.catalina.core.AprLifecycleListener"
> SSLEngine="on" />
>   <Listener className="org.apache.catalina.core.JasperListener" />
>   <Listener
> className="org.apache.catalina.mbeans.ServerLifecycleListener" />
>   <Listener
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
>
>   <Service name="Catalina">
>     <Connector port="8080" protocol="HTTP/1.1"
>                maxThreads="150" connectionTimeout="20000"
>                redirectPort="8443" />
>     <Connector port="11009" protocol="AJP/1.3" redirectPort="8443" />
>     <Engine name="Standalone" defaultHost="localhost"
> jvmRoute="tomcat2">
>
>
>         <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
>                  channelSendOptions="8">
>
>           <Manager
> className="org.apache.catalina.ha.session.DeltaManager"
>                    expireSessionsOnShutdown="false"
>                    notifyListenersOnReplication="true"/>
>
>           <Channel
> className="org.apache.catalina.tribes.group.GroupChannel">
>             <Receiver
> className="org.apache.catalina.tribes.transport.nio.NioReceiver"
>                       address="auto"
>                       port="4000"
>                       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.StaticMembershipInterceptor">
>                <Member
> className="org.apache.catalina.tribes.membership.StaticMember"
>                           port="4001"
>                           securePort="-1"
>                           host="localhost"
>                           domain="staging-cluster"
>                           uniqueId="{0.1.2.3.4.5.6.7.8.9}"/>
>              </Interceptor>
>                <Interceptor
> className="
> org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor
> "/>
>           </Channel>
>
>           <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
>                  filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*
> \.html;.*\.css;.*\.txt;"/>
>
>           <Valve
> className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
>
>           <Deployer
> className="org.apache.catalina.ha.deploy.FarmWarDeployer"
>                  tempDir="${catalina.base}/war-temp"
>                       deployDir="${catalina.base}/webapps/"
>                       watchDir="${catalina.base}/war-listen/"
>                       watchEnabled="false"/>
>
>           <ClusterListener
> className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
>           <ClusterListener
> className="org.apache.catalina.ha.session.ClusterSessionListener"/>
>         </Cluster>
>
>       <Host name="localhost"  appBase="webapps"
>             unpackWARs="true" autoDeploy="true"
>             xmlValidation="false" xmlNamespaceAware="false">
>       </Host>
>     </Engine>
>   </Service>
> </Server>
>
>   
> ------------------------------------------------------------------------
>
> No virus found in this incoming message.
> Checked by AVG Free Edition. 
> Version: 7.5.516 / Virus Database: 269.21.1/1302 - Release Date: 2/27/2008 4:34 PM
>   


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