【发布时间】:2019-01-29 01:49:51
【问题描述】:
我正在尝试使用“patch”命令更改现有 Kubernetes Pod 的优先级,但它返回错误,指出这不是可以修改的字段之一。我可以修补部署规范中的优先级,但这会导致重新创建 Pod(遵循定义的更新策略)。
基本思想是实现一种概念上类似于 nice 级别的机制(对于我的应用程序),以便某些 Pod 可以根据某些条件(由我的控制器)取消优先级,并在以下情况下被默认调度程序抢占资源拥塞。但如果没有拥塞,我不希望它们重新启动。
有没有办法绕过它,或者调度程序的工作方式固有的某些东西会阻止这样的事情正常工作?
【问题讨论】:
-
这对您的情况有帮助吗? kubernetes.io/docs/concepts/configuration/…
-
@mattew 这是我希望使用的机制,但我无法更改正在运行的 pod 的(补丁)优先级。
-
最近我做了类似的事情,我根据默认创建了一个新的调度器,这个新的调度器检查 pod 的“nice”标签,并在 pod 优先级相等时根据“nice”值抢占 pod . 无需重启 pod 即可更新 pod 的标签。
标签: kubernetes controller scheduler