使用Kubekey2.1.1版本安装Kubernetes1.23.6,成功部署集群,其中master节点有5个,这5个节点上面也安装了etcd。另外有10个节点是work节点。
现在的问题是:master1 主节点宕机,然后重启之后,从dashboard看各个节点都正常。
但是从其他的master节点上运行 kubectl的相关命令,例如kubectl get nodes 得到的是如下提示:
Unable to connect to the server: dial tcp: lookup lb.kubesphere.local on 127.0.0.53:53: no such host
而在重启之后的master1节点上则可以正常运行。
查看了master1和master2的/etc/resolv.conf,都具有相同的内容(前面的注释都给去掉了):
nameserver 127.0.0.53
options edns0 trust-ad
在master1和master2上ping 127.0.0.53 都可以ping通
在master1和master2运行netstat -nltp |grep 53,都可以看到雷同的内容:
tcp 0 0 169.254.25.10:53 0.0.0.0:* LISTEN 3022/node-cache
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 592/systemd-resolve
tcp6 0 0 :::9253 :::* LISTEN 3022/node-cache
tcp6 0 0 :::9353 :::* LISTEN 3022/node-cache
按照上面的错误提示,在master1上执行 ping lb.kubesphere.local 可以ping通。
而在master2上ping lb.kubesphere.local 则不通,显示如下:
ping: lb.kubesphere.local: Name or service not known
如此说来是在其他的master节点上无法访问lb.kubesphere.local,不知道该如何解决?
非常感谢