Forum Discussion

mkyrc's avatar
mkyrc
Icon for Cirrus rankCirrus
Jun 11, 2024

GTM answer based on pool member status

Hello,

I'd like to configure GTM to answer FQDN request with specific IP address in answer based on status of another GSLB pool member. 

Example:

I have two GSLB pools: pool1 (there are members located in datacenter1) and pool2 (members located in dc2).  Required answer to FQDN e.g. 'service.domain.com' is IP1 when pool1 is up, or IP2 when IP2 is up. IP1 and IP2 are not IP addresses of pool members pool1/pool2 but statically defined on GTM (I'm not sure where). I can't use fallback IP (because it is not reflecting pool availability status)

Is it possible to configure GTM based on above example?

  • generally we do this with LTM plus GTM.

    Two LTM vips are created, one in each datacenter. Each uses the data center pool. They reflect their availability based on the status of that pool

    One GTM enty is created with the two LTM vips as pool members. DNS then resolves in the GTM vip based on the status of the LTM vips in it's pool.

    We often apply topology such that machines in dc1 will use the LTM vip in dc1 if available, and machines in dc2 will use the LTM vip in dc2 if available. Either will fail over to the other datacenter based on the GTM replies.

  • Yes, that is possible.

    You can use this irule (DNS irule):

    when DNS_REQUEST {
      if { ([DNS::question name] contains "service.domain.com") && ( [active_members pool1] > 0) } {
           host IP1
        } else {
            host IP2
        }
    }

    Replace IP1 and IP2 with the actual IP address.