Skip to content

External DNS Config Schema

Note

This is auto-generated documentation from a JSON schema that is under construction, this will improve over time.

Return to the root config schema

https://raw.githubusercontent.com/elastisys/compliantkubernetes-apps/main/config/schemas/config.yaml#/properties/externalDns

Configure External DNS.

External DNS manages DNS records based on Kubernetes resources, and can automatically configure DNS records from:

  • CRD resources
  • Ingress resources
  • Service resources

Currently only AWS Route 53 is supported as the DNS provider.

Note

See the upstream documentation for reference.

Abstract Extensible Status Identifiable Custom Properties Additional Properties Access Restrictions Defined In
Can be instantiated No Unknown status No Forbidden Forbidden none config/schemas/config.yaml*

TYPE:

object (External DNS Config)

PROPERTIES:

Property Type Required Nullable Defined by
enabled boolean Optional cannot be null Compliant Kubernetes Apps Config
namespaced boolean Optional cannot be null Compliant Kubernetes Apps Config
provider string Optional cannot be null Compliant Kubernetes Apps Config
sources object Optional cannot be null Compliant Kubernetes Apps Config
domains array Optional cannot be null Compliant Kubernetes Apps Config
txtOwnerId string Optional cannot be null Compliant Kubernetes Apps Config
txtPrefix string Optional cannot be null Compliant Kubernetes Apps Config
endpoints array Optional cannot be null Compliant Kubernetes Apps Config
extraArgs array Optional cannot be null Compliant Kubernetes Apps Config
logLevel string Optional cannot be null Compliant Kubernetes Apps Config
resources object Optional cannot be null Compliant Kubernetes Apps Config
tolerations array Optional cannot be null Compliant Kubernetes Apps Config
topologySpreadConstraints array Optional cannot be null Compliant Kubernetes Apps Config
affinity object Optional cannot be null Compliant Kubernetes Apps Config

enabled

enabled

TYPE:

boolean (External DNS Enabled)

namespaced

namespaced

TYPE:

boolean (External DNS Namespaced)

provider

provider

TYPE:

string (External DNS Provider)

EXAMPLES:

aws

sources

Configure the sources External DNS should manage DNS records for.

sources

TYPE:

object (External DNS Sources)

domains

Configure the domains External DNS should manage.

domains

TYPE:

string[] (External DNS Domain)

txtOwnerId

txtOwnerId

TYPE:

string (External DNS TXT Owner ID)

EXAMPLES:

set-me-if-externalDns.enabled

txtPrefix

Configure a prefix to TXT records.

This is required with AWS Route 53 if CNAME records are preferred over A/AAAA records as it cannot handle both at the same time.

txtPrefix

TYPE:

string (External DNS TXT Prefix)

endpoints

Configure the endpoints to create DNS records for.

Requires externalDns.sources.crd to be enabled.

endpoints

TYPE:

object[] (External DNS Endpoint)

extraArgs

Extra arguments passed to a container

extraArgs

TYPE:

string[]

logLevel

logLevel

TYPE:

string (External DNS Log Level)

EXAMPLES:

info

resources

Resource requests are used by the kube-scheduler to pick a node to schedule pods on.

Limits are enforced. Resources are commonly 'cpu' and 'memory'.

resources

TYPE:

object (Kubernetes Resource Requirements)

EXAMPLES:

requests:
  memory: 128Mi
  cpu: 100m
limits:
  memory: 256Mi
  cpu: 250m

tolerations

Kubernetes Tolerations

Kubernetes taint and toleration

tolerations

TYPE:

an array of merged types (Details)

topologySpreadConstraints

TopologySpreadConstraints describes how pods should spread across topology domains.

topologySpreadConstraints

TYPE:

an array of merged types (Details)

affinity

Affinity is a group of affinity scheduling rules.

affinity

TYPE:

object (Affinity)

Return to the root config schema


Generated Sat Jun 22 03:48:20 UTC 2024 from elastisys/compliantkubernetes-apps@main