问题标签 [kube-scheduler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - 如何访问 kubernetes 集群上的 kube-scheduler?
我试图弄清楚如何使用自定义配置来配置 kubernetes 调度程序,但我在理解调度程序的访问方式时遇到了一些麻烦。
调度程序在kube-system
名为kube-scheduler-it-k8s-master
. 文档 说您可以通过创建配置文件并调用kube-scheduler --config <filename>
. kubectl exec -it kube-scheduler-it-k8s-master -- /bin/bash
但是,当运行返回时,我无法直接访问调度程序容器:
我尝试修改/etc/kubernetes/manifests/kube-scheduler
以在 pod 中挂载我的自定义配置文件并kube-scheduler
使用--config
选项集显式调用,但似乎我的更改被还原并且调度程序使用默认设置运行。
我觉得我从根本上误解了关于 kubernetes 调度程序的一些东西。我是否应该从调度程序 pod 本身传入自定义调度程序配置?或者这应该以某种方式远程完成?
谢谢!
kubernetes - 如何启用/禁用 kubernetes 调度程序插件?
我想禁用 Kubernetes 调度程序插件。kubernetes 文档说要使用如下配置文件:
但它没有说明如何激活这个配置文件。我尝试kube-scheduler --conf conf.yaml
在我的计算机上进行本地调用,但不知道是否应该从 kube 调度 pod 内部运行 kube-scheduler。我将 minkube 与 kubernetes v1.20.2 一起使用。
kubernetes - Pod 与具有相同标签的节点的亲和性
我处于节点数量相当大的情况。节点是消耗品,可以随时添加和删除(如果空闲)。所有节点都有标签
label.category=A 或 label.category=B
我想将我的 pod 安排到具有相同类别的节点上。我真的不想硬编码哪一个。我想要的是一组 pod 最终会出现在相同的类别节点中。
kubernetes - 如何改变 EKS 中 kube-scheduler 的行为?
我是 Kubernetes 的新手,对在EKS
.
我正在尝试实现GPU
多个 pod 之间的共享,但是通过一些文档和文章,我发现我应该更新kube-scheduler configuration
with 参数,这将允许我进行必要的更改以启用GPU
pod 之间的共享。
问题
如何kube-scheduler
在EKS
. 如果无法更新配置,是否有其他方法可以kube-scheduler
只为那些需要的 pod 进行设置GPU
?
kubernetes - 要求 k8s pod 在特定节点上运行之前具有特定标签
假设我的集群中有一些特殊的节点,我希望能够使用 pod 标签来识别在这些节点上运行的所有 pod。
污点和容忍度接近于此,但是 afaik 容忍度不是标签,它们是它们自己的东西,并且不能在您期望标签选择器的地方引用,对吧?有没有办法要求在这些节点上运行的所有 pod 以一种可以通过标签选择器查询的方式来标识自己?
kubernetes - 如何使用 kubernetes scheduler.alpha.kubernetes.io/preferAvoidPods?
首先,由于某些原因,我使用的是不受支持且已过时的 Kubernetes (1.12) 版本,并且无法升级。
我正在尝试配置调度程序以避免在调度程序尝试找到最佳可用节点时更改节点分数来避免在某些节点上运行 pod,我想在调度程序级别而不是通过在部署时使用 nodeAffinity、replicaset 来做到这一点, pod 等级别(因此所有 pod 都会受到此更改的影响)。
在阅读了此处的 k8s 文档后:https ://kubernetes.io/docs/reference/scheduling/config/#scheduling-plugins并检查了 1.12 中是否已经存在一些选项,我正在尝试使用这些NodePreferAvoidPods
插件。在文档中插件指定:
根据节点注解 scheduler.alpha.kubernetes.io/preferAvoidPods 给节点打分
如果正确理解应该做的工作。
因此,我更新了 kube-scheduler.yaml 的静态清单以使用以下配置:
但是向节点添加以下注释
scheduler.alpha.kubernetes.io/preferAvoidPods:
似乎不起作用。
为了测试,我做了一个基本的 nginx 部署,其副本等于工作节点的数量 (4)。
然后我检查创建的 pod 的位置kubectl get pods -owide
所以,我相信这个注释需要一些选项才能工作。
我尝试将注释设置为“true”、“1”,但 k8s 拒绝我的更改,我无法确定该注释的有效选项是什么,也找不到任何相关文档。
我已经在 git 版本中检查了 1.12,这个插件已经存在(至少有一些代码行),我认为从那以后行为或设置没有太大变化。
谢谢。
kubernetes - 如何为 Kubernetes 集群启用 RequestedToCapacityRatio 功能(1.18 版)
我们有一个运行在 ubuntu 18.04 上的 kubernetes 集群(版本 1.18.x),我们主要使用这个集群来运行 AI 作业。
我们希望集群根据 bin 打包策略调度作业(nvidia gpu 资源具有最高的权重),我按照本文所述做到了这一点。但是在我做完所有的工作人员之后,吊舱就不能再安排了,它总是卡在 Pending 中!!
我们运行调度程序的命令如下:
重启 kube-scheduler 的命令:
我的政策文件:
但是在我将此文件应用到默认调度程序后,它不能再调度 pod。Pod 总是卡在待处理状态。这是我用来测试的 yaml 文件:
那么如何正确开启binpack功能呢?为什么不能安排工作?
kubernetes - 如何更改 k8S 自定义调度器的启用策略
我有一个项目要启用another scheduler
,这需要修改启用的策略和权重。kubernetes 1.19之后可以设置KubeSchedulerConfiguration
,虽然还处于beta
阶段。
我的项目是kubernetes 1.18,如何查看default policies
以及如何查看override or modify
一些策略和权重
我真的很感激这方面的任何帮助
kubernetes - k8s中调度策略和调度配置有什么关系
k8s 调度实现有两种形式:调度策略和调度配置文件。
两者之间有什么关系?它们似乎重叠,但有一些差异。例如,有一个NodeUnschedulable
在profiles
但没有在policy
。CheckNodePIDPressure
在 中policy
,但不在profiles
另外,调度配置中有一个默认的启动选项,但调度策略中没有指定。我如何知道默认启动策略?
我真的很感激这方面的任何帮助。