Forum Discussion

Francois_Dumais's avatar
Francois_Dumais
Icon for Nimbostratus rankNimbostratus
Mar 04, 2014

Recreating a Node Status Dependent Round Robbin DNS effect with F5

We are migrating from Radware WSD to F5 Big-Ip and are blocked on one legacy farm. This farm was setup in such a way that it would resolve the farm name based on the health status of background CORBA apps running on two servers. Somehow, if the corba running object was found to be up on server A, then a monitored html page would report it, and the farm was to reply back the IP of the running node server. On the opposite, if the running app instance was found to have been running on server B, then server B IP address was returned to the client application for it to point towards this node.

 

Are there similar mechanisms in F5 that allow to return background server's IP and allow the client application to establish a connection directly to a node or member? How would that be implemented in that case?

 

9 Replies

  • This can be done on LTM using HTTP monitors. If there's a special page to check for status (/amiupordown.html for example), you can tailor your HTTP monitor receive string to determine whether to mark the node up or down based on the content of the page.

     

    This will allow the farm admin to control which server to activate with no changes required on the LTM.

     

  • Yes, I agree with you, HTTP monitors can monitor specific keywords within a monitored html page. However it's only a part of the solution I am seeking as my client application needs to establish a connection directly with the node, not with the virtual server.

     

  • My apologies, I see you are looking specifically for DNS load balancing and no proxy.

     

    You can setup GTM to use an HTTP monitor to do this. Your two nodes would be members of a GTM pool and would be assigned to a wide IP. GTM would respond back to the client's request with whichever node is active at the time, based on the custom HTTP monitor you build.

     

  • Thanks. In my active modules when looking at my licenses within F5 admin gui, I have the following, but do not know how to interpret it :

     

    License Type Production

     

    GTM-DNS, Rate Limited, LO, BIG-IP(Perpetual)

     

    DNS Rate Fallback, 50 GTM Rate Fallback, 8 DNS Licensed Objects, 0 GTM Rate, 8 DNS Rate Limit, 50 QPS GTM Licensed Objects, 0 Optional Modules ..... Global Traffic Manager Module

     

    Would that mean I could technically realize the solution you just mentioned above (e.g. setup GTM to use an HTTP monitor) with this license profile?

     

  • Looks like you may have some limitations as far as objects, but you have the Global Traffic Manager module license which is the requirement to do this.

     

    To test, create your two servers (Global Traffic -> Servers) first. Then create the pool (Global Traffic -> Pools) and assign the two servers you created. Don't worry about a monitor for now. Then create a wide IP (Global Traffic -> Wide IPs) and assign the pool you just created.

     

    If this all can be done, then you should be good to go. You'll just need to build that custom HTTP monitor with the appropriate send and receive strings.

     

  • Ok thank you. The F5 11.4.1 box in which I would like to try to implement this solution shows that the GTM is "licensed" but is not enabled under the provisioning column (it shows "none"). When just putting a check mark in the box, a drop down box appears allowing me to chose between "nominal" and "minimum". This box is the actual production box. My question is : can I simply turn on the GTM feature and update the box without adverse impacts of any sort? Can GTM, once installed, have all kind of unforeseen effects? Can it interfere with our virtual setups? I would like no risk at all, given it is a production box.

     

    Thanks

     

    • Cory_50405's avatar
      Cory_50405
      Icon for Noctilucent rankNoctilucent
      Provisioning the GTM module WILL impact production traffic, so it's best to do this during off peak hours or in a maintenance window. Once the module has been provisioned, it should not adversely impact any existing configurations that you have in place.
  • I was told by a consultant that, out setup being in an active-passive pair (we have a pair of synchronized F5 boxes), implementing GTM to do DNS load balancing like the one we would like to implement here is not a good idea. Is it true? For what reason? In the case it would be true, are there workarounds? What are the pros? The cons?

     

    Thanks

     

    • Cory_50405's avatar
      Cory_50405
      Icon for Noctilucent rankNoctilucent
      Typically GTMs are deployed in an active-active scenario. I've never attempted or heard of a scenario where someone deployed GTMs in active-standby. I suspect it could be problematic just based on the way DNS delegation would work from a parent zone, though I can't say definitively. I'll have to defer to someone else who has attempted a GTM active-standby config.