我尝试通过添加域来自定义kubernetes的coredns,并使用coredns中的forward插件将其转发到另一台服务器,如下所示。
Corefile: |
XXX:53 {
log
errors
cache 30
whoami
forward . X.X.X.X
reload
}
.:53 {
log
errors
health {
lameduck 5s
}
ready
whoami
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
fallthrough in-addr.arpa ip6.arpa
}
prometheus :9153
forward . "/etc/resolv.conf"
cache 30
loop
reload
loadbalance
}
字符串
我在coredns日志中看到它正在尝试resolv.conf中的搜索选项,这意味着这个dns查询转发到。:53服务器块(默认值)。我看到在更改coredns Corefile后重新加载完成日志。
/etc/resolv.conf
dnstools# cat /etc/resolv.conf
nameserver 10.43.0.10
search default.svc.cluster.local svc.cluster.local
options ndots:5
型
由于我对coredns和kubernetes还很陌生,如果有人解释为什么要尝试.:53 server block always以及如何使其工作,那将非常有帮助。如何进一步调试以找到此问题的根本原因。提前感谢!!!
1条答案
按热度按时间ubby3x7f1#
从kubernetes nameserver到我的内部nameserver的请求(我过去经常转发到)是不可访问的。在我的内部名称服务器允许来自kubernetes名称服务器IP的请求后,这个问题得到了解决。