1 2 Previous Next 17 Replies Latest reply on Apr 27, 2006 9:20 AM by anubisman Go to original post
      • 15. Re: FarmDeployment Configuration
        anubisman

        Thank you for your response!

        Please, send me your cluster-service.xml.

        I have just noticed that my JBoss doesn't use my one.

        In my cluster-service.xml I have :

        <?xml version="1.0" encoding="UTF-8"?>
        
        <!-- ===================================================================== -->
        <!-- -->
        <!-- Sample Clustering Service Configuration -->
        <!-- -->
        <!-- ===================================================================== -->
        
        <server>
        
         <!-- ==================================================================== -->
         <!-- Cluster Partition: defines cluster -->
         <!-- ==================================================================== -->
        
         <mbean code="org.jboss.ha.framework.server.ClusterPartition"
         name="jboss:service=${jboss.partition.name:DefaultPartition}">
        
         <!-- Name of the partition being built -->
         <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
        
         <!-- The address used to determine the node name -->
         <attribute name="NodeAddress">${jboss.bind.address}</attribute>
        
         <!-- Determine if deadlock detection is enabled -->
         <attribute name="DeadlockDetection">False</attribute>
        
         <!-- Max time (in ms) to wait for state transfer to complete. Increase for large states -->
         <attribute name="StateTransferTimeout">60000</attribute>
        
         <!-- The JGroups protocol configuration -->
         <attribute name="PartitionConfig">
         <!--
         The default UDP stack:
         - If you have a multihomed machine, set the UDP protocol's bind_addr attribute to the
         appropriate NIC IP address, e.g bind_addr="192.168.0.2".
         - On Windows machines, because of the media sense feature being broken with multicast
         (even after disabling media sense) set the UDP protocol's loopback attribute to true
         -->
         <Config>
         <UDP mcast_addr="${jboss.partition.udpGroup:228.1.2.3}" mcast_port="45566"
         ip_ttl="8" ip_mcast="true"
         mcast_send_buf_size="800000" mcast_recv_buf_size="150000"
         ucast_send_buf_size="800000" ucast_recv_buf_size="150000"
         loopback="true"/>
         <PING timeout="3000" num_initial_members="3"
         up_thread="true" down_thread="true"/>
         <MERGE2 min_interval="2000" max_interval="10000"/>
         <FD shun="true" up_thread="true" down_thread="true"
         timeout="2500" max_tries="5"/>
         <VERIFY_SUSPECT timeout="3000" num_msgs="3"
         up_thread="true" down_thread="true"/>
         <pbcast.NAKACK gc_lag="50" retransmit_timeout="300,600,1200,2400,4800"
         max_xmit_size="8192"
         up_thread="true" down_thread="true"/>
         <UNICAST timeout="300,600,1200,2400,4800" window_size="100" min_threshold="10"
         down_thread="true"/>
         <pbcast.STABLE desired_avg_gossip="20000"
         up_thread="true" down_thread="true"/>
         <FRAG frag_size="8192"
         down_thread="true" up_thread="true"/>
         <pbcast.GMS join_timeout="5000" join_retry_timeout="2000"
         shun="true" print_local_addr="true"/>
         <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
         </Config>
        
         <!-- Alternate TCP stack: customize it for your environment, change bind_addr and initial_hosts -->
         <!--
         <Config>
         <TCP bind_addr="thishost" start_port="7800" loopback="true"/>
         <TCPPING initial_hosts="thishost[7800],otherhost[7800]" port_range="3" timeout="3500"
         num_initial_members="3" up_thread="true" down_thread="true"/>
         <MERGE2 min_interval="5000" max_interval="10000"/>
         <FD shun="true" timeout="2500" max_tries="5" up_thread="true" down_thread="true" />
         <VERIFY_SUSPECT timeout="1500" down_thread="false" up_thread="false" />
         <pbcast.NAKACK down_thread="true" up_thread="true" gc_lag="100"
         retransmit_timeout="3000"/>
         <pbcast.STABLE desired_avg_gossip="20000" down_thread="false" up_thread="false" />
         <pbcast.GMS join_timeout="5000" join_retry_timeout="2000" shun="false"
         print_local_addr="true" down_thread="true" up_thread="true"/>
         <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
         </Config>
         -->
         </attribute>
         <depends>jboss:service=Naming</depends>
         </mbean>
        
         <!-- ==================================================================== -->
         <!-- HA Session State Service for SFSB -->
         <!-- ==================================================================== -->
        
         <mbean code="org.jboss.ha.hasessionstate.server.HASessionStateService"
         name="jboss:service=HASessionState">
         <!-- Name of the partition to which the service is linked -->
         <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
         <!-- JNDI name under which the service is bound -->
         <attribute name="JndiName">/HASessionState/Default</attribute>
         <!-- Max delay before cleaning unreclaimed state.
         Defaults to 30*60*1000 => 30 minutes -->
         <attribute name="BeanCleaningDelay">0</attribute>
         <depends>jboss:service=Naming</depends>
         <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
         </mbean>
        
         <!-- ==================================================================== -->
         <!-- HA JNDI -->
         <!-- ==================================================================== -->
        
         <mbean code="org.jboss.ha.jndi.HANamingService"
         name="jboss:service=HAJNDI">
         <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
         <!-- Name of the partition to which the service is linked -->
         <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
         <!-- Bind address of bootstrap and HA-JNDI RMI endpoints -->
         <attribute name="BindAddress">${jboss.bind.address}</attribute>
         <!-- Port on which the HA-JNDI stub is made available -->
         <attribute name="Port">1100</attribute>
         <!-- RmiPort to be used by the HA-JNDI service once bound. 0 => auto. -->
         <attribute name="RmiPort">1101</attribute>
         <!-- Accept backlog of the bootstrap socket -->
         <attribute name="Backlog">50</attribute>
         <!-- The thread pool service used to control the bootstrap and
         auto discovery lookups -->
         <depends optional-attribute-name="LookupPool"
         proxy-type="attribute">jboss.system:service=ThreadPool</depends>
        
         <!-- A flag to disable the auto discovery via multicast -->
         <attribute name="DiscoveryDisabled">false</attribute>
         <!-- Set the auto-discovery bootstrap multicast bind address. If not
         specified and a BindAddress is specified, the BindAddress will be used. -->
         <attribute name="AutoDiscoveryBindAddress">${jboss.bind.address}</attribute>
         <!-- Multicast Address and group port used for auto-discovery -->
         <attribute name="AutoDiscoveryAddress">${jboss.partition.udpGroup:230.0.0.4}</attribute>
         <attribute name="AutoDiscoveryGroup">1102</attribute>
         <!-- The TTL (time-to-live) for autodiscovery IP multicast packets -->
         <attribute name="AutoDiscoveryTTL">16</attribute>
        
         <!-- Client socket factory to be used for client-server
         RMI invocations during JNDI queries
         <attribute name="ClientSocketFactory">custom</attribute>
         -->
         <!-- Server socket factory to be used for client-server
         RMI invocations during JNDI queries
         <attribute name="ServerSocketFactory">custom</attribute>
         -->
         </mbean>
        
         <mbean code="org.jboss.invocation.jrmp.server.JRMPInvokerHA"
         name="jboss:service=invoker,type=jrmpha">
         <attribute name="ServerAddress">${jboss.bind.address}</attribute>
         <attribute name="RMIObjectPort">4447</attribute>
         <!--
         <attribute name="RMIClientSocketFactory">custom</attribute>
         <attribute name="RMIServerSocketFactory">custom</attribute>
         -->
         <depends>jboss:service=Naming</depends>
         </mbean>
        
         <!-- the JRMPInvokerHA creates a thread per request. This implementation uses a pool of threads -->
         <mbean code="org.jboss.invocation.pooled.server.PooledInvokerHA"
         name="jboss:service=invoker,type=pooledha">
         <attribute name="NumAcceptThreads">1</attribute>
         <attribute name="MaxPoolSize">300</attribute>
         <attribute name="ClientMaxPoolSize">300</attribute>
         <attribute name="SocketTimeout">60000</attribute>
         <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
         <attribute name="ServerBindPort">4446</attribute>
         <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
         <attribute name="ClientConnectPort">0</attribute>
         <attribute name="EnableTcpNoDelay">false</attribute>
         <depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
         <depends>jboss:service=Naming</depends>
         </mbean>
        
         <!-- ==================================================================== -->
        
         <!-- ==================================================================== -->
         <!-- Distributed cache invalidation -->
         <!-- ==================================================================== -->
        
         <mbean code="org.jboss.cache.invalidation.bridges.JGCacheInvalidationBridge"
         name="jboss.cache:service=InvalidationBridge,type=JavaGroups">
         <attribute name="InvalidationManager">jboss.cache:service=InvalidationManager</attribute>
         <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
         <attribute name="BridgeName">DefaultJGBridge</attribute>
         <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
         <depends>jboss.cache:service=InvalidationManager</depends>
         </mbean>
        
        </server>


        But in my JBoss output I found
        17:43:50,772 INFO [TreeCache] setting cluster properties from xml to: UDP(ip_mcast=true;ip_ttl=8;loopback=false;mcast_addr=230.1.2.7;mcast_port=45577
        ;mcast_recv_buf_size=80000;mcast_send_buf_size=150000;ucast_recv_buf_size=80000;ucast_send_buf_size=150000):PING(down_thread=false;num_initial_members
        =3;timeout=2000;up_thread=false):MERGE2(max_interval=20000;min_interval=10000):FD_SOCK:VERIFY_SUSPECT(down_thread=false;timeout=1500;up_thread=false):
        pbcast.NAKACK(down_thread=false;gc_lag=50;max_xmit_size=8192;retransmit_timeout=600,1200,2400,4800;up_thread=false):UNICAST(down_thread=false;min_thre
        shold=10;timeout=600,1200,2400;window_size=100):pbcast.STABLE(desired_avg_gossip=20000;down_thread=false;up_thread=false):FRAG(down_thread=false;frag_
        size=8192;up_thread=false):pbcast.GMS(join_retry_timeout=2000;join_timeout=5000;print_local_addr=true;shun=true):pbcast.STATE_TRANSFER(down_thread=tru
        e;up_thread=true)


        As you can see here values are different, for example, for loopback,min_interval and some other properties.

        I can't understand why there is such kind of problem.

        Best regards,
        Aram.

        • 16. Re: FarmDeployment Configuration
          marcreis

          Here it comes, but be aware that I am using the 4.0.4.rc2. I dont know if there are version specific dependencies..

          <?xml version="1.0" encoding="UTF-8"?>
          
          <!-- ===================================================================== -->
          <!-- -->
          <!-- Sample Clustering Service Configuration -->
          <!-- -->
          <!-- ===================================================================== -->
          
          <server>
          
           <!-- ==================================================================== -->
           <!-- Cluster Partition: defines cluster -->
           <!-- ==================================================================== -->
          
           <mbean code="org.jboss.ha.framework.server.ClusterPartition"
           name="jboss:service=${jboss.partition.name:DefaultPartition}">
          
           <!-- Name of the partition being built -->
           <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
          
           <!-- The address used to determine the node name -->
           <attribute name="NodeAddress">${jboss.bind.address}</attribute>
          
           <!-- Determine if deadlock detection is enabled -->
           <attribute name="DeadlockDetection">False</attribute>
          
           <!-- Max time (in ms) to wait for state transfer to complete. Increase for large states -->
           <attribute name="StateTransferTimeout">30000</attribute>
          
           <!-- The JGroups protocol configuration -->
           <attribute name="PartitionConfig">
           <!--
           The default UDP stack:
           - If you have a multihomed machine, set the UDP protocol's bind_addr attribute to the
           appropriate NIC IP address, e.g bind_addr="192.168.0.2".
           - On Windows machines, because of the media sense feature being broken with multicast
           (even after disabling media sense) set the UDP protocol's loopback attribute to true
           -->
           <Config>
           <UDP mcast_addr="${jboss.partition.udpGroup:228.1.2.3}" mcast_port="45566"
           ip_ttl="8" ip_mcast="true"
           mcast_send_buf_size="800000" mcast_recv_buf_size="150000"
           ucast_send_buf_size="800000" ucast_recv_buf_size="150000"
           loopback="false"/>
           <PING timeout="2000" num_initial_members="3"
           up_thread="true" down_thread="true"/>
           <MERGE2 min_interval="10000" max_interval="20000"/>
           <FD shun="true" up_thread="true" down_thread="true"
           timeout="2500" max_tries="5"/>
           <VERIFY_SUSPECT timeout="3000" num_msgs="3"
           up_thread="true" down_thread="true"/>
           <pbcast.NAKACK gc_lag="50" retransmit_timeout="300,600,1200,2400,4800"
           max_xmit_size="8192"
           up_thread="true" down_thread="true"/>
           <UNICAST timeout="300,600,1200,2400,4800" window_size="100" min_threshold="10"
           down_thread="true"/>
           <pbcast.STABLE desired_avg_gossip="20000"
           up_thread="true" down_thread="true"/>
           <FRAG frag_size="8192"
           down_thread="true" up_thread="true"/>
           <pbcast.GMS join_timeout="5000" join_retry_timeout="2000"
           shun="true" print_local_addr="true"/>
           <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
           </Config>
          
           <!-- Alternate TCP stack: customize it for your environment, change bind_addr and initial_hosts -->
           <!--
           <Config>
           <TCP bind_addr="thishost" start_port="7800" loopback="true"/>
           <TCPPING initial_hosts="thishost[7800],otherhost[7800]" port_range="3" timeout="3500"
           num_initial_members="3" up_thread="true" down_thread="true"/>
           <MERGE2 min_interval="5000" max_interval="10000"/>
           <FD shun="true" timeout="2500" max_tries="5" up_thread="true" down_thread="true" />
           <VERIFY_SUSPECT timeout="1500" down_thread="false" up_thread="false" />
           <pbcast.NAKACK down_thread="true" up_thread="true" gc_lag="100"
           retransmit_timeout="3000"/>
           <pbcast.STABLE desired_avg_gossip="20000" down_thread="false" up_thread="false" />
           <pbcast.GMS join_timeout="5000" join_retry_timeout="2000" shun="false"
           print_local_addr="true" down_thread="true" up_thread="true"/>
           <pbcast.STATE_TRANSFER up_thread="true" down_thread="true"/>
           </Config>
           -->
           </attribute>
           <depends>jboss:service=Naming</depends>
           </mbean>
          
           <!-- ==================================================================== -->
           <!-- HA Session State Service for SFSB -->
           <!-- ==================================================================== -->
          
           <mbean code="org.jboss.ha.hasessionstate.server.HASessionStateService"
           name="jboss:service=HASessionState">
           <!-- Name of the partition to which the service is linked -->
           <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
           <!-- JNDI name under which the service is bound -->
           <attribute name="JndiName">/HASessionState/Default</attribute>
           <!-- Max delay before cleaning unreclaimed state.
           Defaults to 30*60*1000 => 30 minutes -->
           <attribute name="BeanCleaningDelay">0</attribute>
           <depends>jboss:service=Naming</depends>
           <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
           </mbean>
          
           <!-- ==================================================================== -->
           <!-- HA JNDI -->
           <!-- ==================================================================== -->
          
           <mbean code="org.jboss.ha.jndi.HANamingService"
           name="jboss:service=HAJNDI">
           <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
           <!-- Name of the partition to which the service is linked -->
           <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
           <!-- Bind address of bootstrap and HA-JNDI RMI endpoints -->
           <attribute name="BindAddress">${jboss.bind.address}</attribute>
           <!-- Port on which the HA-JNDI stub is made available -->
           <attribute name="Port">1100</attribute>
           <!-- RmiPort to be used by the HA-JNDI service once bound. 0 => auto. -->
           <attribute name="RmiPort">1101</attribute>
           <!-- Accept backlog of the bootstrap socket -->
           <attribute name="Backlog">50</attribute>
           <!-- The thread pool service used to control the bootstrap and
           auto discovery lookups -->
           <depends optional-attribute-name="LookupPool"
           proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          
           <!-- A flag to disable the auto discovery via multicast -->
           <attribute name="DiscoveryDisabled">false</attribute>
           <!-- Set the auto-discovery bootstrap multicast bind address. If not
           specified and a BindAddress is specified, the BindAddress will be used. -->
           <attribute name="AutoDiscoveryBindAddress">${jboss.bind.address}</attribute>
           <!-- Multicast Address and group port used for auto-discovery -->
           <attribute name="AutoDiscoveryAddress">${jboss.partition.udpGroup:230.0.0.4}</attribute>
           <attribute name="AutoDiscoveryGroup">1102</attribute>
           <!-- The TTL (time-to-live) for autodiscovery IP multicast packets -->
           <attribute name="AutoDiscoveryTTL">16</attribute>
           <!-- The load balancing policy for HA-JNDI -->
           <attribute name="LoadBalancePolicy">org.jboss.ha.framework.interfaces.RoundRobin</attribute>
          
           <!-- Client socket factory to be used for client-server
           RMI invocations during JNDI queries
           <attribute name="ClientSocketFactory">custom</attribute>
           -->
           <!-- Server socket factory to be used for client-server
           RMI invocations during JNDI queries
           <attribute name="ServerSocketFactory">custom</attribute>
           -->
           </mbean>
          
           <mbean code="org.jboss.invocation.jrmp.server.JRMPInvokerHA"
           name="jboss:service=invoker,type=jrmpha">
           <attribute name="ServerAddress">${jboss.bind.address}</attribute>
           <attribute name="RMIObjectPort">4447</attribute>
           <!--
           <attribute name="RMIClientSocketFactory">custom</attribute>
           <attribute name="RMIServerSocketFactory">custom</attribute>
           -->
           <depends>jboss:service=Naming</depends>
           </mbean>
          
           <!-- the JRMPInvokerHA creates a thread per request. This implementation uses a pool of threads -->
           <mbean code="org.jboss.invocation.pooled.server.PooledInvokerHA"
           name="jboss:service=invoker,type=pooledha">
           <attribute name="NumAcceptThreads">1</attribute>
           <attribute name="MaxPoolSize">300</attribute>
           <attribute name="ClientMaxPoolSize">300</attribute>
           <attribute name="SocketTimeout">60000</attribute>
           <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
           <attribute name="ServerBindPort">4446</attribute>
           <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
           <attribute name="ClientConnectPort">0</attribute>
           <attribute name="EnableTcpNoDelay">false</attribute>
           <depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
           <depends>jboss:service=Naming</depends>
           </mbean>
          
           <!-- ==================================================================== -->
          
           <!-- ==================================================================== -->
           <!-- Distributed cache invalidation -->
           <!-- ==================================================================== -->
          
           <mbean code="org.jboss.cache.invalidation.bridges.JGCacheInvalidationBridge"
           name="jboss.cache:service=InvalidationBridge,type=JavaGroups">
           <attribute name="InvalidationManager">jboss.cache:service=InvalidationManager</attribute>
           <attribute name="PartitionName">${jboss.partition.name:DefaultPartition}</attribute>
           <attribute name="BridgeName">DefaultJGBridge</attribute>
           <depends>jboss:service=${jboss.partition.name:DefaultPartition}</depends>
           <depends>jboss.cache:service=InvalidationManager</depends>
           </mbean>
          
          </server>
          

          ( I just thought about the ServiceBindManager, but I guess you dont use the ServiceBindingManager since you are running on different machines.)


          • 17. Re: FarmDeployment Configuration
            anubisman

            I don't understand where my JBoss is reading cluster-service configuration from!

            No changes after configuration update.

            Also I'm getting following exception after some times (about 20min after start):

            18:16:30,153 ERROR [JVMServerILService] Problem stopping JVMServerILService
            javax.naming.NameNotFoundException: ConnectionFactory not bound


            Thanks a lot,
            Aram.

            1 2 Previous Next