Hi Ross,
That's making more sense then. So if you want to maintain your own mapping of the hostnames and their corresponding pools, you could do that in the datagroup (or internal list). Before issuing the redirect, you could look up the host's corresponding pool and verify that the pool has one or more active members. If that test fails, you could try the next host in the list.
The list would be something like this:
list {host1 pool1} {host2 pool2} {host3 pool3}
You could then use a foreach loop to go through each list entry and check if the pool is up.
Alternately, you could write a rule for the individual virtual servers that redirects if there aren't any members marked up in the pool. The fallback option on the HTTP profile provides this kind of functionality. Doing it this way would eliminate the need to map the hosts to a corresponding pool and check the state of the pools beforehand.
If you choose the first option and get stuck, let me know.
Aaron