Forum Discussion
Larry_G_54476
Nov 29, 2011Nimbostratus
F5 load balancing SMTP to 2 groups of servers
I have an F5 Load Balancers on the internal network.
I want to create a global VIP that directs SMTP traffic to 4 SMTP servers in group A.
I want the F5 to perform an SMTP health check on the 4 SMTP servers in group A.
If all 4 SMTP servers in group A fail the health check, I want the F5 to direct traffic to a second group of 4 SMTP servers in group B.
the F5 will continue to load balance to the group B servers until the group A SMTP servers are back up and respnding to the F5 Heath Check.
Can I configure the F5 to do this?
Thanks
Larry
- nitassEmployeecan you try something like this? this is for http.
[root@ve1023:Active] config b virtual bar list virtual bar { snat automap pool foo1 destination 172.28.19.79:80 ip protocol 6 rules myrule } [root@ve1023:Active] config b pool foo1 list pool foo1 { monitor all http members 200.200.200.101:80 {} } [root@ve1023:Active] config b pool foo2 list pool foo2 { monitor all http members 200.200.200.102:80 {} } [root@ve1023:Active] config b rule myrule list rule myrule { when CLIENT_ACCEPTED { if {[active_members [LB::server pool]] < 1} { pool foo2 } } }
- Larry_G_54476NimbostratusThanks. I will give it a try!
- Michael_YatesNimbostratusHi Larry G,
- nitassEmployeehi Michael, good point. 🙂
[root@ve1023:Active] config b virtual bar list virtual bar { snat automap pool foo destination 172.28.19.79:80 ip protocol 6 rules myrule profiles { http {} tcp {} } } [root@ve1023:Active] config b pool foo list pool foo { min active members 2 monitor all http members { 200.200.200.101:80 { priority 2 } 200.200.200.102:80 { priority 2 } 200.200.200.111:80 { priority 1 } 200.200.200.112:80 { priority 1 } } } [root@ve1023:Active] config b pool foo|grep -i pool\ member +-> POOL MEMBER foo/200.200.200.101:80 active,up +-> POOL MEMBER foo/200.200.200.102:80 active,up +-> POOL MEMBER foo/200.200.200.111:80 active,up +-> POOL MEMBER foo/200.200.200.112:80 active,up [root@ve1023:Active] config ab -c1 -n100 http://172.28.19.79/ ... [root@ve1023:Active] config b pool foo POOL foo LB METHOD round robin MIN/CUR ACTIVE MEMBERS 2/4 | (cur, max, limit, tot) = (0, 2, 0, 100) | (pkts,bits) in = (500, 287200), out = (500, 597200) +-> POOL MEMBER foo/200.200.200.101:80 active,up | | session enabled priority 2 ratio 1 | | (cur, max, limit, tot) = (0, 1, 0, 50) | | (pkts,bits) in = (250, 143600), out = (250, 366000) | | requests (total) = 50 +-> POOL MEMBER foo/200.200.200.102:80 active,up | | session enabled priority 2 ratio 1 | | (cur, max, limit, tot) = (0, 1, 0, 50) | | (pkts,bits) in = (250, 143600), out = (250, 231200) | | requests (total) = 50 +-> POOL MEMBER foo/200.200.200.111:80 active,up | | session enabled priority 1 ratio 1 | | (cur, max, limit, tot) = (0, 0, 0, 0) | | (pkts,bits) in = (0, 0), out = (0, 0) | | requests (total) = 0 +-> POOL MEMBER foo/200.200.200.112:80 active,up | session enabled priority 1 ratio 1 | (cur, max, limit, tot) = (0, 0, 0, 0) | (pkts,bits) in = (0, 0), out = (0, 0) | requests (total) = 0 [root@ve1023:Active] config b pool foo|grep -i pool\ member +-> POOL MEMBER foo/200.200.200.101:80 inactive,down +-> POOL MEMBER foo/200.200.200.102:80 active,up +-> POOL MEMBER foo/200.200.200.111:80 active,up +-> POOL MEMBER foo/200.200.200.112:80 active,up [root@ve1023:Active] config ab -c1 -n100 http://172.28.19.79/ ... [root@ve1023:Active] config b pool foo POOL foo LB METHOD round robin MIN/CUR ACTIVE MEMBERS 2/3 | (cur, max, limit, tot) = (0, 3, 0, 100) | (pkts,bits) in = (500, 287200), out = (500, 551368) +-> POOL MEMBER foo/200.200.200.101:80 inactive,down | | session enabled priority 2 ratio 1 | | (cur, max, limit, tot) = (0, 0, 0, 0) | | (pkts,bits) in = (0, 0), out = (0, 0) | | requests (total) = 0 +-> POOL MEMBER foo/200.200.200.102:80 active,up | | session enabled priority 2 ratio 1 | | (cur, max, limit, tot) = (0, 1, 0, 33) | | (pkts,bits) in = (165, 94776), out = (165, 152592) | | requests (total) = 33 +-> POOL MEMBER foo/200.200.200.111:80 active,up | | session enabled priority 1 ratio 1 | | (cur, max, limit, tot) = (0, 1, 0, 34) | | (pkts,bits) in = (170, 97648), out = (170, 157216) | | requests (total) = 34 +-> POOL MEMBER foo/200.200.200.112:80 active,up | session enabled priority 1 ratio 1 | (cur, max, limit, tot) = (0, 1, 0, 33) | (pkts,bits) in = (165, 94776), out = (165, 241560) | requests (total) = 33
Recent Discussions
Related Content
Â
DevCentral Quicklinks
* 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
Discover DevCentral Connects