4 Replies Latest reply on Jul 25, 2011 3:41 PM by Dave Palomino

    multiple Apache instances with mod_cluster using common binaries

    Dave Palomino Newbie

      Apache 2.2.15

      mod_cluster 1.0.4 GA

      JBoss EAP 5.1

       

      I have a moderately large environment with multiple JBoss clusters.  Our general practice has been to use a one to one relationship between Apache instances and JBoss clusters.  Our multiple Apache instances share a single set of Apache binaries. 

       

      I have found when trying to set up more than one Apache/mod_cluster/JBoss stack, mod_cluster seems to get confused.  mod_cluster-manager on any of the instances seems to know about the JBoss nodes that should be connected and visible only to other mod_cluster instances. 

       

      It looks like the root of this behavior are the sockets/files that are created under <apache_bin>/logs/

       

      cgisock.25704                       manager.domain.domain.lock     manager.node.nodes.slotmem

      manager.balancer.balancers.lock     manager.domain.domain.slotmem  manager.sessionid.sessionid.lock

      manager.balancer.balancers.slotmem  manager.host.hosts.lock        manager.sessionid.sessionid.slotmem

      manager.context.contexts.lock       manager.host.hosts.slotmem

      manager.context.contexts.slotmem    manager.node.nodes.lock

       

       

      Is there a way to configure mod_cluster to tell it to put these objects in a specific location for each Apache instance, similar to how I already tell each Apache instance to put its access/error logs in a location specific to each instance? 

       

      Thanks!

      Dave

        • 2. Re: multiple Apache instances with mod_cluster using common binaries
          Dave Palomino Newbie

          Strange.  That directive sure looks like what I was looking for, however it seems like it is being ignored.  FWIW, I am using mod_cluster 1.0.4 GA but the docs show that directive is available for 1.0.X also.  Maybe something else is wrong with my configs... 

           

          Apache server root is /env/atlas.bomba.dev/cust/apache/usr/. 

          The MemManager files are still showing up in /env/atlas.bomba.dev/cust/apache/usr/logs/ and not at the paths I am defining in each instance config. 

           

           

          configs for apacheA:

          LoadModule proxy_module modules/mod_proxy.so

          LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

          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

           

          <VirtualHost 10.199.128.222:18008>  

             <Directory />    

             Order deny,allow    

             Deny from all    

             #Allow from 10.199.128.

             Allow from all

          </Directory>

           

          KeepAliveTimeout 60

          MaxKeepAliveRequests 0 

          ManagerBalancerName eap-atlas0-LB

          MemManagerFile /env/atlas.bomba.dev/cust/apache/http-eap-atlas-master-1/var/run/

          AdvertiseFrequency 5

          AdvertiseGroup 231.80.44.20

           

          <Location /mod_cluster-manager>

          SetHandler mod_cluster-manager

          Order deny,allow

          Deny from all

          #Allow from 127.0.0.1

          Allow from all

          </Location>

           

          </VirtualHost>

           

           

          configs for apacheB:

          LoadModule proxy_module modules/mod_proxy.so

          LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

          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

           

          <VirtualHost 10.199.128.222:18010>  

          <Directory />    

             Order deny,allow    

             Deny from all    

             #Allow from 10.199.128.

             Allow from all

          </Directory>

           

          KeepAliveTimeout 60

          MaxKeepAliveRequests 0 

          ManagerBalancerName eap-atlas1-LB

          MemManagerFile /env/atlas.bomba.dev/cust/apache/http-eap-atlas1-1/var/run/

          AdvertiseFrequency 5

          AdvertiseGroup 231.80.44.25

           

          <Location /mod_cluster-manager>

          SetHandler mod_cluster-manager

          Order deny,allow

          Deny from all

          #Allow from 127.0.0.1

          Allow from all

          </Location>

           

          </VirtualHost>

           

           

           

          I know my Allows are wide open, just trying to get it to work before I ratchet that down. 

          • 3. Re: multiple Apache instances with mod_cluster using common binaries
            Jean-Frederic Clere Master

            Don't put it in the VIrtualHost. I think that the problem.

            • 4. Re: multiple Apache instances with mod_cluster using common binaries
              Dave Palomino Newbie

              Moving the directive out of the VirtualHost block did stop the files from showing up under <server_root>/logs but the behavior I see in mod_cluster-manager is the same. 

               

              I updated the mod_cluster version to 1.0.10 GA and that seems to be working as I expected it to, no strange behavior.