我已经在Google和Stackoverflow上检查了有关问题原因的任何暗示,但没有任何解决办法。
背景:
1个大师
6个节点
主节点和4个节点在收集日志时工作正常。 2个全新的节点,相同的操作系统,相同的证书,相同的网络,相同的配置,日志不起作用。
问题: kubectl记录pod-5c474fdf8-fk5zm -n部署 来自服务器的错误:获取https://ip-addr:10250/containerLogs/deployment/pod-5c474fdf8-fk5zm/pod:net / http:TLS握手超时
每次从主节点和其他4个节点返回日志。我以前遇到过这个问题,它奇迹般地消失了。这次没有喜悦。
我尝试过的事情:
- opened the ports on the firewall - main certs installed and trusted - added hostnames and IP's to hosts file - deleted re-added the nodes - updated the system certs - telnet from the other nodes to the offending nodes on port 10250 - openssl s_client -connect offendingnodes.com:10250 and compared to openssl s_client -connect workingnodes.com:10250 - googled the error - read the K8s documentation, again.
我真的很茫然,因此我们将不胜感激。
答案 0 :(得分:0)
我运行了命令curl -v8,它告诉我这不是tls / cert问题(真的是错误消息)。
这使我看到了其他问题,例如API服务器/网关,节点等。事实证明,在我的群集上的错误是由不匹配的API引起的。这是由于我添加了一个新节点。进行一些挖掘之后,我发现了一个命令,该命令可以让我查看集群正在运行的API版本,然后将其引导至更新版本。
我使用“ kubeadm升级计划”更新了群集。该命令建议我可以将群集更新到版本10.1.5或10.1.11,但是我需要先更新Kubeadm。我更新了Kubeadm,然后在所有其他节点上更新了我的kube组件。更新节点后,我使用kubeadm init join命令将所有节点添加到新的集群集中。 NB在这一点上,我想说的是,我的PODS都没有丢失。
一切都重新加入了集群,现在,我可以在所有PODS中浏览集群中的日志了。
我希望这对正在寻找答案的人有所帮助。