9 Replies Latest reply on Aug 2, 2013 10:29 AM by tzman

    EJB clustering local interfaces -EAP 6.1

    tzman

      I am attempting to run the JBoss cluster bench test found here

      https://github.com/clusterbench/clusterbench)

       

      The session replication appears to be working but the ejbservlet is not working as expected (http://localhost/clusterbench/ejbservlet). The count returns to zero when the current node is stopped and the page is refreshed.

       

      Has anyone had any success with running this on EAP 6.1?

       

      Thanks

        • 1. Re: EJB clustering local interfaces -EAP 6.1
          rhusar

          Unfortunately, the problem is that CDI does not support SET replication trigger, which is set in the demo application: https://github.com/clusterbench/clusterbench/blob/master/clusterbench-ee6-web/src/main/webapp/WEB-INF/jboss-web.xml#L10

           

          To get this working, either change it to SET_AND_NON_PRIMITIVE_GET (default) or remove completly for the default to take effect.

          • 2. Re: EJB clustering local interfaces -EAP 6.1
            tzman

            Any other changes required? I seem to get the same results with this change.

            • 3. Re: EJB clustering local interfaces -EAP 6.1
              rhusar

              Just gave it a try and it works as expected. Makes sure your test setup is correct and also make sure it works for pure HTTP session scenarios to isolate the problem.

              • 4. Re: EJB clustering local interfaces -EAP 6.1
                tzman

                I believe the setup is correct. It works with the http session cluster test, just not the ejb sessions. Can you send me your domain and host files so that i can diff them against what I have? Ive gone through my config files multiple times and they seem to match what I see in tutorial. This has to be some small config change, I just have no idea what it is.

                 

                Thanks again Radoslav!

                • 5. Re: EJB clustering local interfaces -EAP 6.1
                  rhusar

                  Hm, let me try in domain mode, I have only tried w/ standalone. Maybe something is different from out of box.

                  • 6. Re: EJB clustering local interfaces -EAP 6.1
                    tzman

                    I tried standalone mode and see the same issue. Session replication works but not ejb replication. I also double checked the jboss-web.xml file to ensure it was modified as you mentioned. I started the servers with the following:

                     

                    host 1

                    standalone.bat -u 230.0.0.4 -Djboss.node.name=host1 --server-config=standalone-ha.xml

                     

                    host 2

                    standalone.bat -u 230.0.0.4 -Djboss.node.name=host2 --server-config=standalone-ha.xml -Djboss.socket.binding.port-offset=100

                     

                    I modified the configuration to include the proxy list attribute in the mod cluster configuration, as I have apache configured with mod cluster for load balancing.

                     

                    How does this differ from your set up?

                    Attached relevant files

                    • 7. Re: EJB clustering local interfaces -EAP 6.1
                      rhusar

                      I tried domain, that works fine too. I diffed the standalone-ha.xml and there is no difference apart from the modcluster proxy list.

                       

                      Double check your log for warnings and errors, there might be a hint at whats wrong and try disabling firewall, try disabling IPv6, try switching JGrpoups stack to tcp (default-stack="tcp"), etc.

                      • 8. Re: EJB clustering local interfaces -EAP 6.1
                        tzman

                        You are running EAP 6.1? How are you accessing the servers, without modcluster?

                         

                        I only see 2 warnings, no errors. I doubt they have any relevance.

                        07:48:24,068 WARN  [org.jboss.as.dependency.unsupported] (MSC service thread 1-12) JBAS018568: Deployment "deployment.clusterbench-ee6.ear.clusterbench-ee6-web.war" is using an unsupported module ("org.infinispan:main") which may be changed or removed in future versions without notice.

                        07:48:24,069 WARN  [org.jboss.as.dependency.unsupported] (MSC service thread 1-12) JBAS018568: Deployment "deployment.clusterbench-ee6.ear.clusterbench-ee6-web.war" is using an unsupported module ("org.jgroups:main") which may be changed or removed in future versions without notice.

                         

                        Will try the other suggestions.

                        • 9. Re: EJB clustering local interfaces -EAP 6.1
                          tzman

                          Disabled firewall, and IPv6. Changing the default jgroups stack results in the following warnings. Was there another change need for this?

                           

                          09:24:31,900 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ServerService Thread Pool -- 62) ISPN000078: Starting JGroups Channel

                          09:24:31,914 INFO  [stdout] (ServerService Thread Pool -- 61)

                          09:24:31,915 INFO  [stdout] (ServerService Thread Pool -- 61) -------------------------------------------------------------------

                          09:24:31,915 INFO  [stdout] (ServerService Thread Pool -- 61) GMS: address=host1/web, cluster=web, physical address=127.0.0.1:7600

                          09:24:31,920 INFO  [stdout] (ServerService Thread Pool -- 61) -------------------------------------------------------------------

                           

                           

                          09:24:31,922 INFO  [stdout] (ServerService Thread Pool -- 62)

                          09:24:31,925 INFO  [stdout] (ServerService Thread Pool -- 62) -------------------------------------------------------------------

                          09:24:31,929 INFO  [stdout] (ServerService Thread Pool -- 62) GMS: address=host1/ejb, cluster=ejb, physical address=127.0.0.1:7600

                          09:24:31,929 WARN  [org.jgroups.protocols.MPING] (MPING) group_addr (null) or cluster_name of header (web) is null; passing up discovery request from host1/web, but this should not be the case

                          09:24:31,932 INFO  [stdout] (ServerService Thread Pool -- 62) -------------------------------------------------------------------

                           

                           

                          09:24:31,939 WARN  [org.jgroups.protocols.TP$ProtocolAdapter] (OOB-2,shared=tcp) dropping unicast message to wrong destination host1/web; my local_addr is host1/ejb

                          09:24:31,940 WARN  [org.jgroups.protocols.MPING] (MPING) host1/web: discarding discovery request for cluster 'ejb' from host1/ejb; our cluster name is 'web'. Please separate your clusters cleanly.

                          09:24:34,933 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ServerService Thread Pool -- 61) ISPN000094: Received new cluster view: [host1/web|0] [host1/web]

                          09:24:34,941 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ServerService Thread Pool -- 62) ISPN000094: Received new cluster view: [host1/ejb|0] [host1/ejb]

                          09:24:34,954 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ServerService Thread Pool -- 61) ISPN000079: Cache local address is host1/web, physical addresses are [127.0.0.1:7600]

                          09:24:34,959 INFO  [org.infinispan.factories.GlobalComponentRegistry] (ServerService Thread Pool -- 61) ISPN000128: Infinispan version: Infinispan 'Delirium' 5.2.6.Final

                          09:24:34,967 INFO  [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (ServerService Thread Pool -- 62) ISPN000079: Cache local address is host1/ejb, physical addresses are [127.0.0.1:7600]

                           

                          Then repeatedly

                           

                          09:24:42,641 WARN  [org.jgroups.protocols.MPING] (MPING) host1/web: discarding discovery request for cluster 'ejb' from 16350a67-1ea2-a1de-5438-5fd1c529e933; our cluster name is 'web'. Please separate your clusters cleanly.

                          09:24:42,657 WARN  [org.jgroups.protocols.MPING] (MPING) host1/ejb: discarding discovery request for cluster 'web' from host2/web; our cluster name is 'ejb'. Please separate your clusters cleanly.