Available in editions: BE, SE, SE+, EE
The module lifecycle stage: General Availability
- The module works with all
CNIs, but in order to work correctly withcni-cilium, a number of conditions must be met. - By default, when used together with the
cni-simple-bridgeorcni-flannelmodules, thenode-local-dnsmodule does not work for requests fromhostNetwork. In this case, all requests go to thekube-dnsmodule. You can specify the address169.254.20.10in the pod configuration, but ifnode-local-dnsmodule crashes, there will be no fallback to thekube-dnsmodule.
The module has 5 alerts.
The module is enabled by default in the Default bundle.
The module is disabled by default in the following bundles: Managed, Minimal.
Requirements
To the versions of other modules:
-
kube-dns: any version.
Parameters
Schema version: 1
- objectsettings
- booleansettings.enableLogs
Enables query logging for node-local-dns instances.
Default:
false - booleansettings.highAvailability
Manual failover mode management. Within this module, the option affects the DNS records caching mechanism on nodes:
true: upon the expiration of the TTL for an individual DNS record, node-local-dns will continue to return the “stale” value immediately while simultaneously requesting a fresh value from the upstream kube-dns. Thus, in the event of issues with the nodes where kube-dns is running, applications will continue to receive responses to DNS queries with expired TTL, but without delay.false: upon the expiration of the TTL for an individual DNS record, node-local-dns will continue to return the “stale” value, but only after querying the upstream kube-dns. Thus, in the event of issues with the nodes where kube-dns is running, applications will continue to receive DNS responses with expired TTL, but with potentially significant delay. This approach is suitable in highly dynamic environments where Services and Namespaces are frequently recreated.
By default, Deckhouse automatically decides whether to enable the HA mode. Click here to learn more about the HA mode for modules.
Example:
highAvailability: true

