Docsright arrowEdge Stackright arrow1.14right arrowExternalDNS with Ambassador Edge Stack

3 min • read

ExternalDNS with Ambassador Edge Stack

ExternalDNS configures your existing DNS provider to make Kubernetes resources discoverable via public DNS servers by getting resources from the Kubernetes API to create a list of DNS records.

Getting started

Prerequisites

Start by checking the ExternalDNS repo's deployment instructions to get information about the supported DNS providers and steps to setup ExternalDNS for your provider. Each DNS provider will have its own required steps as well as annotations, arguments, and permissions needed for the following configuration.

Installation

Configuration for a ServiceAccount, ClusterRole, and ClusterRoleBinding are necessary for the ExternalDNS deployment to support compatability with Ambassador Edge Stack and allow ExternalDNS to get hostnames from Ambassador Edge Stack's Hosts.

The following configuration is an example configuring Ambassador Edge Stack - ExternalDNS integration with AWS Route53 as the DNS provider. Refer to the ExternalDNS documentation above for annotations and arguments for your DNS Provider.

  1. Create a YAML file named externaldns-config.yaml, and copy the following configuration into it.

  2. Review the arguments section from the ExternalDNS deployment

    Configure or remove arguments to fit your needs. Additional arguments required for your DNS provider can be found by checking the ExternalDNS repo's deployment instructions.

    • --source=ambassador-host - required across all DNS providers to tell ExternalDNS to look for hostnames in the Ambassador Edge Stack Host configurations.
  3. Apply the above config with the following command to deploy ExternalDNS to your cluster and configure support for Ambassador Edge Stack

Usage

After applying the above configuration, ExternalDNS is ready to use. Configure a Host with the following annotation to allow ExternalDNS to get the IP address of your Ambassador Edge Stack's LoadBalancer and register it with your DNS provider.