F5 DNS Load Balancer Cloud Service FAQ

Q: Which rules can I use to configure my DNS Load Balancer Cloud Service?

You can configure load balancing based on application availability, the location of the client, or a combination of location and availability.

Q: Are there any special setup or configuration requirements for the DNS Load Balancer Cloud Service?

Yes. Be sure to use ns1.f5cloudservices.com or ns2.f5cloudservices.com for the DNS nameserver.

Q: How does the service determine application availability?

You can configure monitors which can check your app instance availability via an ICMP test, TCP port test, or HTTP/HTTPS monitor. HTTP/HTTPS monitors can even evaluate the HTML content to verify the application is responding as expected.

Q: How does location-based load balancing work?

Location-based load balancing makes use of publicly available information found and GEO-IP databases about where an IP address resides. You can then use predefined regions or create custom regions to determine how to direct your traffic.

Q: What are the primary use cases and key features of the GSLB service?

F5 GSLB Cloud Service has built-in DNS-targeted DDoS protection and is built on a globally distributed anycast network in order to provide maximally highly available and responsive GSLB services. The service is ideal for customers interested in, but not limited to, the following scenarios:

  1. Customers wanting cloud hosted and fully managed GSLB services
  2. Customers looking for a cloud-based GSLB solution to span application instances hosted with multiple cloud providers
  3. Customers looking for a cloud-based redundancy layer for their on-prem GSLB
  4. Customers needing a fully programmatic GSLB infrastructure via REST interfaces

Q: What are the different load-balancing methods and how do they work?

The Ratio load balancing method

When you configure a pool to use the Ratio-Member load balancing method, DNS Load Balancer performs load balancing requests across the pool members based on the weight assigned to each pool member (virtual server). The system uses pool member weight as a percentage of the total of the weights of all the members assigned to the pool to determine the frequency at which a pool member receives connection requests.

Consider the fictional company SiteRequest, where the wide IP www.siterequest.com contains a pool named poolMain. This pool contains three members, with the following weight assignments:

  • Virtual Server 1: weight 50
  • Virtual Server 2: weight 25
  • Virtual Server 3: weight 25

Each time DNS Load Balancer selects this pool, it load balances across all three members. Over time, the load balancing statistics for this pool appear as follows:

  • Virtual Server 1: selected 50 percent of the time
  • Virtual Server 2: selected 25 percent of the time
  • Virtual Server 3: selected 25 percent of the time

Use Ratio when you want to send twice as many connections to a faster server and half as many connections to a slow server.

The Round-Robin load balancing method

The Round Robin load balancing method distributes DNS name resolution requests in a circular and sequential pattern among the virtual servers in a pool. Over time, each virtual server receives an equal number of connections.

Use Round Robin when you want to distribute requests equally among all virtual servers in a pool.

The Static Persist load balancing method

The Static Persist load balancing method uses the persist mask, with the source IP address of the LDNS, in a deterministic algorithm to send requests to a specific pool member (virtual server). Using this method DNS Load Balancer sends DNS name resolution requests to the first available pool member based on a hash algorithm that determines the order of the pool members. This algorithm orders the pool members differently for each LDNS that is sending requests to DNS Load Balancer, taking into account the Classless Inter-Domain Routing (CIDR) of the LDNS. As DNS Load Balancer distributes requests across all pool members, requests from each LDNS (and thus, each client) are generally sent to the same pool member. When the selected pool member becomes unavailable, DNS Load Balancer sends requests to another pool member. When the original pool member becomes available again, DNS Load Balancer sends requests to that pool member.

Use Static Persist when you want requests from a specific LDNS to resolve to a specific virtual server.

Q: Can load balancers be provisioned and updated via an API?

Yes, everything accessible via the GUI dashboard can be obtained or configured via a REST call. General API guidelines can be found in the API Guidelines. This document shows an example of how to create and activate a load balancer service.

A full OpenAPI specification and reference can be found in the Cloud Services portal at https://portal.cloudservices.f5.com/docs. The examples from the guidelines document makes use of the requests shown under SubscriptionService. Use Update a subscription to modify a service you have already created.

Q: Is historical usage or availability information available for my services?

Currently we do not show historical availability or usage information. However, usage and availability information is accessible via the GUI dashboard and can be obtained or configured via a REST call. General API guidelines can be found in the API Guidelines.

A full OpenAPI specification and reference can be found in the Cloud Services portal at https://portal.cloudservices.f5.com/docs. Look under the DashboardService section to see the reporting options.

  • Get the account dashboard will provide information for all your services in your account.
  • Get the service dashboard will provide information for a specific service in your account.
  • Get account summary will provide summary information by service type in your account.

The response for each of these will include count and duration fields, which show the number of queries your zone(s) has received over the specified time period. Below is a sample return for Get account summary.

{
   "stats": [
       {
           "type": "adns",
           "health": "GREEN",
           "count": "2439401",
           "duration": "90d"
       },
       {
           "type": "gslb",
           "health": "GREEN",
           "count": "3117194",
           "duration": "90d"
       }
   ]
 }

Q: How do I estimate the number of queries needed for a site, based on its web page visit counts?

Generally it is one query per unique visitor per domain that lasts for the TTL period configured in the load balanced record (LBR).

Q: Do I need to switch my DNS service entirely to F5 in order to use the DNS load balancer?

No, we actually advise against it. Continue to manage DNS through your current provider and delegate a subdomain for which F5 Cloud Services will issue responses. Then you would create CNAME records on the primary DNS nameserver for any FQDNs you want to load balance, pointing to A records in the delegated subdomain. The process is more or less the same as with F5’s self-hosted product, BIG-IP DNS, and more instructions can be found here: https://support.f5.com/csp/article/K277

Q: For basic PHP CMS marketing sites, what type of health check(s) would you recommend?

Create a monitor with an HTTP/HTTPS health check using a custom string matching text you expect to find in a response from the CMS. The documentation for working with DNS Load Balancer includes Details for creating an application health monitor.

Q: Who should I contact for help regarding F5 Cloud Services?

Visit the F5 Cloud Services Support page to see all of your support options.