kubernetes - 如何在 Ready,SchedulingDisabled 中查找 k8s 节点的原因
问题描述
每天都会发生一些变化,我的节点会将其状态更改为Ready,SchedulingDisabled。我检查kubectl describe node mynode
并没有发现任何东西。
kubectl uncordon
只帮助几个小时。如何对集群进行故障排除?我使用 opensuse kubic ,用kubicctl和salt创建的集群
谢谢。
解决方案
根据Api 文档/api/v1/nodes/nodename
,布尔标志通过对Kubernetes API 服务器公开的节点 API 的补丁请求更新为 true 。当这种情况发生时,kubectl events 中也会有一个事件
+ kubectl get events
LAST SEEN TYPE REASON OBJECT MESSAGE
5m26s Normal NodeNotSchedulable node/kind-control-plane Node kind-control-plane status is now: NodeNotSchedulable
因此,增加 Kubernetes API Server 的日志记录详细程度,以监控并找出补丁请求何时到达 API,并关联在此期间集群中是否正在进行任何活动(警戒线)。