talos
talos copied to clipboard
ndot DNS config
Feature Request
Provide a way to configure the ndot DNS configuration
Description
The ndot configuration seems to be currently set to 5.
Example with Prometheus stack deployed via Helm
/prometheus $ cat /etc/resolv.conf
search prometheus.svc.cluster.local svc.cluster.local cluster.local infra-dev.k8s.my.internal.domain
nameserver 10.96.0.10
options ndots:5
The ndot can be updated in a pod but when the pod has been created by an Operator, the change will be removed automatically. It's the ase for example with the Prometheus Operator which doesn't yet allow to customize this part.
Another workaround consist into giving real FQDN with an ending dot like my.domain.. It works for HTTP requests, but when the domain is protected by a TLS certificate the handshake fail (as expected).
Using a troubleshoot container I can observe that the cluster domain is added to the search
kubectl debug prometheus-prometheus-kube-prometheus-prometheus-0 -it --image=nicolaka/netshoot
+ kubectl debug prometheus-prometheus-kube-prometheus-prometheus-0 -it --image=nicolaka/netshoot
Defaulting debug container name to debugger-svkst.
prometheus-prometheus-kube-prometheus-prometheus-0% nslookup prom-endpoint.my.internal.domain
Server: 10.96.0.10
Address: 10.96.0.10#53
Non-authoritative answer:
Name: prom-endpoint.my.internal.domain.infra-dev.k8s.my.internal.domain
Address: 10.162.24.63
Maybe I missed something in the doc and there's actually another way to do this. Thanks by advance for any guidance 🙏