5 Replies Latest reply on Oct 20, 2014 2:43 AM by mbabacek

    Wildfly 8, mod_cluster & apache integration

    mpowell

      I am having problems getting mod_cluster 1.2 to work with Apache.

       

      Symptoms:

      When I start Wildfly the console produces the following error every 3-5 seconds:

      ERROR [org.jboss.modcluster] (UndertowEventHandlerAdapter - 1) MODCLUSTER000042: Error null sending INFO command to precise32/127.0.1.1:6666, configuration will be reset: null

       

      I can see a corresponding request in my Apache logs as: "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

       

      The http://localhost:9191/mod_cluster-manager URL only shows the page title and links, but no cluster info:

      mod_cluster/1.2.6.Final

      Auto Refresh show DUMP output show INFO output

       

      I am running both jboss and apache on the same virtual server.

      Server Info:

      Virtual Box 4.3.14 running:

      Ubuntu 12.04 LTS

      Apache/2.2.22

      Wildfly 8.0

       

      I can navigate to my web apps on Wildfly directly without going through Apache and it works fine. If I try and navigate through Apache, I get the following errors in my Apache log:

      [Thu Oct 16 03:12:33 2014] [debug] mod_proxy_cluster.c(2231): proxy: byrequests balancer FAILED

      [Thu Oct 16 03:12:33 2014] [error] proxy: CLUSTER: (balancer://mycluster). All workers are in error state

      [Thu Oct 16 03:12:33 2014] [debug] mod_deflate.c(615): [client 10.0.2.2] Zlib: Compressed 410 to 276 : URL /

       

      My relevant Apache configs look like:

       

      mod_cluster.load:

      <IfModule !mod_proxy.c>

          LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so

      </IfModule>

       

      LoadModule advertise_module     /usr/lib/apache2/modules/mod_advertise.so

      LoadModule manager_module               /usr/lib/apache2/modules/mod_manager.so

      LoadModule proxy_cluster_module /usr/lib/apache2/modules/mod_proxy_cluster.so

      LoadModule slotmem_module               /usr/lib/apache2/modules/mod_slotmem.so

       

      mod_cluster.conf:

      CreateBalancers 1

       

      <IfModule manager_module>

          Listen 127.0.1.1:6666

          ManagerBalancerName mycluster

       

          <VirtualHost 127.0.1.1:6666>

              KeepAliveTimeout 300

              MaxKeepAliveRequests 0

              AdvertiseFrequency 5

              ServerAdvertise On

       

              <Location />

                  Order deny,allow

                  Allow from 127.0.0

              </Location>

       

           </VirtualHost>

       

      </IfModule>

       

      virtual host:

      <VirtualHost *:9191>

       

       

          #ServerAdmin me@domain.edu

          ServerName jboss.cluster

          ServerAlias jboss.cluster

       

      ProxyPass / balancer://mycluster stickysession=JSESSIONID|jsessionid nofailover=On
      ProxyPassReverse / balancer://mycluster
      ProxyPreserveHost On

       

       

       

          <Location />

              Order deny,allow

              Allow from All

          </Location>

       

         <Location /mod_cluster-manager>

            SetHandler mod_cluster-manager

            Order deny,allow

            #Deny from all

            Allow from 127.0.0

         </Location>

       

              ErrorLog ${APACHE_LOG_DIR}/jboss_cluster_error.log

       

              LogLevel debug

       

              CustomLog ${APACHE_LOG_DIR}/jboss_access.log combined

       

      </VirtualHost>

       

      standalone.xml:

       

      <extensions>
      <extension module="org.jboss.as.clustering.infinispan"/>
      <extension module="org.jboss.as.connector"/>
      <extension module="org.jboss.as.deployment-scanner"/>
      <extension module="org.jboss.as.ee"/>
      <extension module="org.jboss.as.ejb3"/>
      <extension module="org.jboss.as.jaxrs"/>
      <extension module="org.jboss.as.jdr"/>
      <extension module="org.jboss.as.jmx"/>
      <extension module="org.jboss.as.jpa"/>
      <extension module="org.jboss.as.jsf"/>
      <extension module="org.jboss.as.logging"/>
      <extension module="org.jboss.as.mail"/>
      <extension module="org.jboss.as.naming"/>
      <extension module="org.jboss.as.pojo"/>
      <extension module="org.jboss.as.remoting"/>
      <extension module="org.jboss.as.sar"/>
      <extension module="org.jboss.as.security"/>
      <extension module="org.jboss.as.transactions"/>
      <extension module="org.jboss.as.webservices"/>
      <extension module="org.jboss.as.weld"/>
      <extension module="org.wildfly.extension.batch"/>
      <extension module="org.jboss.as.modcluster"/>
      <extension module="org.wildfly.extension.io"/>
      <extension module="org.wildfly.extension.undertow"/>
      </extensions>

      ...

      <subsystem xmlns="urn:jboss:domain:modcluster:1.2">

       

      <mod-cluster-config advertise-socket="modcluster" connector="ajp">

       

      <dynamic-load-provider>

       

      <load-metric type="cpu"/>

       

      </dynamic-load-provider>

       

      </mod-cluster-config>

       

      </subsystem>

      ......

      <interfaces>
      <interface name="management">
      <inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
      </interface>

       

      <interface name="public">
      <inet-address value="${jboss.bind.address:0.0.0.0}"/>
      </interface>
      <interface name="unsecure">
      <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
      </interface>
      </interfaces>

       

      <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
      <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
      <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>
      <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
      <socket-binding name="modcluster" port="0" multicast-address="224.0.1.105" multicast-port="23364"/>
      <socket-binding name="http" port="${jboss.http.port:9090}"/>
      <socket-binding name="https" port="${jboss.https.port:8443}"/>
      <socket-binding name="txn-recovery-environment" port="4712"/>
      <socket-binding name="txn-status-manager" port="4713"/>
      <outbound-socket-binding name="mail-smtp">
      <remote-destination host="localhost" port="25"/>
      </outbound-socket-binding>
      </socket-binding-group>

       

      vhost error log jboss_cluster_error.log:

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:49 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:11:51 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:13:55 2014] [debug] mod_deflate.c(615): [client 10.0.2.2] Zlib: Compressed 494 to 255 : URL /mod_cluster-manager

      [Thu Oct 16 18:13:58 2014] [debug] mod_proxy_cluster.c(1010): update_workers_node starting

      [Thu Oct 16 18:13:58 2014] [debug] mod_proxy_cluster.c(1025): update_workers_node done

      [Thu Oct 16 18:13:59 2014] [debug] mod_deflate.c(615): [client 10.0.2.2] Zlib: Compressed 494 to 255 : URL /mod_cluster-manager

      [Thu Oct 16 18:14:05 2014] [debug] mod_proxy_cluster.c(2231): proxy: byrequests balancer FAILED

      [Thu Oct 16 18:14:05 2014] [error] proxy: CLUSTER: (balancer://mycluster). All workers are in error state

      [Thu Oct 16 18:14:05 2014] [debug] mod_deflate.c(615): [client 10.0.2.2] Zlib: Compressed 400 to 269 : URL /

      [Thu Oct 16 18:14:13 2014] [debug] mod_proxy_cluster.c(2231): proxy: byrequests balancer FAILED

      [Thu Oct 16 18:14:13 2014] [error] proxy: CLUSTER: (balancer://mycluster). All workers are in error state

      [Thu Oct 16 18:14:13 2014] [debug] mod_deflate.c(615): [client 10.0.2.2] Zlib: Compressed 400 to 269 : URL /

       

      vhost access log jboss_access.log

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      127.0.0.1 - - [16/Oct/2014:18:11:49 +0000] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Ubuntu) (internal dummy connection)"

      10.0.2.2 - - [16/Oct/2014:18:13:55 +0000] "GET /mod_cluster-manager HTTP/1.1" 200 556 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"

      10.0.2.2 - - [16/Oct/2014:18:13:59 +0000] "GET /mod_cluster-manager HTTP/1.1" 200 529 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"

      10.0.2.2 - - [16/Oct/2014:18:14:05 +0000] "GET / HTTP/1.1" 503 504 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"

      10.0.2.2 - - [16/Oct/2014:18:14:13 +0000] "GET / HTTP/1.1" 503 504 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"

       

      vhost access log other_vhosts_access.log

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:13:43 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:13:53 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:03 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:13 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:23 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:33 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:43 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:14:53 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:03 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:13 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:23 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:33 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:43 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:15:53 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:16:03 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:16:13 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

      precise32:6666 127.0.0.1 - - [16/Oct/2014:18:16:23 +0000] "INFO / HTTP/1.1" 501 529 "-" "ClusterListener/1.0"

       

      Message was edited by: M P Added in complete apache error and access logs. Also added in my ProxyPass config to the vhost.