Skip to main content
FieldTypeDescriptionValue(s)
nameserversNameserverConfigA list of nameservers (DNS servers) to use for resolving domain names.

Nameservers are used to resolve domain names on the host, and they are also
propagated to Kubernetes DNS (CoreDNS) for use by pods running on the cluster.

This overrides any nameservers obtained via DHCP or platform configuration.
Default configuration is to use 1.1.1.1 and 8.8.8.8 as nameservers.
searchDomainsSearchDomainsConfigConfiguration for search domains (in /etc/resolv.conf).

The default is to derive search domains from the hostname FQDN.
hostDNSHostDNSConfigConfiguration for host DNS resolver.

This configures a local DNS caching resolver on the host to improve DNS resolution performance and reliability.

nameservers[]

NameserverConfig represents a single nameserver configuration.
FieldTypeDescriptionValue(s)
addressAddrThe IP address of the nameserver.
protocolDNSProtocolA DNS protocol to use.

The default protocol is plain DNS (Do53) (DNS over TCP/UDP). Set this to
DoT to use DNS over TLS (RFC 7858) on TCP port 853, or DoH to use DNS
over HTTPS (RFC 8484) on TCP port 443 with the /dns-query URL path. Both
DoT and DoH deliver encrypted queries to this nameserver.

Note: encrypted DNS protocols require a correct system clock to validate
certificates. If NTP is configured with hostnames that need to be resolved
through DoT/DoH, the boot may stall: NTP needs DNS, and TLS needs valid
time. Either rely on the hardware clock, configure NTP servers by IP, or
keep at least one plain-DNS fallback nameserver.
Do53
DoT
DoH
tlsServerNamestringTLS server name to validate the nameserver certificate against.

This field should be set if the protocol is set to DoT or DoH.
The value is used both as the SNI sent during the TLS handshake and as the
name verified against the server certificate. For DoH, it is also used as
the host portion of the request URL (https://<tlsServerName>/dns-query)
while the connection itself is established to the configured address.

searchDomains

SearchDomainsConfig represents search domains configuration.
FieldTypeDescriptionValue(s)
domains[]stringA list of search domains to be used for DNS resolution.

Search domains are appended to unqualified domain names during DNS resolution.
For example, if “example.com” is a search domain and a user tries to resolve
”host”, the system will attempt to resolve “host.example.com”.

This overrides any search domains obtained via DHCP or platform configuration.
The default configuration derives the search domain from the hostname FQDN.
disableDefaultboolDisable default search domain configuration from hostname FQDN.

When set to true, the system will not derive search domains from the hostname FQDN.
This allows for a custom configuration of search domains without any defaults.

hostDNS

HostDNSConfig represents host DNS configuration.
FieldTypeDescriptionValue(s)
enabledboolEnable host DNS caching resolver.

When enabled, a local DNS caching resolver is deployed on the host to improve DNS resolution performance and reliability.
Upstream DNS servers for the host resolver are configured using the nameservers field in this config document.
forwardKubeDNSToHostboolUse the host DNS resolver as upstream for Kubernetes CoreDNS pods.

When enabled, CoreDNS pods use host DNS server as the upstream DNS (instead of
using configured upstream DNS resolvers directly).
resolveMemberNamesboolResolve member hostnames using the host DNS resolver.

When enabled, cluster member hostnames and node names are resolved using the host DNS resolver.
This requires service discovery to be enabled.