5 Replies Latest reply on Jul 26, 2012 9:38 AM by Radoslav Husar

    httpd+mod_cluster and jboss master on seperat hosts?

    Christopher Thorjussen Newbie

      I've got two jboss 7.1.1 slaves (running with host-slave.xml) and one jboss 7.1.1 master (host-master.xml) on centos6 on my LAN and one Apache 2.2.15 (centos6) with mod_cluster 1.2.0.Final in DMZ.


      I'm having problem getting my slaves to register with mod_cluster. Do I need to run httpd+mod_cluster on the same host as jboss master?


      I've can't do multicast between LAN and DMZ, so the frontend has an extra nic connected to the LAN segment.


      My Server-Group "group-extranet" is using the 'ha' profile (and not full-ha).


      simplified config on apache (removed config on logging etc):



      global config:

      ## Load modules for mod_cluster

      LoadModule slotmem_module modules/mod_slotmem.so

      LoadModule manager_module modules/mod_manager.so

      LoadModule proxy_cluster_module modules/mod_proxy_cluster.so

      LoadModule advertise_module modules/mod_advertise.so

      Listen 10001

      MemManagerFile /var/cache/httpd

      AllowDisplay    On


      vhost config:

      <VirtualHost internal-ip:10001>

              ServerName cluster.testing.local

              KeepAliveTimeout 60

              MaxKeepAliveRequests 0

              ManagerBalancerName group-extranet


              ServerAdvertise On



      <VirtualHost public-ip:80>

           ServerName frontend.testing.local

              <Location /cluster-manager>

                      SetHandler mod_cluster-manager

                      Order deny,allow

                      Deny from all

                      Allow from "client-network"




      I see the /cluster-manager/ site, but no hosts have registered:




      start of "httpd.conf" configuration

      mod_proxy_cluster.c: OK

      mod_sharedmem.c: OK

      Protocol supported: http AJP https

      mod_advertise.c: OK

      Server: frontend.testing.local

      Server: frontend.testing.local VirtualHost: public-ip:80

      Server: cluster.testing.local VirtualHost: internal-ip:10001 Advertising on Group Port 23364 for http://internal-ip:10001 every 10 seconds

      end of "httpd.conf" configuration


      Auto Refresh show DUMP output show INFO output




      I have verified that multicast works between my frontend(-lan-nic) and backend jboss following http://www.techstacks.com/howto/troubleshoot-jgroups-and-multicast-ip-issues.html and running recieve and send test both ways.


      $JAVA_HOME/bin/java -cp jgroups-3.0.6.Final.jar org.jgroups.tests.McastReceiverTest -mcast_addr -port 23456

      $JAVA_HOME/bin/java -cp jgroups-3.0.6.Final.jar org.jgroups.tests.McastSenderTest -mcast_addr -port 23456



      Master startup (not background, but console at the moment)

      /opt/jboss/default/bin/domain.sh --host-config=host-master.xml -b -bmanagement=


      Slave startup (not background, but console at the moment):

      /opt/jboss/default/bin/domain.sh --host-config=host-slave.xml --master-address=jboss-master-internal-ip -b= --backup


      slave console output shows mod_cluster initializes:


      [Server:q1impweb01n01-extranet] 18:35:57,160 INFO  [org.apache.coyote.http11.Http11AprProtocol] (MSC service thread 1-1) Starting Coyote HTTP/1.1 on http--

      [Server:q1impweb01n01-extranet] 18:35:57,196 INFO  [org.apache.coyote.ajp.AjpAprProtocol] (MSC service thread 1-1) Starting Coyote AJP/1.3 on ajp--

      [Server:q1impweb01n01-extranet] 18:35:57,525 INFO  [org.jboss.modcluster.ModClusterService] (MSC service thread 1-1) Initializing mod_cluster 1.2.0.Final

      [Server:q1impweb01n01-extranet] 18:35:57,571 INFO  [org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl] (MSC service thread 1-1) Listening to proxy advertisements on

      [Server:q1impweb01n01-extranet] 18:35:57,939 INFO  [org.jboss.as.remoting] (MSC service thread 1-1) JBAS017100: Listening on /



      Update #1: I found out that multicast was transmitted on DMZ nic, so added a route for it to be transmitted on LAN nic. Verified with tcpdump. First I got udp checksum error since these servers are vmware-guest, but fixed that by turning offloading according to http://ubuntuforums.org/showthread.php?t=1940190. But I still doesn't see any multicast traffic on my slaves, which are in the same network


      Update #2: Setting the proxyList manually (console > Profiles > ha > Web > Modcluster > Proxies > Proxy List > IP:PORT) made the slaves connect but when the second slave connected I got errors like

      {code]Error [MEM: MEM: Old node still exist: {4}] sending command CONFIG to proxy frontend.testing.local/internal-ip:100001, configuration will be reset{code}

      This was fixed by adding instance-id="${jboss.node.name}" to the web subsystem.

      Still not working with multicast


      Is 7.1.2.EAP better?