【kubernetes/k8s概念】k8s 坑问题汇总

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhonglinzhang/article/details/85257134

1. Pod始终处于Pending状态

      如果Pod保持在Pending的状态,意味着无法被正常的调度到节点上。由于某种系统资源无法满足Pod运行的需求

  • 系统没有足够的资源:已经用尽了集群中所有的CPU或内存资源。需要清理一些不在需要的Pod,调整它们所需的资源量,或者向集群中增加新的节点。
  • 用户指定了hostPort:通过hostPort用户能够将服务暴露到指定的主机端口上,会限制Pod能够被调度运行的节点。

2. Pod始终处于Waiting状态

      Pod处在Waiting的状态,说明已经被调度到了一个工作节点,却无法在那个节点上运行。可以使用kubectl describe 含有更详细的错误信息。最经常导致Pod始终Waiting的原因是无法下载镜像

3. Pod一直崩溃或运行不正常

      可以使用kubectl describe以及kubectl logs排查问题,但是这个一般也不确定

      情况有:健康检测失败,OOM情况,或者容器运行生命周期结束

4. 集群雪崩需给Kubelet预留资源

    https://my.oschina.net/jxcdwangtao/blog/1629059

  • Node Allocatable Resource = Node Capacity - Kube-reserved - system-reserved - eviction-threshold

--eviction-hard=memory.available<1024Mi,nodefs.available<10%,nodefs.inodesFree<5% \

--system-reserved=cpu=0.5,memory=1G \ --kube-reserved=cpu=0.5,memory=1G \

--kube-reserved-cgroup=/system.slice/kubelet.service \

--system-reserved-cgroup=/system.slice \

--enforce-node-allocatable=pods,kube-reserved,system-reserved \

猜你喜欢

转载自blog.csdn.net/zhonglinzhang/article/details/85257134