Forum Discussion

レザ's avatar
Icon for Cirrus rankCirrus
Aug 19, 2023

Migrate from Apache LB to BigIP LTM


Our corporation was using apache for loadbalancing some of its services, now im trying to migrate these apache balancers to bigip ltm but i have encountered with some issues

I have read the apache balancer httpd.conf and found the following parameters in the config file:


ServerLimit 1000
MaxClients 1000
KeepAlive On
MaxKeepAliveRequests 25
KeepAliveTimeout 15
TimeOut 30
ProxyTimeout 30
ProxyPreserveHost On
ProxyVia On


How and where can I set these parameters? i think i should create a new tcp profile and http profile for this to work?

Unfortunately, I didn't work much with Apache, and as a rule, some terms and things that are in the httpd.conf config file may not be in LTM or may exist under a different name. I wanted to know if anyone had such an experience so that they could guide me?


7 Replies

  • レザ I believe the following is the breakdown for those settings.

    1. ServerLimit and MaxClients can be set directly on the pool member.
    2. KeepAlive, MaxKeepAliveRequests, and KeepAliveTimeout might be under the HTTP profile.
    3. Timeout should be in the TCP profile.
    4. ProxyTimeout, ProxyPreserveHost, and ProxyVia would be a combination of virtual servers and varios other settings but not 100% on the location of them.

  • 424976's avatar
    Icon for Nimbostratus rankNimbostratus

    Indeed, migrating from Apache's load balancer to BIG-IP LTM (Local Traffic Manager) involves configuring profiles to achieve similar settings. Here's a general guide to translating the Apache settings to BIG-IP LTM:

    1. **ServerLimit and MaxClients:**
    - In BIG-IP, you configure the number of allowed connections through the profile settings of the Virtual Server.
    - Create a **TCP profile** and set the "Maximum Connections" value according to your requirement.

    2. **KeepAlive and MaxKeepAliveRequests:**
    - In BIG-IP, enabling or disabling Keep-Alive is done at the HTTP profile level.
    - Create an **HTTP profile** and set "Connection Keep Alive Timeout" to control Keep-Alive.
    - **MaxKeepAliveRequests** is not directly configurable in BIG-IP. Keep-Alive handling is more dynamic.

    3. **KeepAliveTimeout:**
    - As mentioned above, this is handled through the "Connection Keep Alive Timeout" setting in the HTTP profile.

    4. **TimeOut:**
    - This can be managed at the Virtual Server level. Set the "Default Persistence Profile" to your TCP profile and configure timeout values.

    5. **ProxyTimeout:**
    - In BIG-IP, you would adjust the HTTP profile settings to control timeouts for connections and server responses.

    6. **ProxyPreserveHost:**
    - BIG-IP will preserve the host header by default. No special setting is required.

    7. **ProxyVia:**
    - BIG-IP doesn't explicitly have a "ProxyVia" setting, but it's not typically necessary in this context.

    Remember that translating configuration from one system to another might require some adjustments based on the specific functionalities and terminology of the new platform. To ensure a smooth migration:

    - Create a new **TCP profile** and **HTTP profile** with the appropriate settings.
    - Assign these profiles to your **Virtual Server**.
    - Test the configuration with a subset of your traffic to ensure it behaves as expected.
    - Monitor system behavior and adjust configurations as needed.

    F5's documentation and support resources will provide in-depth guidance for configuring LTM profiles and policies. If you're unfamiliar with BIG-IP LTM, it might be a good idea to consult F5's documentation or reach out to their support for tailored assistance.

  • レザ - the solution you marked was built by a spammer. 
    the solution provided was generated by an LLM like ChatGPT - and therefore it may, or may not, be accurate.
    I am going to

    • unmark it as an accepted solution.
    • ban that user for violating our terms (spamdexing)**
      normally I would also remove any posts they make because they cannot be trusted and are too difficult to vet.
      but if you are sure the answer is good feel free to re-mark it as solution. (the username will be different when I get done with my processing)


    ** This particular Spam Approach is called SpamDexing. Typically a seemingly good (or non-descript) reply is posted one day and then hours or days later a string of text in white is edited-in pointing to their target. The replies, now generated by LLMs, can be very deceptive - and perhaps even accurate...but cannot be trusted as they are not used to solve problems - only to deceive.

    When the text on the page is highlighted - it looks ilke this.


    • レザ's avatar
      Icon for Cirrus rankCirrus

      Hello LiefZimmerman ,
      I can't believe that I was fooled :)))
      But it seems that the answers given are reasonable and acceptable.

      • Hehe - don't be hard on yourself. This is some powerful tech (LLM - ChatGPT) AND right at the fingertips of anyone that wants to use it for whatever purpose.
        * If that reply is useful for you (despite it's bad intention) I'm happy to leave it up.
        * But if it is in any way misleading I will prefer to take it down.

  • Hi レザ, one thing you might do since you're migrating is take a step back and talk to apache team, or if that's you, understand why those settings are there, and how something new (like the BIG-IP) being in place might be an opportunity to re-evaluate and adjust. Sometimes it is perfectly fine to replace like-for-like, but you might get some benefit in performance or reduced complexity by taking a minute to understand what the system requires.

    Just adding my $.02 to what has already been suggested. 

    • レザ's avatar
      Icon for Cirrus rankCirrus

      Hello JRahm ,
      Believe it or not, the person who launched this balancer is the manager of the relevant web application and unfortunately he is not cooperating :)))))))))))))
      The only favor that was given to me was that I was able to access the configuration of the Apache balancer.