我无法使用https卷曲/获取任何URL。他们都给连接被拒绝的错误。到目前为止,这是我观察到的:
当我从任何Pod中使用https卷曲任何URL时,域将解析为与预期IP地址不同的IP地址。我通过dig domainname
和curl
使用相同的域名进行了验证。两种IP不同
出于调试目的,我从kubelet docker容器中尝试了相同的方案,并且可以正常工作。但是,如果我在另一个应用程序容器中尝试过相同的操作,它将失败。
有什么主意吗?我敢肯定,网络存在一些问题。还有其他调试步骤吗?
该集群在裸机上设置了RKE,并使用运河进行联网。
我要卷曲的网站是updates.jenkins.io,这是nslookup输出
bash-4.4# nslookup updates.jenkins.io
Server: 10.43.0.10
Address: 10.43.0.10#53
Non-authoritative answer:
updates.jenkins.io.domain.name canonical name = io.domain.name.
Name: io.domain.name
Address: 185.82.212.199
节点的nslookup给出
root@n4:/home# nslookup updates.jenkins.io
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
updates.jenkins.io canonical name = mirrors.jenkins.io.
Name: mirrors.jenkins.io
Address: 52.202.51.185
据我所知,它正在尝试连接到io.domain.name而不是update.jenkins.io。
进一步检查,所有以.io结尾的域均引起此问题。这是另一个:
bash-4.4# nslookup test.io
Server: 10.43.0.10
Address: 10.43.0.10#53
Non-authoritative answer:
test.io.domain.name canonical name = io.domain.name.
Name: io.domain.name
Address: 185.82.212.199
答案 0 :(得分:2)
好吧,/etc/resolv.conf
出了点问题。它缺少正确的名称服务器条目。解决该问题后,重新启动系统组件,一切正常。