Zoi*_*dik 5 dns networking resolve kubernetes k3s
我面临着奇怪的问题。
我做了什么:
我部署了Rancher K3S集群,并且使用基于 debian 的映像进行 dns 解析时出现问题。域名未正确解析 - 它使用我们的域名之一添加后缀。
我发现了什么:
基于 Debian 的镜像在末尾添加了带有域的后缀。例如,我 ping google.com 及其 ping google.com.example.com。(example.com 是我们的域名之一 - 没有指定它,因为在我看来它并不重要)
同样,curl google.com 也会向 example.com 的 IP 地址发出请求。即使尝试了纯 Debian 映像,它仍然存在同样的问题。
基于 Alpine 的图像工作正常(ping 到 google.com ping google.com,nslookup 显示正确的 IP 地址)。
安装了 k3s 的主机服务器也可以正常工作(redhat os)。Ping 至 google.com ping google.com。
一些可能对您有帮助的附加数据:
CoreDNS configmap kubectl -n kube-system 获取 configmap coredns -o go-template={{.data.Corefile}}
.:53 {
errors
health
ready
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
upstream
fallthrough in-addr.arpa ip6.arpa
}
hosts /etc/coredns/NodeHosts {
reload 1s
fallthrough
}
prometheus :9153
forward . 8.8.8.8
cache 30
loop
reload
loadbalance
}
Run Code Online (Sandbox Code Playgroud)
有人遇到相同或类似的问题吗?你有什么要点可以推动我解决吗?
谢谢,大卫
k3s我在 8 上的 (v.v1.19.3+k3s3)中遇到了类似的问题centos(不过不太确定它与图像的操作系统有什么关系)。k3s与其他发行版相比,即插即用有点少microk8s。
在每个节点上,您可以说您想要使用主机的解析参数。如果k3s作为systemd 服务进行管理(可能是这种情况),您只需编辑即可/etc/systemd/system/k3s.service.env添加系统的resolv.conf
K3S_RESOLV_CONF=/etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)
然后重新启动服务
K3S_RESOLV_CONF=/etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)
resolv.conf处在于,根据 kube 使用的节点,相同的部署可能会以不同的方式运行没有尝试过,但这是文档
| 归档时间: |
|
| 查看次数: |
2531 次 |
| 最近记录: |