[JBoss JIRA] (MODCLUSTER-356) BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
by Weinan Li (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-356?page=com.atlassian.jira.pl... ]
Weinan Li commented on MODCLUSTER-356:
--------------------------------------
Yeah if I restart httpd/EAP sometimes it will throw:
{code}
Error null sending STATUS command to min/10.0.1.13:10001, configuration will be reset: null
{code}
And this just happen during server restart to me.
The httpd crashing stopped after I've upgrade mod_cluster to 1.2.6.Final in httpd. No crashing anymore, and no error log from both EAP and httpd sides, and node could be seen correctly from '/mod_cluster-manager'. From wireshark analyse the CPING/CPONG of AJP port between EAP/httpd are fine.
But the "<title>503 Service Temporarily Unavailable</title>" still exists. The node is not serving.
I've also tried to upgrade mod_cluster in EAP side also to 1.2.6.Final and the problem still there.
Not sure where the problem could be. Because Wireshark doesn't understand the MCMP in 10001 port, so it's hard for me to see if there are any problems.
> BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
> ------------------------------------------------------------------------
>
> Key: MODCLUSTER-356
> URL: https://issues.jboss.org/browse/MODCLUSTER-356
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.2.4.Final
> Environment: SLES-11-SP1 x86_64 running httpd 2.2.24 or 2.4.6 with any mod_cluster-1.2.x version and JBoss-AS-7.2.0.Final
> Reporter: Marco Danti
> Assignee: Jean-Frederic Clere
> Labels: balancerMember, crash, httpd, mod_cluster
>
> httpd dumps core in mod_proxy_cluster.c if the httpd.conf file contains BalancerMember directives.
> this happens at least with the following two setups:
> 1) httpd-2.4.6 and mod_cluster-1.2.x
> 2) httpd-2.2.24 and mod_cluster-1.2.3.Final
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 3 months
[JBoss JIRA] (MODCLUSTER-356) BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
by Michal Babacek (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-356?page=com.atlassian.jira.pl... ]
Michal Babacek commented on MODCLUSTER-356:
-------------------------------------------
Hmm, I've failed to reproduce the crash from [community forum|https://community.jboss.org/message/837549#837549], reported by [~marcodanti].
This post of yours seems to be a different issue though. I'll try to reproduce it. BTW: I've seen this one somewhere already:
{noformat}
Error null sending STATUS command to min/10.0.1.13:10001, configuration will be reset: null
{noformat}
> BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
> ------------------------------------------------------------------------
>
> Key: MODCLUSTER-356
> URL: https://issues.jboss.org/browse/MODCLUSTER-356
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.2.4.Final
> Environment: SLES-11-SP1 x86_64 running httpd 2.2.24 or 2.4.6 with any mod_cluster-1.2.x version and JBoss-AS-7.2.0.Final
> Reporter: Marco Danti
> Assignee: Jean-Frederic Clere
> Labels: balancerMember, crash, httpd, mod_cluster
>
> httpd dumps core in mod_proxy_cluster.c if the httpd.conf file contains BalancerMember directives.
> this happens at least with the following two setups:
> 1) httpd-2.4.6 and mod_cluster-1.2.x
> 2) httpd-2.2.24 and mod_cluster-1.2.3.Final
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 3 months
[JBoss JIRA] (MODCLUSTER-356) BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
by Weinan Li (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-356?page=com.atlassian.jira.pl... ]
Weinan Li commented on MODCLUSTER-356:
--------------------------------------
I've met the simliar problem but it seems doesn't related with settings in <Proxy ...> section:
I'm using JBoss EAP 6.1.0.Final + httpd 2.2.25 + mod_cluster 1.2.4.Final for testing. I'm working on a MacOS machine with JDK 7 installed:
{code}
jmin:~ weinanli$ java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
min:~ weinanli$ uname -a
Darwin min 12.4.0 Darwin Kernel Version 12.4.0: Wed May 1 17:57:12 PDT 2013; root:xnu-2050.24.15~1/RELEASE_X86_64 x86_64
{code}
Here are the error logs from JBoss side:
{code}
[Server:server-three] 03:03:27,829 INFO [org.jboss.modcluster] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) MODCLUSTER000011: jboss.web will use 30b18166-b3c4-3388-8fbe-50af073c7657 as jvm-route
[Server:server-three] 03:03:29,238 ERROR [org.jboss.modcluster] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) MODCLUSTER000042: Error null sending STATUS command to min/10.0.1.13:10001, configuration will be reset: null
{code}
After JBoss EAP started in domain mode then httpd start to throw segmentation fault periodically:
{code}
[Sun Sep 15 02:54:07 2013] [notice] child pid 84530 exit signal Segmentation fault (11)
{code}
Even if I kill JBoss EAP now, the seg fault keep thrown by httpd.
So I upgrade the mod_cluster of httpd side to 1.2.6.Final, and the problem disappeared:
{code}
[Sun Sep 15 03:07:47 2013] [notice] Balancer other-server-group changed
[Sun Sep 15 03:07:48 2013] [notice] Balancer other-server-group changed
[Sun Sep 15 03:07:48 2013] [notice] Balancer other-server-group changed
[Sun Sep 15 03:07:48 2013] [notice] Balancer other-server-group changed
[Sun Sep 15 03:07:48 2013] [notice] Balancer other-server-group changed
[Sun Sep 15 03:07:50 2013] [notice] Balancer other-server-group changed
{code}
And JBoss EAP side seems fine:
{code}
[Server:server-three] 03:07:47,302 INFO [org.jboss.modcluster] (ContainerBackgroundProcessor[StandardEngine[jboss.web]]) MODCLUSTER000011: jboss.web will use 30b18166-b3c4-3388-8fbe-50af073c7657 as jvm-route
{code}
I could see the node is registered in management console:
{code}
Node 30b18166-b3c4-3388-8fbe-50af073c7657 (ajp://10.0.1.13:8009):
Enable Contexts Disable Contexts
Balancer: other-server-group,LBGroup: ,Flushpackets: Off,Flushwait: 10000,Ping: 10000000,Smax: 1,Ttl: 60000000,Status: OK,Elected: 0,Read: 0,Transferred: 0,Connected: 0,Load: 100
{code}
But the cluster still not working correctly and I get '503 Service Temporarily Unavailable':
{code}
min:~ weinanli$ telnet 10.0.1.13 80
Trying 10.0.1.13...
Connected to min.
Escape character is '^]'.
GET /
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>503 Service Temporarily Unavailable</title>
</head><body>
<h1>Service Temporarily Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
</body></html>
Connection closed by foreign host.
{code}
I'll try to upgrade the EAP side mod_cluster to see if it could solve the problem.
Here is my http config:
{code}
<VirtualHost *:80>
ProxyPass / balancer://other-server-group
ProxyPassReverse / balancer://other-server-group
<Location />
Order deny,allow
Allow from All
</Location>
<Location /mod_cluster-manager>
SetHandler mod_cluster-manager
Order deny,allow
Allow from 10.0.1
</Location>
</VirtualHost>
{code}
{code}
<VirtualHost 10.0.1.13:10001>
<Directory />
Order deny,allow
Deny from all
Allow from 10.0.1.
</Directory>
KeepAliveTimeout 60
MaxKeepAliveRequests 0
ManagerBalancerName other-server-group
EnableMCPMReceive
AdvertiseGroup 224.0.1.105:23364
AdvertiseFrequency 5
</VirtualHost>
{code}
Here is EAP config:
{code}
<subsystem xmlns="urn:jboss:domain:modcluster:1.1">
<mod-cluster-config advertise-socket="modcluster" connector="ajp">
<dynamic-load-provider>
<load-metric type="busyness"/>
</dynamic-load-provider>
</mod-cluster-config>
</subsystem>
{code}
> BalancerMember directives cause httpd crash when using mod_cluster 1.2.x
> ------------------------------------------------------------------------
>
> Key: MODCLUSTER-356
> URL: https://issues.jboss.org/browse/MODCLUSTER-356
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.2.4.Final
> Environment: SLES-11-SP1 x86_64 running httpd 2.2.24 or 2.4.6 with any mod_cluster-1.2.x version and JBoss-AS-7.2.0.Final
> Reporter: Marco Danti
> Assignee: Jean-Frederic Clere
> Labels: balancerMember, crash, httpd, mod_cluster
>
> httpd dumps core in mod_proxy_cluster.c if the httpd.conf file contains BalancerMember directives.
> this happens at least with the following two setups:
> 1) httpd-2.4.6 and mod_cluster-1.2.x
> 2) httpd-2.2.24 and mod_cluster-1.2.3.Final
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 3 months
[JBoss JIRA] (MODCLUSTER-168) mod_cluster should use hostname provided in address instead a IP address
by Jean-Frederic Clere (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-168?page=com.atlassian.jira.pl... ]
Jean-Frederic Clere updated MODCLUSTER-168:
-------------------------------------------
Fix Version/s: 1.2.7.Final
(was: 1.2.6.Final)
> mod_cluster should use hostname provided in address instead a IP address
> ------------------------------------------------------------------------
>
> Key: MODCLUSTER-168
> URL: https://issues.jboss.org/browse/MODCLUSTER-168
> Project: mod_cluster
> Issue Type: Feature Request
> Affects Versions: 1.1.0.CR3
> Environment: any
> Reporter: Jean-Frederic Clere
> Assignee: Paul Ferraro
> Fix For: 1.2.7.Final
>
>
> The CONFIG message contains something like:
> JVMRoute=51ec121e-2976-3d75-bfd9-9e662bbb4bcd&Host=10.33.144.3&Port=8009&Type=ajp
> Even if the Connector is defined like:
> <Connector port="8009" address= "jfcpc" protocol="AJP/1.3" redirectPort="8443" />
> There are 2 ways to fix:
> - Use the String (Change the Connector.java in mod_cluster).
> - Use parameters.put("Host", connector.getAddress().getHostName()); when building the CONFIG message.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 3 months
[JBoss JIRA] (MODCLUSTER-359) stickysession not working with httpd-2.4.6 / mod_cluster-1.2.5.Final
by Marco Danti (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-359?page=com.atlassian.jira.pl... ]
Marco Danti updated MODCLUSTER-359:
-----------------------------------
Description:
Setup: HTTPD configured as reverse proxy / load balancer for two instances of JBOSS-AS-7.2.0.Final running in HA configuration on two separate nodes.
Consider the following configuration (defined inside my virtual hosts)
<Proxy balancer://mycluster>
ProxySet stickysession=JSESSIONID|jsessionid
</Proxy>
On httpd-2.2.24 / mod_cluster-1.2.0.Final it shows the following behaviour:
- 'stickysession' is working as expected
After upgrading to httpd-2.4.6/mod_cluster-1.2.5.Final things are worse:
- 'stickysession' is ignored and any client request gets dispatched alternatively
to each one of the two JBoss servers (exactly as if lbmethod=byrequest were defined)
As a final consideration, I read in the docs that stickysession should be enabled by default in mod_cluster anyway, but that is not the case for me.
was:
Setup: HTTPD configured as reverse proxy / load balancer for two instances of JBOSS-AS-7.2.0.Final running in HA configuration on two separate nodes.
Consider the following configuration (defined inside my virtual hosts)
<Proxy balancer://mycluster>
BalancerMember ajp://stw-1:7009/ route=stw-1
BalancerMember ajp://stw-2:7009/ route=stw-2
ProxySet stickysession=JSESSIONID|jsessionid
</Proxy>
On httpd-2.2.24 / mod_cluster-1.2.0.Final it shows the following behaviour:
- if the 'BalancerMember' directives are omitted, then 'stickysession' is
working as expected
- if the 'BalancerMember' directives are left in place, then the httpd server
generates a segment fault in mod_proxy_cluster.c, in function
"find_route_worker" at the line saying
if (*(worker->s->route) && strcmp(worker->s->route, route) == 0) {
because worker->s is NULL
After upgrading to httpd-2.4.6/mod_cluster-1.2.5.Final things are worse:
- if the 'BalancerMember' directives are omitted, then 'stickysession' is
ignored and any client request gets dispatched alternatively to each one of
the two JBoss servers (exactly as if lbmethod=byrequest were defined)
- if the 'BalancerMember' directives are left in place, then the httpd server
generates a segment fault in mod_proxy_cluster.c, in function
"internal_find_best_byrequests" when attempting to access the variable
'helper' (defined as 'proxy_cluster_helper *helper') because the line
helper = (proxy_cluster_helper *) worker->context;
results in helper == NULL.
As a final consideration, I read in the docs that stickysession should be enabled by default in mod_cluster anyway, but that is not the case for me.
> stickysession not working with httpd-2.4.6 / mod_cluster-1.2.5.Final
> ---------------------------------------------------------------------
>
> Key: MODCLUSTER-359
> URL: https://issues.jboss.org/browse/MODCLUSTER-359
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.2.5.Final
> Environment: OS. SLES-11-SP1 x86_64
> Reporter: Marco Danti
> Assignee: Jean-Frederic Clere
> Labels: httpd, mod_cluster, stickysession
>
> Setup: HTTPD configured as reverse proxy / load balancer for two instances of JBOSS-AS-7.2.0.Final running in HA configuration on two separate nodes.
> Consider the following configuration (defined inside my virtual hosts)
>
> <Proxy balancer://mycluster>
> ProxySet stickysession=JSESSIONID|jsessionid
> </Proxy>
> On httpd-2.2.24 / mod_cluster-1.2.0.Final it shows the following behaviour:
> - 'stickysession' is working as expected
> After upgrading to httpd-2.4.6/mod_cluster-1.2.5.Final things are worse:
> - 'stickysession' is ignored and any client request gets dispatched alternatively
> to each one of the two JBoss servers (exactly as if lbmethod=byrequest were defined)
> As a final consideration, I read in the docs that stickysession should be enabled by default in mod_cluster anyway, but that is not the case for me.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 4 months