External-dns: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
(Created page with "=External= * https://github.com/helm/charts/tree/master/stable/external-dns =Internal= * Kubernetes DNS Concepts =Overview=")
 
 
(6 intermediate revisions by the same user not shown)
Line 6: Line 6:


=Overview=
=Overview=
One single deployment can serve multiple services in different namespaces.
=Installation=
<syntaxhighlight lang='bash'>
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install -n default external-dns bitnami/external-dns -f ./overlay.yaml
</syntaxhighlight>
Upon installation:
<syntaxhighlight lang='text'>
NAME                            READY  STATUS    RESTARTS  AGE
external-dns-5788c65f8c-7l7kd    1/1    Running  0          60m
</syntaxhighlight>
=Configuration=
==external-dns Configuration==
<syntaxhighlight lang='yaml'>
aws:
  region: us-west-2
registry: txt
policy: upsert-only
txtOwnerId: "Z0000000000000000000"
sources:
  - service
  - ingress
domainFilters:
  - example.com
</syntaxhighlight>
When the DNS service is Route53, "txtOwnerId" is the ID of the [[Amazon_Route53_Concepts#Hosted_Zone|hosted zone]]. It has other meanings when using a different DNS service.
==Service Configuration==
<syntaxhighlight lang='yaml'>
apiVersion: v1
kind: Service
metadata:
  annotations:
    external-dns.alpha.kubernetes.io/hostname: 'something.example.com'
</syntaxhighlight>

Latest revision as of 08:20, 13 November 2020

External

Internal

Overview

One single deployment can serve multiple services in different namespaces.

Installation

helm repo add bitnami https://charts.bitnami.com/bitnami
helm install -n default external-dns bitnami/external-dns -f ./overlay.yaml

Upon installation:

NAME                             READY   STATUS    RESTARTS   AGE
external-dns-5788c65f8c-7l7kd    1/1     Running   0          60m

Configuration

external-dns Configuration

aws:
  region: us-west-2
registry: txt
policy: upsert-only
txtOwnerId: "Z0000000000000000000"
sources:
  - service
  - ingress
domainFilters:
  - example.com

When the DNS service is Route53, "txtOwnerId" is the ID of the hosted zone. It has other meanings when using a different DNS service.

Service Configuration

apiVersion: v1
kind: Service
metadata:
  annotations:
    external-dns.alpha.kubernetes.io/hostname: 'something.example.com'