【问题标题】:Pods getting scheduled irrespective of insufficient resources无论资源是否不足,Pod 都会被调度
【发布时间】:2021-10-27 07:05:23
【问题描述】:

在提交针对单个节点的少量作业(例如 50 个)后,我将一些作业的 pod 状态设为“OutOfpods”。我已将此工作节点上的最大 pod 数减少到“10”,但仍然观察到上述问题。 Kubelet 配置是默认的,没有任何变化。

kubernetes 版本:v1.22.1

  • 工作节点

操作系统:CentOs 7.9 内存:528 GB CPU:40核

kubectl 描述 pod:

警告 OutOfpods 72s kubelet 节点没有足够的资源:pods,请求:1,已使用:10,容量:10

【问题讨论】:

  • 您正在运行什么 kubernetes 发行版(例如 minikube)?
  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
  • 嗨 @Alejandro703,我已经使用 kubeadm 安装了 kubernetes 集群。
  • 问题是 kubernetes 没有按照理想情况正确调度排队的 pod。提交作业后,很少有作业(可能是挂起或运行)进入“OutOfPods”状态而没有得到正确安排。似乎调度程序正在尝试强制调度它,即使资源请求没有得到满足。预期的调度程序行为应该是保持 pod 处于挂起状态,直到资源在运行作业完成后真正被释放。

标签: kubernetes


【解决方案1】:

我在使用 K8s v1.22 时也遇到了这个问题。我正在调度大约 100 个容器,其中一个节点具有称为“执行程序”的扩展资源,每个节点的容量为 300。每个容器请求 10 个。Pod 长时间处于挂起状态,但是一旦它们被调度程序分配,节点上的 kubelet 就会说它的资源不足。我想这只是一个警告,但它实际上至少会短暂地导致吊舱上的“失败”状态。我必须检查它是否重新创建为待处理。

  Normal   Scheduled               40m   default-scheduler  Successfully assigned ci-smoke/userbench-4a306d7-l1all-8zv7n-3803535768 to sb-bld-srv-39
  Warning  OutOfwdc.com/executors  40m   kubelet            Node didn't have enough resource:wdc.com/executors, requested: 10, used: 300, capacity: 300```

【讨论】:

    【解决方案2】:

    我已经意识到这是 kubelet v1.22 的一个已知问题,已确认 here。该修复将反映在下一个最新版本中。

    这里的简单解决方法是将 Kubernetes 降级到 v1.21。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-02
      • 2022-10-04
      • 1970-01-01
      • 2020-09-16
      • 1970-01-01
      • 2020-04-13
      • 1970-01-01
      • 2017-03-26
      相关资源
      最近更新 更多