这里比较重要而且会令人觉得意外的是:
调度器在调度时并不关注各类资源在当前时刻的实际使用量,而只关心节点上部署的所有pod的资源申请量之和。尽管现有pods的资源实际使用量可能小于它的申请量,但如果使用基于实际资源消耗量的调度算法将打破系统为这些已部署成功的pods提供足够资源的保证。
例子:
如果节点上部署了三个pod。它们共申请了节点80%的CPU和60%的内存资源。
新pod D将无法调度到这个节点上,因为它25%的CPU requests大于节点未分配的20%CPU。
而实际上,这与当前三个pods仅使用70%的CPU没有什么关系。