Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Apache: Users

reverse proxy mod_proxy_balancer inside vhosts - balancer-manager oddity

 

 

Apache users RSS feed   Index | Next | Previous | View Threaded


Brad.Taylor at TELUS

Jul 19, 2012, 2:49 PM

Post #1 of 1 (251 views)
Permalink
reverse proxy mod_proxy_balancer inside vhosts - balancer-manager oddity

Newbie to the list, thanks for any suggestions.

I'm seeing some odd behavior when running mod_proxy_balancer and the balancer-manager handler.

I get duplicated balancer definitions in the /balancer-manager UI, with the second configuration set having no balancer members.

I've read the doc pages, googled and searched the mail-list archives. (I do see one report of similar behavior from July 2011:
http://httpd.markmail.org/message/vyw6gdldkhhkegkv?q=balancer-manager+duplicate+balancer+entry+order:date-backward)

The goal is to
- have some common URL's directed to a single backend server for both HTTP & HTTPS vhosts
- have other common URL's directed to a balanced worker configuration for both HTTP & HTTPS vhosts
- have a particular other common URL directed to a different balanced worker on a vhost server with a different name

Running Apache HTTP 2.2.21 on Windows Server 2008

Have three vhosts configured with two different server names:
- app.internal.tld / HTTP / TCP port 80
- app.internal.tld / HTTPS / TCP port 443
- webservices.internal.tld / HTTP / TCP port 80

Have a bunch of simple ProxyPass statements and two balancers configured outside the vhost config stanzas.

In both app.internal.tld vhosts have balanced configuration for /mainapp pointed to the "end-user" balancer worker.

In the webservices.internal.tld vhost config, have the balanced configuration for /mainapp pointed to the "web-services" balancer worker.

Simplified config is something like this:

<Proxy balancer://web_services>
BalancerMember http://server1 route=node1
ProxySet ...
</Proxy>

<Proxy balancer://end_user>
BalancerMember http://server1 route=node1
BalancerMember http://server2 route=node2
ProxySet ...
</Proxy>

ProxyPass /url1 http://server1/url1
ProxyPassReverse /url1 http://server1/url1
ProxyPass /url2 http://server1/url2
ProxyPassReverse /url2 http://server1/url2
ProxyPass /url3 http://server2/url3
ProxyPassReverse /url3 http://server2/url3

NameVirtualHost 192.168.3.1:80

<VirtualHost 192.168.3.1:80>
ServerName app.internal.tld

ProxyPass /mainapp balancer://end_user/mainapp
ProxyPassReverse /mainapp balancer://end_user/mainapp
</VirtualHost>


<VirtualHost 192.168.3.1:80>
ServerName webservices.internal.tld

ProxyPass /mainapp balancer://web_services/mainapp
ProxyPassReverse /mainapp balancer://web_services/mainapp
</VirtualHost>


<VirtualHost 192.168.3.1:443>
ServerName app.internal.tld

ProxyPass /mainapp balancer://end_user/mainapp
ProxyPassReverse /mainapp balancer://end_user/mainapp
</VirtualHost>

Everything appears to work correctly, except for balancer manager, which gets an extra entry for the balancer://end_user, that has no child members.

So I have the following questions:
1. Is there a better way to do this?
2. Is there a bug in balancer-manager?

I've attached the following files:
a. simplified config file
b. /server-status output
c. /balancer-manager output


Thanks again for any suggestions or recommendations.

--
Brad Taylor
brad dot taylor at telus dot com
Attachments: Apache Status - sample.html (113 KB)
  httpd-sample.conf (9.87 KB)
  Balancer Manager - sample.html (2.42 KB)

Apache users RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.