1: Pod始终处于pending状态
详细描述:
Pod始终处于pending状态
解题思路:
如果pod保持在pending的状态,意味着无法被正常的调度到节点上,由于系统的某些资源无法满足Pod的运行需求
原因分析:
系统没有足够的资源或者用户指定了hostPort;通过hostPort用户能够将服务暴露到指定的主机端口上,会限制pod被调度到可运行节点上
解决步骤:
系统没有足够资源的情况,需要清理一些不需要的Pod,调整它们所需的资源量或者向集群中新增加节点
2: Pod始终处于Waiting状态
详细描述:
Pod始终处于Waiting状态
解题思路:
Pod处于Waiting的状态,说明已经被调度到一个工作节点, 却无法在那个节点上运行
原因分析:
可以使用kubectl describe 查看含有更详细的错误信息。一般导致Pod处于waiting的原因为镜像无法下载
解决步骤:
查看镜像下载情况
3: Pod处于CrashLoopBackOff状态
详细描述:
Pod处于CrashLoopBackOff状态
解题思路:
无
原因分析:
CrashLoopBackOff状态说明容器已经启动,但是又异常导致退出,这个时候Pod的restartCounts通常大于0;
容器进程退出
健康检查失败退出
OOMKilled
解决步骤:
无
4: Pod一直崩溃或者运行不正常
详细描述:
Pod一直崩溃或者运行不正常
解题思路:
可以使用kubectl describe以及kubectl logs排查问题,这个问题存在情况比较复杂
原因分析:
可能的情况: 健康检测失败,OOM情况,或者容器运行生命周期结束
解决步骤:
无
5:集群雪崩,kubelet预留资源不足
详细描述:
集群雪崩,kubelet预留资源不足
解题思路:
无
原因分析:
原因分析参见网上blog:https://my.oschina.net/jxcdwangtao/blog/1629059
解决步骤:
为kubelet等进程预留相应的资源,具体操作参加上面的网址
6: nfs挂载错误wrong fs type, bad option, bad superblock
详细描述:
nfs挂载错误wrong fs type, bad option, bad superblock
解题思路:
无
原因分析:
根据错误提示, 查看/sbin/mount.文件,果然发现没有/sbin/mount.nfs文件
解决步骤:
安装nfs-utils 即可
7:kube-apiserver accept4: too many open files
详细描述:
kube-apiserver accept4: too many open files
http: Accept error: accept tcp 0.0.0.0:6443: accept4: too many open files; retrying in 1s
解题思路:
无
原因分析:
查看apiserver 进程, ls