原因,有可能机器的cpu信息有变化(扩容或者缩容)
解决办法:
删掉/opt/var/lib/kubelet目录下(或者/data/lib/kubelet)cpu_manager_state文件 然后monit restart kubelet(或者systemctl restart kubelet) 就可以了
cd /var/lib/kubelet/
cat cpu_manager_state
rm -rf cpu_manager_state
systemctl restart kubelet
systemctl status kubelet
cpu_manager_state文件如下:
Kubernetes 从1.8开始提供了CPU Manager特性来支持cpuset的能力,CPU Manager支持两种Policy,分别为none和static:
none: 为cpu manager的默认值,相当于没有启用cpuset的能力。
static: 设置–cpu-manager-policy=static来启用,kubelet将在Container启动前分配绑定的cpu set,分配时还会考虑cpu topology来提升cpu affinity。
CPU管理器在运行时不支持CPU的离线和上线。此外,如果节点上的一组在线CPU发生变化,则必须清空该节点,并通过删除kubelet根目录中的状态文件cpu_manager_state手动重置CPU管理器。
原文链接