【发布时间】:2019-06-25 15:59:50
【问题描述】:
我想定义一个策略来动态地将资源限制分配给 pod 和容器。例如,如果在特定节点调度了 4 个 pod,内存容量为 100mi,则每个 pod 分配 25mi 内存限制。换句话说,节点容量的公平份额。
那么,是否需要更改 scheduler.go 中的代码,或者我也需要更改其他对象?
【问题讨论】:
标签: kubernetes
我想定义一个策略来动态地将资源限制分配给 pod 和容器。例如,如果在特定节点调度了 4 个 pod,内存容量为 100mi,则每个 pod 分配 25mi 内存限制。换句话说,节点容量的公平份额。
那么,是否需要更改 scheduler.go 中的代码,或者我也需要更改其他对象?
【问题讨论】:
标签: kubernetes
我同意 Arslanbekov 的回答,这与 kubernetes 使用的可扩展性意识形态背道而驰。
原则是您定义应用程序需要哪些资源,集群尽其所能将这些资源提供给 pod,根据所有应用程序的全局消耗量来调用资源(pod、节点)。
您要问的是相反的,根据节点资源为 pod 提供资源,这种方式可能很难实现节点的自动可扩展性,因为这将是资源目标(我可能会混淆我的解释,但这表明它有多么困难)。
做你想做的事情的一种方法是将所有 pod 调整为相同大小以使用 80% 的节点,但如果应用需要更多资源,这将被证明是错误的。
【讨论】:
我认为这与 Kubernetes 的意识形态背道而驰。在这种方法中,新应用程序将无法访问该节点。
在每个时间点,调度程序都会使用100% 每个节点。
【讨论】: