Forum Discussion
Irule working on current connection.
What if instead of applying the iRule at the time of maintenance it was just always in place and then you trigger the maintenance request portion by disabling all the pool members? You could then proxy your internal requests to a separate pool to handle the testing.
I haven't validated the syntax of this, however the iRule would look like this. If your default pool is named my_pool_name your internal pool would be named my_pool_name_internal.
when HTTP_REQUEST {
If pool members are down
if {[active_members [LB::server pool]] < 1}
if {not ( [IP::addr "[IP::client_addr]/8" equals "10.0.0.0/8"]or[IP::addr "[IP::client_addr]/12" equals "172.16.0.0/12"]or[IP::addr "[IP::client_addr]/16" equals "192.168.0.0/16"]or[IP::addr "[IP::client_addr]/25" equals ".../25"]or[IP::addr "[IP::client_addr]/28" equals ".../28"]or[IP::addr "[IP::client_addr]/26" equals "..."] ) } {
HTTP::redirect "http://www.***.com/Maint_Pages/Maintenance.html"
} else {
Send to internal pool
pool "[LB::server pool]_internal"
}
}
}
The down side is the fact you know have to keep two pools updated when you add/remove members.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
