我想使用CloudFlare的1.1.1.1 and 1.0.0.1域名服务器在Kubernetes,沿着DNS over TLS。它looks like我可以用core-dns做到这一点。我需要安装某种方式如下:
1.1.1.1
和1.0.0.1
2606:4700:4700::1111
和2606:4700:4700::1001
tls.cloudflare-dns.com
我应该我ConfigMap
是什么样子?我已经开始它下面:
apiVersion: v1
kind: ConfigMap
data:
upstreamNameservers: |
["1.1.1.1", "1.0.0.1"]
你可以配置你的核心的DNS kubectl -n kube-system edit configmap coredns
并添加结束core文件中:
. {
forward . tls://1.1.1.1 tls://1.0.0.1 {
tls_servername cloudflare-dns.com
health_check 5s
}
cache 30
}
比保存新的配置并重新启动核心DNS吊舱。
kubectl get pod -n kube-system | grep core-dns | cut -d " " -f1 - | xargs -n1 -P 10 kubectl delete pod -n kube-system
这是直接从Azure AKS releases复制。
随着KUBE-DNS,有一个未公开的特性它支持的两种配置的地图允许用户执行DNS覆写/存根域,和其他自定义。随着转换CoreDNS中,此功能丧失 - CoreDNS仅支持单个配置图。通过上面的修补程序,AKS现在有一个解决办法,以满足定制的同一水平。下面是CoreDNS相当于ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
name: coredns-custom
namespace: kube-system
data:
azurestack.server: |
azurestack.local:53 {
forward . tls://1.1.1.1 tls://1.0.0.1 {
tls_servername cloudflare-dns.com
health_check 5s
}
cache 30
}
创建配置地图后,你将需要删除CoreDNS部署强制加载新的配置。
kubectl -n kube-system delete po -l k8s-app=kube-dns