F5Networks / f5-google-gdm-templates

Google Deployment Templates for quickly deploying BIG-IP services in Google Cloud Platform
28 stars 45 forks source link

API Failover doesnt work with Custom DNS #14

Closed jmcalalang closed 5 years ago

jmcalalang commented 5 years ago

Description

Using custom DNS in the BIG-IP will cause the failover to fail to work, if you need logs please let me know (this can be provided internally)

Steps to reproduce:

If I add my own DNS servers under sys/dns it no longer fails over (unless I have the default DNS server listed first) If I revert the changes it will failover again fine.

Template

PAYG Template

Severity Level

For bugs, enter the bug severity level. Do not set any labels.

Severity:

  1. Severity 3 (Medium) : Defect is causing intermittent errors in system operations.
jmcalalang commented 5 years ago

This issue is caused because internal DNS is not available to google when you remove the default DNS servers 169.254.169.254. Removing this broke all the scripting since our failover script uses the "metadata.google.internal" as the API endpoint to manipulate the forwarding rules. You can see this referenced all over the cluster script starting on line 12.

Since this endpoint is static (metadata.google.internal) we used a host entry on the two big-ip's to make the failover method function. I dont know a reason why this couldnt be added to the template as a default, it would stop this issue and allow custom DNS in the future.

mikeshimkus commented 5 years ago

Hi Jon, tracking this with internal issue #904.

garrettdieckmann commented 5 years ago

Hello Jon,

Release v2.2.0 (released May 7th) included a fix for this issue (internal issue #904). Our Failover templates now adds a host route to the hostname of Google's metadata service (metadata.google.internal).