如何解决来自服务器的错误:拨号后端错误:拨号tcp <datanode-ip>:I / O超时
我最近在kubernetes本地集群上遇到问题。当我使用命令kubectl exec -it curl-- bash
在名为“ curl”的pod上运行一些命令时,出现了一些错误:
error info
这是节点的信息: nodes info
pod'curl'在datanode-2上运行良好,而kubelet在端口10250上侦听,但我不知道为什么收到错误信息,这里是`kubectl describe po curl': curl pod describe
这是命名空间kube-system中的Pod,CNI是法兰绒: enter image description here
在其他pod上运行kubectl exec
相同(与datanode-1相同),如何解决此问题?
解决方法
我ssh到datanode-2,然后使用命令journalctl -u kubelet
,日志重复报告错误,为什么。kubelet log
此错误可能与kube-apiserver.service(在控制节点上)与kubelet.service(默认为端口10250)通信有关
要进行故障排除,您可能需要SSH进入控制节点,然后
telnet hostname(workernode) 10250
telnet privateip(workernode) 1025
如果两个telnet测试均失败,则可能与您在工作节点上的防火墙有关。因此,您应该在辅助节点中打开端口10250。检查kubelet是否正在此端口上运行
lsof -i :10250
如果telnet测试失败,则使用主机名或公共ip,但可以使用私有ip。您应该将标记添加到kube-apiserver的单元服务文件(位于/etc/systemd/system/kube-apiserver.service中)
--kubelet-preferred-address-types InternalIP
保存它,然后
systemctl daemon-reload
systemctl restart kube-apiserver
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。