Hi guys,

when using proxy balancer configuration ("<Proxy balancer://...") only in
(several) virtualhosts OR simply in server-config, everything works fine.
When you make use of balancer config in server-config AND virtual hosts,
slotmem fails.


This works:
(server-config)
<Proxy balancer://appcluster-https>
  BalancerMember https://appserv6.domain:7000 route=0
  BalancerMember https://appserv7.domain:7000 route=1
  ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
</Proxy>
ProxyPass /clusterjsp balancer://appcluster-https/clusterjsp
ProxyPassReverse / balancer://appcluster-https/



This also works:
(balancer config only in virtual hosts)
<VirtualHost *:8081>
  ...
  <Proxy balancer://appcluster-http>
    BalancerMember http://appserv1.domain:5080 route=0
    BalancerMember http://appserv2.domain:5080 route=1
    ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
  </Proxy>
  ProxyPass /clusterjsp balancer://appcluster-http/clusterjsp
  ProxyPassReverse / balancer://appcluster-http/
</VirtualHost>

<VirtualHost *:8082>
  SSLEngine On
  ...
  <Proxy balancer://appcluster-https>
    BalancerMember https://appserv6.domain:7000 route=0
    BalancerMember https://appserv7.domain:7000 route=1
    ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
  </Proxy>
  ProxyPass /clusterjsp balancer://appcluster-https/clusterjsp
  ProxyPassReverse / balancer://appcluster-https/
</VirtualHost>



This fails:
<Proxy balancer://default>
  BalancerMember http://appserv1.domain:5080 route=0
  BalancerMember http://appserv2.domain:5080 route=1
  ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
</Proxy>
ProxyPass /clusterjsp balancer://default/clusterjsp
ProxyPassReverse / balancer://default/

<VirtualHost *:8082>
  <Proxy balancer://appcluster-https>
    BalancerMember https://appserv6.domain:7000 route=0
    BalancerMember https://appserv7.domain:7000 route=1
    ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
  </Proxy>
  ProxyPass /clusterjsp balancer://appcluster-https/clusterjsp
  ProxyPassReverse / balancer://appcluster-https/
</VirtualHost>


error log:
[Wed Jun 13 15:37:06.728860 2012] [proxy_balancer:debug] [pid 9588:tid 
140210178676512] mod_proxy_balancer.c(752): AH01178: Doing balancers create: 
544, 1 (6)
[Wed Jun 13 15:37:06.728868 2012] [slotmem_shm:debug] [pid 9588:tid 
140210178676512] mod_slotmem_shm.c(300): AH02300: create 
/home/zisis/apache-instance-2.4/slotmem-shm-sc583e3db.shm: 544/6
[Wed Jun 13 15:37:06.728964 2012] [proxy_balancer:debug] [pid 9588:tid 
140210178676512] mod_proxy_balancer.c(807): AH01184: Doing workers create: 
balancer://default (sc583e3db_default), 512, 2
[Wed Jun 13 15:37:06.728970 2012] [slotmem_shm:debug] [pid 9588:tid 
140210178676512] mod_slotmem_shm.c(300): AH02300: create 
/home/zisis/apache-instance-2.4/slotmem-shm-sc583e3db_default.shm: 512/2
[Wed Jun 13 15:37:06.729001 2012] [proxy_balancer:debug] [pid 9588:tid 
140210178676512] mod_proxy_balancer.c(752): AH01178: Doing balancers create: 
544, 2 (7)
[Wed Jun 13 15:37:06.729007 2012] [slotmem_shm:debug] [pid 9588:tid 
140210178676512] mod_slotmem_shm.c(300): AH02300: create 
/home/zisis/apache-instance-2.4/slotmem-shm-s2d05e7bf.shm: 544/7
[Wed Jun 13 15:37:06.729037 2012] [proxy_balancer:debug] [pid 9588:tid 
140210178676512] mod_proxy_balancer.c(807): AH01184: Doing workers create: 
balancer://default (sc583e3db_default), 512, 2
[Wed Jun 13 15:37:06.729041 2012] [slotmem_shm:debug] [pid 9588:tid 
140210178676512] mod_slotmem_shm.c(584): AH02293: 
slotmem(/home/zisis/apache-instance-2.4/slotmem-shm-sc583e3db_default.shm) grab 
failed. Num 2/num_free 0
[Wed Jun 13 15:37:06.729044 2012] [proxy_balancer:emerg] [pid 9588:tid 
140210178676512] (22)Invalid argument: AH01186: worker slotmem_grab failed
[Wed Jun 13 15:37:06.729069 2012] [:emerg] [pid 9588:tid 140210178676512] 
AH00020: Configuration Failed, exiting



And just a general question:
should a balancer-config in server-config be also available in any virtualhost?
I didn't find any clue in documentation. At least it does not work, e.g.:
<Proxy balancer://default>
  BalancerMember http://appserv1.domain:5080 route=0
  BalancerMember http://appserv2.domain:5080 route=1
  ProxySet lbmethod=bybusyness nofailover=Off 
stickysession=JSESSIONID|jsessionid
</Proxy>
ProxyPass /clusterjsp balancer://default/clusterjsp
ProxyPassReverse / balancer://default/

<VirtualHost *:8082>
  ...
  ProxyPass /anotherapp balancer://default/anotherapp
  ProxyPassReverse / balancer://default/
</VirtualHost>

Same error as above, maybe also the same issue?:
"AH01186: worker slotmem_grab failed".




regards,
Zisis

Reply via email to