0
votes

Hoping someone can help here. At the moment I have a JBoss EAP 6.4 setup consisting of a domain controller + host controller.

I wanted to put Apache in front of this to test load balancing as eventually this setup will span multiple hosts. I have installed Apache and configured the VirtualHost but, whenever I try to access my application I keep getting the following errors :

[error] proxy: CLUSTER: (balancer://mycluster). All workers are in error state

This suggests to me that my EAP instances are not communicating with Apache/mod_cluster. I have configured Apache to advertise every 5 seconds and I tested it was working by running the following:

java -cp $JBOSS_HOME/bin/client/jboss-client.jar org.jgroups.tests.McastSenderTest -mcast_addr  230.11.11.11 -port 5555

I can see the following output:

HTTP/1.0 200 OK
Date: Wed, 28 Oct 2015 17:14:36 GMT
Sequence: 545
Digest: ee99a011cc00c3280264ecccc5bddb89
Server: 357f91e8-236c-4f64-978a-bc4e8180954c
X-Manager-Address: 127.0.0.1:6666 
X-Manager-Url: /357f91e8-236c-4f64-978a-bc4e8180954c
X-Manager- [sender=172.16.97.216:23364]

So its clear from the above that apache/mod_cluster is working. The configuration within EAP, is also in accordance to the documentation, in that I am NOT specifying a fixed proxy-list, rather set advertise-socket to modcluster within each ha profile I am using.

I have disabled iptables, and have nothing blocking connections. When I deployed my clustered web app, it was successfully formed without any problems so not sure whats blocking EAP to connect to mod_cluster. When I view the status page for mod_cluster-manager, its loaded all the relevant modules but does not show the nodes...

Any ideas ?

1

1 Answers

0
votes

The problem is that you are trying to play with UDP multicast on your localhost X-Manager-Address: 127.0.0.1:6666. Do the following steps in order to make your setup work:

  1. bind both Apache HTTP Server and your EAP instances on a non-localhost IP address, e.g. 192.168.1.100 (doesn't matter; it could be public or private subnet, whatever)

  2. verify on mod_cluster manager console that Status of your nodes is OK. The URL of the mod_cluster manager console depends on your setup in <Location /mod_cluster_manager> SetHandler mod_cluster-manager ...

  3. Keep in mind that not only EAP must be able to reach Apache HTTP Server IP address:port, but also Apache HTTP Server must be able to reach EAP IP address:port; the communication between Apache HTTP Server and EAP is bidirectional.

Lemme know whether it worked for you.