This feature is available in Enterprise Edition only.

The module is enabled by default in the Default bundle. The module is disabled by default in the following bundles: Managed, Minimal.

How to explicitly enable the module…

Note that the configOverrides parameter of the InitConfiguration resource is used when installing Deckhouse, not ModuleConfig.

Set the nodeLocalDnsEnabled: true or nodeLocalDnsEnabled: false in the configOverrides parameter to explicitly enable or disable the module when installing Deckhouse.

Use the nodeLocalDns section of the configOverrides parameter to configure the module when installing Deckhouse.

Set the spec.enabled module parameter to true or false to explicitly enable or disable the module.

Example of enabling the node-local-dns module:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: node-local-dns
spec:
  enabled: true

Example of disabling the node-local-dns module:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: node-local-dns
spec:
  enabled: false

The module does not require any configuration (it works right out-of-the-box).

Pay attention to the following:

  • The module supports the iptables kube-proxy mode only (the ipvs mode is not supported and not tested).
  • By default, the module does not serve hostNetwork requests (they are forwarded to kube-dns). In this case, you can specify the 169.254.20.10address in the Pod configuration yourself. However, if a node-local-dns will crash, you will not be able to get back to kube-dns.