我在一个使用Kubespray引导的1.26.5集群上发生了一件非常奇怪的事情(一个主节点,只有一个节点)。该集群使用CoreDNS,并自动使用Kubespray设置nodelocaldns。
我看到的第一件事是我的证书之一不是用cert-manager自动生成的。
起初我以为是发夹纳特,但运行几个测试放弃了这个理论。
我继续使用一个可抛出的pod运行一些查询,得到了这个(我用假的替换了真实的域名和真实的IP):
❯ kubectl run --rm -it busybox-2 --image=arunvelsriram/utils:latest
If you don't see a command prompt, try pressing enter.
utils@busybox-2:~$ nslookup admin-test-info.my.domain.com
Server: 169.254.25.10
Address: 169.254.25.10#53
Non-authoritative answer:
admin-test-info.my.domain.com canonical name = my.domain.com.
Name: my.domain.com
Address: 50.50.50.50
utils@busybox-2:~$ curl -v http://admin-test-info.my.domain.com
* Rebuilt URL to: http://admin-test-info.my.domain.com/
^C
字符串
这个curl请求挂在那里,没有来自DNS服务器的响应。然后我继续直接在规范名称上尝试curl请求,我得到了这个:
utils@busybox-2:~$ nslookup my.domain.com
Server: 169.254.25.10
Address: 169.254.25.10#53
Non-authoritative answer:
Name: my.domain.com
Address: 50.50.50.50
utils@busybox-2:~$ curl -v http://my.domain.com
* Rebuilt URL to: http://my.domain.com/
* Trying 50.50.50.50...
* TCP_NODELAY set
* Connected to my.domain.com (50.50.50.50) port 80 (#0)
> GET / HTTP/1.1
> Host: my.domain.com
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Content-Type: text/plain; charset=utf-8
< X-Content-Type-Options: nosniff
< Date: Mon, 04 Dec 2023 15:26:45 GMT
< Content-Length: 19
<
404 page not found
* Connection #0 to host my.domain.com left intact
型
404在这里是正常的,因为这个特定的主机没有Ingress路由。
我已经修改了nodelocaldns配置,使域admin-test-info.my.domain.com
看起来像一个指向本地IP的A
条目,我解决了我的问题,但我仍然需要了解这里发生了什么。有线索吗?
1条答案
按热度按时间ehxuflar1#
可能是DNS上的配置或网络设置导致了问题。您可以尝试此故障排除步骤以缩小可能导致问题的原因。
1.再次检查/etc/resolv.conf/文件中的DNS配置是否正确。
1.确保您的网络设置(如IP地址和掩码)正确。
1.检查您的日志,特别是那些带有警告或与以下内容相关的日志
admin-test-info.my.domain.com
1.您可以尝试在不同的节点上部署另一个pod,以检查问题是否仍然存在。