Forum Discussion

darrenfoo_19996's avatar
darrenfoo_19996
Icon for Nimbostratus rankNimbostratus
Jun 22, 2012

Sending requests to specific URI to different pool based on load

Hi,

 

 

I'm trying to setup a parking lot feature where clients are sent to a maintenance page pool based on load or connections to a virtual server.

 

 

 

For example:

 

 

 

requests to http://www.domain.com/start and http://www.domain.com/stepX normally goto Pool A

 

 

 

When load or connections count gets to a threshold send requests to http://www.domain.com/start to Pool B but all other requests like http://www.domain.com/stepX to Pool A.

 

 

 

When load or connections count drops below threshold, send all requests back to pool A.

 

 

 

Is this possible? I'm running BigIP version 9.4.5. I looked at trying to do this with health monitors, but using pool health monitors would take the entire node offline. I'm looking at just alleviating some of the load by redirecting a specific start URI to another pool.

 

 

 

Thanks.

 

  • Hi,

     

     

    How do you want to determine what the load is on the pool members? You could potentially use a dynamic ratio load balancing method to check load via SNMP and adjust the ratio:

     

     

    sol9125: Overview of Dynamic Ratio load balancing

     

    https://support.f5.com/kb/en-us/solutions/public/9000/100/sol9125.html

     

     

    It would be tricky to do this across pools though. If dynamic ratio doesn't work for you, let me know and I'll try to come up with alternative options.

     

     

    Aaron
  • I was going to try and use snmp to pull CPU utilization metrics and put the same nodes into separate.

     

     

    node1,2 = live webservers

     

    node 3 = maintenance page

     

    Pool A includes node1,2 and node3 as failover

     

    Pool B includes node1,2

     

    irule with logic: URI startswith /start goto Pool A, else Pool B

     

     

    If snmp threshold is tripped, PoolA fails over to node3. Would this work?

     

     

  • If snmp threshold is tripped, PoolA fails over to node3. Would this work? you mean when normal, only node1 and node2 (in pool A) handle traffic but when their cpu utilization reaches threshold, you want they are marked down and node3 handle traffic instead, don't you?

     

     

    if so, yes it is possible by using priority group, i.e. 2 groups; one which is higher contains node1 and node2 and the other group has only node3, and external health monitor to do snmp polling cpu utilization on node1 and node2.