Forum Discussion

Gautham_382103's avatar
Gautham_382103
Icon for Nimbostratus rankNimbostratus
Jan 24, 2019

What is a good load balancing solution for the following scenario ?

Hello,

 

We are looking to deploy a Load balancer for Web Application Delivery in our datacenter. We have about 100 clients and about 10,000 concurrent connections. Currently we only have a single Web server and would like to add 2 more and put them behind behind the load balancer. I am looking for a lb that can support sticky sessions and load balance according to load. What would be the best model for this scenario ? Thanks for your help.

 

10 Replies

  • Probably least connections (node). The default behavior, round robin, doesn't really take sticky persistence into account, whereas least connections balances according to the current load on each server.

     

    • Gautham_382103's avatar
      Gautham_382103
      Icon for Nimbostratus rankNimbostratus

      Hi AMiles,

       

      Thank you so much for your response. I have one more question.

       

      Does the least connection method work based on the connection to the nodes only or does it take into account the CPU/RAM usage of the servers as well ?

       

    • AMiles_377865's avatar
      AMiles_377865
      Icon for Cirrocumulus rankCirrocumulus

      Hello Gautham,

       

      Least connections (node) does NOT take into account the current cpu/ram usage: it is based solely on the traffic your load balancer is sending to your pool members. There are other methods that take factors like that into account, which perform with varying degrees of success.

       

      HERE'S a link to the methods F5 supports.

       

  • The i2600 is F5's smallest hardware model. But I think you don't need 10 Gbps throughput.

     

    A Virtual Edition with a 25 Mbps or 200 Mbps license could be sufficient.

     

    Both virtual and physical support sticky sessions and all the load balancing methodes F5 supports. (software is the same)

     

    Cheers,

     

    Kees

     

  • wlopez's avatar
    wlopez
    Icon for Cirrocumulus rankCirrocumulus

    If you're looking for a platform recommendation (hardware or virtual) it would depend on the traffic volume and how basic/advanced a configuration you'll be doing. If you need high availability you'll need two boxes as an Active/Standby pair. The current smallest model is the i2600.

     

    If you're looking for a load balancing configuration recommendation it would depend on things like: Will you do ssl offloading?

     

    Is it an http based web application?

     

    Are the users coming from the internet or through an internal proxy server?

     

    For example:

     

    SSL offload on the F5

     

    Cookie insert persistence (Primary)

     

    Source Address persistence (Fallback)

     

    Pool with the three servers:

     

    Load balancing Method = Least Connections (Node) Health Monitor = http or https Pool

     

    • Gautham_382103's avatar
      Gautham_382103
      Icon for Nimbostratus rankNimbostratus

      Hi Wlopez,

       

      Thank you for your input. In response to your questions :

       

      It is a https based application.

       

      I would like the SSL traffic to pass-through to the end server.

       

      All users are coming from the Internet.

       

      Does the least connection method work based on the connection to the nodes only or does it take into account the CPU/RAM usage of the servers as well ?

       

      I am sorry if it is a lot of questions but this is the first time I am working on an lb. Just trying to make sure I have the best fit.

       

    • wlopez's avatar
      wlopez
      Icon for Cirrocumulus rankCirrocumulus

      You could do the ssl bridging option on the F5s.

       

      That is, ssl offloading on the F5 towards the clients and ssl towards the pool with the three servers.

       

      If you terminate the ssl traffic form the clients on the F5s, you can do cookie based persistence, which will improve the load balancing to a session based level.

       

      If you don't do so then you'll be limited to a more generic persistence method like source IP address, which will send all traffic from the same IP to the same server, regardless of how many users that IP represents(Ex. Corporate proxy).

       

      'Least Connections' only takes the current number of connections to each server to make it's load balancing decision. The server with the current lowest number of connections will receive the next one.

       

      There are other more advanced methods that do take things like CPU into account. Unless you have an exceptional situation, 'Least Connections' will do the job.

       

      You can read up on dynamic load balancing methods here:

       

      https://support.f5.com/csp/article/K6406

       

  • If you're looking for a platform recommendation (hardware or virtual) it would depend on the traffic volume and how basic/advanced a configuration you'll be doing. If you need high availability you'll need two boxes as an Active/Standby pair. The current smallest model is the i2600.

     

    If you're looking for a load balancing configuration recommendation it would depend on things like: Will you do ssl offloading?

     

    Is it an http based web application?

     

    Are the users coming from the internet or through an internal proxy server?

     

    For example:

     

    SSL offload on the F5

     

    Cookie insert persistence (Primary)

     

    Source Address persistence (Fallback)

     

    Pool with the three servers:

     

    Load balancing Method = Least Connections (Node) Health Monitor = http or https Pool

     

    • Gautham_382103's avatar
      Gautham_382103
      Icon for Nimbostratus rankNimbostratus

      Hi Wlopez,

       

      Thank you for your input. In response to your questions :

       

      It is a https based application.

       

      I would like the SSL traffic to pass-through to the end server.

       

      All users are coming from the Internet.

       

      Does the least connection method work based on the connection to the nodes only or does it take into account the CPU/RAM usage of the servers as well ?

       

      I am sorry if it is a lot of questions but this is the first time I am working on an lb. Just trying to make sure I have the best fit.

       

    • wlopez_98779's avatar
      wlopez_98779
      Icon for Nimbostratus rankNimbostratus

      You could do the ssl bridging option on the F5s.

       

      That is, ssl offloading on the F5 towards the clients and ssl towards the pool with the three servers.

       

      If you terminate the ssl traffic form the clients on the F5s, you can do cookie based persistence, which will improve the load balancing to a session based level.

       

      If you don't do so then you'll be limited to a more generic persistence method like source IP address, which will send all traffic from the same IP to the same server, regardless of how many users that IP represents(Ex. Corporate proxy).

       

      'Least Connections' only takes the current number of connections to each server to make it's load balancing decision. The server with the current lowest number of connections will receive the next one.

       

      There are other more advanced methods that do take things like CPU into account. Unless you have an exceptional situation, 'Least Connections' will do the job.

       

      You can read up on dynamic load balancing methods here:

       

      https://support.f5.com/csp/article/K6406