如何在Kubernetes节点处于';未准备好';状态
我初始化了主节点并添加了2个工作节点,但在运行以下命令时,仅显示主节点和一个工作节点:如何在Kubernetes节点处于';未准备好';状态,kubernetes,Kubernetes,我初始化了主节点并添加了2个工作节点,但在运行以下命令时,仅显示主节点和一个工作节点: kubectl get nodes 此外,这两个节点都处于“未就绪”状态。 我应该采取什么步骤来理解问题可能是什么 我可以从每个其他节点ping所有节点 Kubernetes的版本是1.8 操作系统是分操作系统7 我使用以下repo安装Kubernetes: cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Ku
kubectl get nodes
此外,这两个节点都处于“未就绪”状态。
我应该采取什么步骤来理解问题可能是什么
- 我可以从每个其他节点ping所有节点李>
- Kubernetes的版本是1.8
- 操作系统是分操作系统7
- 我使用以下repo安装Kubernetes:
cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=http://yum.kubernetes.io/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 repo_gpgcheck=0 EOF yum install kubelet kubeadm kubectl kubernetes-cni
cat首先,描述节点并查看它是否报告任何内容:
查找条件、容量和可分配:$kubectl描述节点
如果这里一切正常,SSH进入节点并观察Conditions: Type Status ---- ------ OutOfDisk False MemoryPressure False DiskPressure False Ready True Capacity: cpu: 2 memory: 2052588Ki pods: 110 Allocatable: cpu: 2 memory: 1950188Ki pods: 110
日志,查看它是否报告任何内容。如证书错误、身份验证错误等 如果kubelet
作为systemd服务运行,则可以使用kubelet
由于不同的原因,我遇到了类似的问题: 错误:$journalctl-u kubelet
问题: 我的文件:10-calico.conflist不正确。从另一个节点和同一目录“calico.conflist.template”中的示例文件验证了它 决议: 更改文件“10 calico.conflist”并使用“systemctl restart kubelet”重新启动服务,解决了我的问题:cord@node1:~$ kubectl get nodes NAME STATUS ROLES AGE VERSION node1 Ready master 17h v1.13.5 node2 Ready <none> 17h v1.13.5 node3 NotReady <none> 9m48s v1.13.5 cord@node1:~$ kubectl describe node node3 Name: node3 Conditions: Type Status LastHeartbeatTime LastTransitionTime Reason Message ---- ------ ----------------- ------------------ ------ ------- Ready False Thu, 18 Apr 2019 01:15:46 -0400 Thu, 18 Apr 2019 01:03:48 -0400 KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Addresses: InternalIP: 192.168.2.6 Hostname: node3
我发现应用网络并重新启动两个节点对我来说都很管用 kubectl apply-f[podnetwork].yaml调试步骤:- 若您在kubernetes中遇到任何问题,第一步是检查kubernetes自身应用程序是否运行良好 检查命令:-名称状态角色年龄版本 节点1就绪主机18h v1.13.5 节点2就绪18h v1.13.5 节点3就绪48m v1.13.5
如果你看到任何吊舱坠毁,检查它的日志 如果获取kubectl获取吊舱-n kube系统
状态错误,请验证网络pod日志 如果无法解决上述问题,请执行以下步骤:-NotReady
#检查哪个节点未处于就绪状态kubectl get nodes
kubectl描述不在readystate中的节点名
- ssh到该节点
- 执行
#确保kubelet正在运行systemctl status kubelet
#确保docker服务正在运行systemctl状态docker
在修复错误后,您很可能会在此处了解错误。请使用以下命令重置kubelet:-
#深入检查日志journalctl-u kubelet
systemctl后台程序重新加载
如果您仍然没有找到根本原因,请检查以下事项:-systemctl重启kubelet
- 确保节点具有足够的空间和内存。特别是检查
目录空间。 要检查的命令:/var
-df
,-kh
自由-m
- 使用top命令验证cpu利用率。并确保任何进程都没有占用意外内存
我最近开始使用VMWare Octant。这是一个比Kubernetes仪表板更好的UI。您可以查看Kubernetes集群并查看集群和POD的详细信息。这将允许您检查日志并在POD中打开一个终端。谢谢Shahidh。使用
和kubectl descripe nodes
我能够找出问题,并能够将节点聚集在一起。@lex介意分享问题出在哪里,您做了什么?我的“NotReady”是因为kubelet退出,并且没有在某些节点上重新启动。重新启动,回到“准备就绪”,仍然不知道发生了什么。我也有同样的问题。kubelet服务在节点上关闭。问题是交换内存已打开。把它关掉,它工作得很好。最好在/etc/fstab上关闭它。你是如何更改文件的?@SumiStraessle:Vim文本编辑器可以用来更改文件“10 calico.conflist”的内容。这是一个巨大的帮助!救了我的集群!journalctl-u kubelet
Apr 18 01:24:50 node3 kubelet[54132]: W0418 01:24:50.649047 54132 cni.go:149] Error loading CNI config list file /etc/cni/net.d/10-calico.conflist: error parsing configuration list: no 'plugins' key Apr 18 01:24:50 node3 kubelet[54132]: W0418 01:24:50.649086 54132 cni.go:203] Unable to update cni config: No valid networks found in /etc/cni/net.d Apr 18 01:24:50 node3 kubelet[54132]: E0418 01:24:50.649402 54132 kubelet.go:2192] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Apr 18 01:24:55 node3 kubelet[54132]: W0418 01:24:55.650816 54132 cni.go:149] Error loading CNI config list file /etc/cni/net.d/10-calico.conflist: error parsing configuration list: no 'plugins' key Apr 18 01:24:55 node3 kubelet[54132]: W0418 01:24:55.650845 54132 cni.go:203] Unable to update cni config: No valid networks found in /etc/cni/net.d Apr 18 01:24:55 node3 kubelet[54132]: E0418 01:24:55.651056 54132 kubelet.go:2192] Container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized Apr 18 01:24:57 node3 kubelet[54132]: I0418 01:24:57.248519 54132 setters.go:72] Using node IP: "192.168.2.6"
NAME STATUS ROLES AGE VERSION node1 Ready master 18h v1.13.5 node2 Ready <none> 18h v1.13.5 node3 Ready <none> 48m v1.13.5