gpt4 book ai didi

Kubernetes:没有资源请求的逐出 pod 是否成功重新安排?

转载 作者:行者123 更新时间:2023-12-02 02:59:19 25 4
gpt4 key购买 nike

我已经阅读了尽可能多的 Kubernetes 文档,但我仍然无法理解我想到的特定场景。

举个例子,假设我有一个内存为 1GB 的节点。我还有一个部署需要 100 个内存限制设置为 100MB 且内存请求未设置的 pod。 Pod 大部分时间仅使用 1MB,但有时会跃升至 99MB。

问题一:100个pod会全部调度到节点上吗?

现在,假设所有 pod 同时开始使用 99MB 的内存并保持不变。机器上没有足够的内存来处理这个问题,但是没有一个 pod 超过了它们的内存限制。我假设 Kubernetes 此时驱逐了一些 pod。

问题2:当Kubernetes尝试重新调度被逐出的pod时,由于没有设置内存请求,是否成功?当节点立即再次耗尽内存时会发生什么?这种驱逐、重新安排会一遍又一遍地发生吗?如果是这样,我是否可以使用某种指标来检测是否正在发生这种情况?

最佳答案

只要有符合条件的节点可以满足请求的资源,就会调度一个 Pod。因此,如果您不指定请求,pod 几乎会得到安排。要求和限制是完全不同的东西。 Request 是一个 pod 被调度的条件,limit 是一个运行中的 pod 已经被调度的条件。

如果您过度使用节点上的实际资源,您将遇到典型问题 - 如果您过度使用内存,它将开始交换,CPU 将普遍变慢。无论哪种方式,节点和它上面的 pod 都会变得无响应。这很难处理,请求和限制等工具设置了合理的边界,这将帮助您不会将事情做得太远,您只会看到 pod 无法安排。

关于Kubernetes:没有资源请求的逐出 pod 是否成功重新安排?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47296346/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com