diff --git a/docs/advanced/dns-stack.md b/docs/advanced/dns-stack.md index ae560d4a8c1a3a71c23718fd22e3a24849c49e39..9524d2f85d2e320dca6a6c13b005345a581d0dd5 100644 --- a/docs/advanced/dns-stack.md +++ b/docs/advanced/dns-stack.md @@ -64,6 +64,10 @@ Custom options to be added to the kubernetes coredns plugin. Extra domains to be forwarded to the kubernetes coredns plugin. +### coredns_additional_configs + +Extra configuration to be added to CoreDNS configuration + ### coredns_rewrite_block [Rewrite](https://coredns.io/plugins/rewrite/) plugin block to perform internal message rewriting. @@ -290,6 +294,10 @@ nodelocaldns_external_zones: See [dns_etchosts](#dns_etchosts-coredns) above. +### nodelocaldns_additional_configs + +Extra configuration to be added to CoreDNS configuration + ### Nodelocal DNS HA Under some circumstances the single POD nodelocaldns implementation may not be able to be replaced soon enough and a cluster upgrade or a nodelocaldns upgrade can cause DNS requests to time out for short intervals. If for any reason your applications cannot tolerate this behavior you can enable a redundant nodelocal DNS pod on each node: diff --git a/roles/kubernetes-apps/ansible/defaults/main.yml b/roles/kubernetes-apps/ansible/defaults/main.yml index daebd07f6bb9ac61d615c0acbe00c6f1505bee6c..88cf81e1d3b5c95a14ae57be0e02bf15360aad04 100644 --- a/roles/kubernetes-apps/ansible/defaults/main.yml +++ b/roles/kubernetes-apps/ansible/defaults/main.yml @@ -55,6 +55,11 @@ nodelocaldns_ds_nodeselector: "kubernetes.io/os: linux" nodelocaldns_prometheus_port: 9253 nodelocaldns_secondary_prometheus_port: 9255 +# nodelocaldns_additional_configs adds any extra configuration to coredns +# nodelocaldns_additional_configs: | +# whoami +# local + # Limits for dns-autoscaler dns_autoscaler_cpu_requests: 20m dns_autoscaler_memory_requests: 10Mi diff --git a/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 b/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 index e8ce54529c02d8f592a634c131ca5af4fa0758f3..802915b3a9736143afbac6a4ce7636fe90ba23e7 100644 --- a/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 +++ b/roles/kubernetes-apps/ansible/templates/nodelocaldns-config.yml.j2 @@ -75,6 +75,9 @@ data: prometheus {% if nodelocaldns_bind_metrics_host_ip %}{$MY_HOST_IP}{% endif %}:{{ nodelocaldns_prometheus_port }} } .:53 { +{% if nodelocaldns_additional_configs is defined %} + {{ nodelocaldns_additional_configs | indent(width=8, first=False) }} +{% endif %} errors cache 30 reload @@ -157,6 +160,9 @@ data: prometheus {% if nodelocaldns_bind_metrics_host_ip %}{$MY_HOST_IP}{% endif %}:{{ nodelocaldns_secondary_prometheus_port }} } .:53 { +{% if nodelocaldns_additional_configs is defined %} + {{ nodelocaldns_additional_configs | indent(width=8, first=False) }} +{% endif %} errors cache 30 reload