7 Replies Latest reply on Feb 2, 2004 2:04 PM by geoharp

    deployment on 3.2.3 cluster

    kstogian

       

      "kstogian" wrote:
      "kstogian" wrote:
      "kstogian" wrote:
      Hello,

      I was able to deploy JBossCache [in jboss3.2.3] on two different machines [win2000]. These two jboss instances are in the same cluster.
      Is there a way to make also the caches see each other in a cluster [same/other].

      Thanks kleandros.


        • 1. Re: deployment on 3.2.3 cluster
          gjacobi

           

          "gjacobi" wrote:
          "gjacobi" wrote:
          "gjacobi" wrote:
          Can you post how you were able to deploy in 3.2.3? I have been having problems.

          Thanks,
          Greg


          • 2. Re: deployment on 3.2.3 cluster
            kstogian

             

            "kstogian" wrote:
            "kstogian" wrote:
            "kstogian" wrote:
            I created a new MBean and bound TreeCache to a jndi name.
            From the REPL_SYNC configuration xml I only changed
            <attribute name="TransactionManagerLookupClass">org.jboss.cache.JBossTransactionManagerLookup</attribute>

            The new jbosscache.sar contains:
            1) lib\jboss-cache.jar, lib\jgroups.jar
            2) mbeanclasses
            3) META-INF\jboss-service.xml

            I dont know how to attach a file to post my code here?
            If you like I could e-mail you the code [without the lib jars]


            • 3. Re: deployment on 3.2.3 cluster
              gjacobi

               

              "gjacobi" wrote:
              "gjacobi" wrote:
              "gjacobi" wrote:
              Got it.

              I dont think you need to post the code, I understand what you did (you disregraded the fact that the TreeCache object is an MBean and you created your own.)

              To the jBossCache team: What kstogian did is not the way it was intended to be, right? We should actually deploy TreeCache as the MBean and not write our own, right?

              Thanks for the tip. This will allow me to move forward.

              Greg


              • 4. Re: deployment on 3.2.3 cluster
                kstogian

                 

                "kstogian" wrote:
                "kstogian" wrote:
                "kstogian" wrote:
                The problem i had was actually a multicast problem in my network configuration, so i solved it by changing the protocol to tcp/ip.

                 <attribute name="ClusterConfig">
                 <config>
                 <TCP start_port="7800"/>
                 <TCPPING initial_hosts="localhost[7800],node2[7800]" port_range="1" timeout="15000" up_thread="true" down_thread="true" />
                 <MERGE2 min_interval="5000" max_interval="20000" />
                 <FD max_tries="4" timeout="15000" />
                 <VERIFY_SUSPECT timeout="15000" />
                 <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800" max_xmit_size="64000" use_mcast_xmit="true"/>
                 <pbcast.STABLE desired_avg_gossip="20000" />
                 <pbcast.GMS join_timeout="15000" join_retry_timeout="5000" shun="false" print_local_addr="true" />
                 <pbcast.STATE_TRANSFER />
                 </config>
                 </attribute>
                


                • 5. Re: deployment on 3.2.3 cluster

                   

                  "bwang00" wrote:
                  "bwang00" wrote:
                  I just want to point out that JBossCache uses JGroups as the underlying reliable transport layer. And one problem that many people have when they try to setup the cluster/replication eviornment is the multicasting. Many times, a user will have multiple interfaces active (or even disabled will cause some problem on WinXP!). As a result, multicast messages will be sent out to the wrong interface.

                  To troubleshoot this problem, you can download the latest JGroups release. In there, it has a INSTALL.html that guides you through the steps to resolve the interface problem.

                  Often times, the solution is that you will need to specifically bind the interface address using "bind_addr" in replSync-service.xml of the JGroup config section, for example.

                  Bela is currently working on a feature to support multiple interfaces for devel purpose. This should save new users lots of trouble. :-)

                  -Ben


                  • 6. Re: deployment on 3.2.3 cluster
                    raj_kumar

                    hi...

                    pls do send me the code of how did u deployed the jboss cache in Jboss sever..........i'm desperately looking for ur reply....my Email ID is "smily_raj1@yahoo.co.in"..

                    raj,.................

                    • 7. Re: deployment on 3.2.3 cluster

                      concerning jgroups configuration:
                      <TCP start_port="7800"/>
                      <TCPPING initial_hosts="localhost[7800],node2[7800]" port_range="1" timeout="15000" up_thread="true" down_thread="true" />
                      <MERGE2 min_interval="5000" max_interval="20000" />
                      <FD max_tries="4" timeout="15000" />
                      <VERIFY_SUSPECT timeout="15000" />
                      <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800" max_xmit_size="64000" use_mcast_xmit="true"/>
                      <pbcast.STABLE desired_avg_gossip="20000" />
                      <pbcast.GMS join_timeout="15000" join_retry_timeout="5000" shun="false" print_local_addr="true" />
                      <pbcast.STATE_TRANSFER />

                      you need to leave out the localhost when starting on node2 and leave out node2 when starting localhost
                      ie node2:
                      <TCP start_port="7800"/>
                      <TCPPING initial_hosts="localhost[7800]" port_range="1" timeout="15000" up_thread="true" down_thread="true" />
                      <MERGE2 min_interval="5000" max_interval="20000" />
                      <FD max_tries="4" timeout="15000" />
                      <VERIFY_SUSPECT timeout="15000" />
                      <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800" max_xmit_size="64000" use_mcast_xmit="true"/>
                      <pbcast.STABLE desired_avg_gossip="20000" />
                      <pbcast.GMS join_timeout="15000" join_retry_timeout="5000" shun="false" print_local_addr="true" />
                      <pbcast.STATE_TRANSFER />

                      and localhost:
                      <TCP start_port="7800"/>
                      <TCPPING initial_hosts="node2[7800]" port_range="1" timeout="15000" up_thread="true" down_thread="true" />
                      <MERGE2 min_interval="5000" max_interval="20000" />
                      <FD max_tries="4" timeout="15000" />
                      <VERIFY_SUSPECT timeout="15000" />
                      <pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800" max_xmit_size="64000" use_mcast_xmit="true"/>
                      <pbcast.STABLE desired_avg_gossip="20000" />
                      <pbcast.GMS join_timeout="15000" join_retry_timeout="5000" shun="false" print_local_addr="true" />
                      <pbcast.STATE_TRANSFER />

                      i have a routine that strips out the executing machine from the initial host file for my jgroups daemons that i have created.
                      gl