首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >重新启动后,kubenetes主节点未处于就绪状态

重新启动后,kubenetes主节点未处于就绪状态
EN

Stack Overflow用户
提问于 2020-02-06 15:50:33
回答 1查看 202关注 0票数 0

我想知道当我重新启动我的ubuntu机器时,我已经用法兰绒设置了kubernetes master。在重新启动之前,它工作得很好。但在重新启动后,主节点未处于就绪状态。

我尝试使用describe获取节点的详细信息。

代码语言:javascript
复制
KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

此错误显示在日志中。我搜索了一下,找到了一些解决方案,比如重新初始化flannel.yml,但没有起作用。

https://github.com/kubernetes/kubeadm/issues/1031根据此处提供的解决方案,在机器中重新安装docker。这很管用。在机器上重新安装docker后,一切工作正常。有人能解释为什么会发生这种事吗?就像我重新启动机器,然后每次我需要重新安装docker?或者有没有我遗漏的任何其他设置或配置?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-28 17:02:43

根据提供的信息,当您遇到此类问题时,有几个步骤和要点需要考虑:

第一个检查是验证/etc/cni/net.d/中是否没有缺少文件10-flannel.conflist。您应该在那里有一个包含此类信息的文件:

代码语言:javascript
复制
{
 "name": "cbr0",
 "cniVersion": "0.3.1",
 "plugins": [
   {
     "type": "flannel",
     "delegate": {
       "hairpinMode": true,
       "isDefaultGateway": true
     }
   },
   {
     "type": "portmap",
     "capabilities": {
       "portMappings": true
     }

如果您的文件放在那里,请检查是否有明确的cniVersion字段。在一些法兰绒部署中,缺少cniVersion字段。

第二个故障排除检查是检查kubelet日志。Kubelet可能会报告一些找不到cni配置的问题。可以在以下位置找到日志:/var/log/kubelet.log

同样非常有用的是检查journalctl -fu kubelet的输出,并查看那里是否发生了任何错误。在某些情况下,重新启动kubelet可能会有所帮助,您可以使用systemctl restart kubelet执行此操作

如果您怀疑docker导致了问题,您可以使用与使用journalctl -ul docker检查kukubelet日志类似的方法来检查docker日志。如果docker导致一些问题,请尝试在使用sudo systemctl restart docker.service重新安装docker服务之前重新启动docker服务

最后,创建kubeadm集群,特别是pod network section,完全遵循official documentation是非常值得的。请注意,保存所有二进制文件以防止不必要的更新是很重要的。关于kubeadm,Kubernetes也有一个非常好的troubleshoot document

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60090030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档