Forum Discussion

William_Will_13's avatar
William_Will_13
Icon for Nimbostratus rankNimbostratus
Nov 06, 2013

LTM Load Balancing with backend monitoring

Hi all,

I have a design question that i would like to know if it is achievable using LTM.

               ______________
LB01 -- SW01 --| Webserver1 |-- Backend1 -- Database1
         |     |            |   
         |     |   VS A     |                                  
         |     |            |
LB02 -- SW02 --| Webserver2 |-- Backend2 -- Database2
               |____________|

VS A will be created to load balance Webserver1 and Webserver2. LTM will have to monitor the Backend and Database servers (all have connection to switches) to achieve the following:-

If Backend 1 OR Database 1 is unavailable, traffic will no longer be directed to Webserver 1.

If Backend 2 OR Database 2 is unavailable, traffic will no longer be directed to Webserver 2.

If the above is achievable, how can we implement it? I been thinking all around but can't seems to find a way to do it. Thanks to all.

  • There are a few ways;

     

    • Have the healthchecks to the Webservers trigger checks from the Webserver to the relevant Backend/Database servers. This doesn't really involve the F5 (apart from the Webserver pool), but is a good solution as it checks that the WebServer can reach it's assigned backend/database servers.

       

    • Use monitors assigned to the Webserver nodes (not the pool) that have alias addresses. You'd assign one monitor for the Backend and one for the database server assigned to each Web server node. You'd also have a monitor (with no alias) assigned to the Webserver pool.

       

    • Rearchitect so that you don't have such a tightly coupled hierarchy. Use a virtual for the Web Servers to talk to the backedn servers, and for the backend servers to talk to the database servers.

       

    Joanna

     

  • There are a few ways;

     

    • Have the healthchecks to the Webservers trigger checks from the Webserver to the relevant Backend/Database servers. This doesn't really involve the F5 (apart from the Webserver pool), but is a good solution as it checks that the WebServer can reach it's assigned backend/database servers.

       

    • Use monitors assigned to the Webserver nodes (not the pool) that have alias addresses. You'd assign one monitor for the Backend and one for the database server assigned to each Web server node. You'd also have a monitor (with no alias) assigned to the Webserver pool.

       

    • Rearchitect so that you don't have such a tightly coupled hierarchy. Use a virtual for the Web Servers to talk to the backedn servers, and for the backend servers to talk to the database servers.

       

    Joanna

     

    • rob_carr's avatar
      rob_carr
      Icon for Cirrostratus rankCirrostratus
      "Use monitors assigned to the Webserver nodes (not the pool)" == assigning monitors directly to the pool members.
    • IheartF5_45022's avatar
      IheartF5_45022
      Icon for Nacreous rankNacreous
      Yes thanks fort that - it had already occurred to me that I had misrepresented that and meant to fix it but you were too quick!