PLEG
不熟悉PLEG(Pod Lifecycle Event Generator)的同学,可以先看下这篇文章What is PLEG?。
这篇文章对pleg是什么和常见的unhealthy
问题有很详细的介绍。
cni
当k8s的 cni 插件性能较差,node上的pod 数量较多(大于 80)的时候,我们常常会遇到PLEG出错的问题:
PLEG is not healthy: pleg was last seen active 6m55.488150776s ago; threshold is 3m0s
调试kuryr cni的时候,发现当openstack neutron
服务压力比较大的时候。
cni这边申请和释放 port的时延会相应的增加,导致虚拟机大量堆积无效的netns,
然后就会遇到由kueblet PLEG not healthy
引起的docker hang 住问题。
docker
重启 docker 和 kueblet 可以暂时解决PLEG unhealthy。
建议同时修改 kubelet 启动参数 –housekeeping-interval=30s