我会尽力解释这一点,不是linux大师!大约一周前,在发送请求时突然开始收到 401,似乎在我们的 kubernetes 集群上,当它到达具有 DHCP 保留地址的一个节点时,它会失败。
我可以从日志中看到。
2024-03-03T01:54:50.100648572Z [ERROR] plugin/errors: 2 mq.my-dev.webpass.net. A: read udp 10.0.0.123:58924->8.8.4.4:53: i/o timeout
我可以看到resolve.conf中有这样一行:
search webpass.net
Webpass 是我们的 ISP。 kubernetes 集群已经工作正常一年了,然后突然在两周前开始出现这种情况。请注意,我们的 kubernetes 安装在裸机上。
有人建议我只需要注释掉搜索 webpass.net 行,但生成此文件时不知道在哪里查找该文件的来源。在路由器中看不到任何明显的东西,并且很长一段时间没有任何变化。
答案1
发现问题了。
我能够执行到应用程序的 pod,发现它仅将 复制到一个 podwebpass.net
中的搜索参数resolve.conf
,因此当它命中该 pod 时失败。
我从resolve.conf
k8 pod 中删除了它,并且还从 Ubuntu 上删除了它,resolve.conf
这样它就不会通过破坏符号链接并直接修改文件来再次复制。我确信可能有一种更优雅的方法可以使用 NetworkManager 来修复它。