Skip to main content
Skip table of contents

External DNS

This section describes how to use external-dns to maintain your DNS records

You require a DNS record when setting up a custom domain for your cluster. You can either create one manually, or set up the external-dns service to manage your DNS record automatically.

If you choose to use external-dns to maintain your DNS records, the external-dns will take care of pointing the DNS record to the ingress of the cluster automatically.

The following example shows how to configure external-dns to manage DNS records in AWS Route 53 automatically:

  1. Open the kommander.yaml file:

    1. If you do not have a kommander.yaml file, initialize the configuration file, so you can edit it in the following steps. WARNING: Initialize this file only ONCE, otherwise you will overwrite previous customizations.

    2. If you have initialized the configuration file already, open the kommander.yaml with the editor of your choice.

  2. Adjust the app section of your kommander.yaml file to include these values:

    CODE
    apps:
      external-dns:
        enabled: true
        values: |
          aws:
            credentials:
              secretKey: <secret-key>
              accessKey: <access-key>
            region: <provider-region>
            preferCNAME: true
          policy: upsert-only
          txtPrefix: local-
          domainFilters:
            - <example.com>
  3. In the same app section, adjust the traefik section to include the following:

    CODE
    traefik:
        enabled: true
        values: |
          service:
            annotations:
              external-dns.alpha.kubernetes.io/hostname: <mycluster.example.com>

Refer to the external-dns documentation for more information, as well as further instructions on how to configure external-dns to use other DNS providers like Google Cloud DNS, CloudFlare, or on-site providers.

Kommander managed clusters

To configure external DNS for attached clusters, the External DNS application must be enabled in the Kommander Workspace.

Configure External DNS using the UI

  1. Select the workspace your cluster is attached to from the top navigation bar.

  2. Navigate to the Applications overview.

  3. Search for the External DNS application and select Enable from the three-dot menu on the bottom right of the application card.

  4. On the enable page, you can apply a specific configuration. Select Download File, which provides a default example you can adjust to your needs. Once all changes are made, its content can either be copied and pasted into the text field or uploaded using the Upload File button.

Here is an example configuration. Refer to external-dns documentation for more information:

YAML
aws:
    credentials:
        secretKey: <secret-key>
        accessKey: <access-key>
    region: <provider-region>
    preferCNAME: true
policy: upsert-only
txtPrefix: local-
domainFilters:
    - <example.com>

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.