0
votes

I want to cluster my web application in jboss 7. for this I am using Apache webserver in front of Jboss7 and am using mod_cluster. Below is my configuration for in httpd.conf

`LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule proxy_module modules/mod_proxy.so
 LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
 LoadModule proxy_http_module modules/mod_proxy_http.so
 LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
 LoadModule manager_module modules/mod_manager.so
 LoadModule slotmem_module modules/mod_slotmem.so
 LoadModule advertise_module modules/mod_advertise.so

 Listen  10.1.7.117:90
 Listen  10.1.7.117:10001

<VirtualHost 10.1.7.117:10001>
 <Location />
  Order deny,allow
  Deny from all
  Allow from all      
 </Location>

    KeepAliveTimeout 300
    MaxKeepAliveRequests 0
    #ServerAdvertise on  http://127.0.0.1:6666    
    AdvertiseFrequency 5
    AdvertiseSecurityKey DEV_Cluster
    AdvertiseGroup 224.0.1.105:23364
    EnableMCPMReceive

    <Location /mod_cluster_manager>
       SetHandler mod_cluster-manager
       Order deny,allow
       Deny from all
       Allow from all
   </Location>
  </VirtualHost>

In Jboss 7 standalone-full-ha.xml I have added the following:

'<subsystem xmlns="urn:jboss:domain:modcluster:1.0">
        <mod-cluster-config advertise-socket="modcluster" proxy-list="10.1.7.117:10001" advertise="true" advertise-security-key="Dev_Cluster">
            <dynamic-load-provider>
                <load-metric type="busyness"/>
            </dynamic-load-provider>
        </mod-cluster-config>
    </subsystem>

Now after starting Apache and Jboss7(i start a single instance only for testing) I can access the following: http://10.1.7.117:10001/mod_cluster_manager

BUT when I access just http://10.1.7.117:10001 it shows the Apache home page "It works!" instead of redirecting to my web application home page which is at http://10.1.7.117:8080.

I suspected that since my application does not have a context root that may be the issue. So when i add a context root in my web app and access it using http://10.1.7.117:10001/demo-web it shows me the application webpage BUT the images/CSS/JS nothing loads!!.

If anyone has an idea kindly assist me in this. Thanks

1

1 Answers

0
votes

Did you uncomment the servername parmater in the httpd.conf file and provide the server's hostname, which is by default commented out. I included that block of configuration below. By Default, the sticky-sessions are configured to true in Jboss, that enforces all the requests to single server. Add sticky-session="false" parameter to the below line in stanalone-ha.xml file you mentioned.

<mod-cluster-config advertise-socket="modcluster" proxy-list="10.1.7.117:10001"    advertise="true" advertise-security-key="Dev_Cluster" sticky-session="false">

Hope this helps.

# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName hostname