hi all,
We're seriously considering the deployment of pound as the front end of a
medium sized cluster to serve a set of applications, where each application
stack will look like this:
(the wilds)
|
|
front end pound box -- (heartbeat) -- hot spare front end pound box
|
|
192.168.1.*
(where 1 is the subnet for that app)
(192.168.1.* is a set of appservers running mongrel for rails apps on ports
8000-8300)
I'd like to see the pound syntax expanded to support wildcard or range
definitions for IPs and ports, so we don't have to futz with the config file
every time we add or remove a node from the cluster.
We would like to be able to replace syntax like this:
ListenHTTP
Address 0.0.0.0
Port 80
Service
BackEnd
Address 192.168.1.1
Port 8000
End
End
Service
BackEnd
Address 192.168.1.1
Port 8001
End
End
Service
BackEnd
Address 192.168.1.1
Port 8002
End
End
Service
BackEnd
Address 192.168.1.2
Port 8000
End
End
Service
BackEnd
Address 192.168.1.2
Port 8001
End
End
Service
BackEnd
Address 192.168.1.2
Port 8002
End
End
(etc for a very long time...)
End
With syntax like this:
ListenHTTP
Address 0.0.0.0
Port 80
Service
BackEnd
AddressRange 192.168.1.1-192.168.1.50
-or-
AddressRange 192.168.1.*
-or-
AddressRange 192.168.1.1-50
PortRange 8000-8006
End
End
End
Which does imply that pound would need to autodiscover ports that respond. If
it did, this would ease the burden of cluster management considerably, as we
could add and remove notes at will without writing a set of tools to generate
the pound config based on any changes we make to the physical infrastructure.
On that subject, does pound perform tests to verify if a BackEnd is functional
and responding as expected, and drop that BackEnd if the tests fail? Does pound
support a content verification test? (would be great to be able to provide a
little page which shows "OK" or "ERROR" based on the result of a set of tests
done by a script, and point pound at it with a simple regex). The content
checks are something I am used to from "commercial" load balancers. I have
never seen a load balancer which will autodiscover nodes, and it would be
really cool.
thanks!
_alex
|