Kubernetes 库伯内特斯正在安排豆荚来掌握

Kubernetes 库伯内特斯正在安排豆荚来掌握,kubernetes,master,Kubernetes,Master,几天前,我查到一些pod被安排到主节点 我想了解为什么集群在默认情况下以这种方式工作,而不是调度到workers节点。您应该检查污染/容忍概念。我认为这个链接描述了POD是如何非常有效地取消分配给特定节点的。例如,主节点默认持有一个NoSchedule污点,并且具有相应容差的POD可以在主节点上调度 除非,否则创建的POD与特定节点上的计划具有节点关联性。同样的链接也引用了节点关联。在这两种情况下,豆荚都是定制来容纳宽容或亲和力的,或者你已经定制了主人 使用kubectl descripe命令检

几天前,我查到一些pod被安排到主节点


我想了解为什么集群在默认情况下以这种方式工作,而不是调度到workers节点。

您应该检查污染/容忍概念。我认为这个链接描述了POD是如何非常有效地取消分配给特定节点的。例如,主节点默认持有一个NoSchedule污点,并且具有相应容差的POD可以在主节点上调度

除非,否则创建的POD与特定节点上的计划具有节点关联性。同样的链接也引用了节点关联。在这两种情况下,豆荚都是定制来容纳宽容或亲和力的,或者你已经定制了主人


使用kubectl descripe命令检查节点或pod上的引用属性。

如@AYA、污染/容忍、节点选择器、关联是防止在节点上调度pod的正确方法

然而,在kubeadm创建的集群中,主节点已经有了污染,以防止在主节点上运行随机吊舱。规范中包含相应公差的吊舱除外。您没有提供主机上已计划的pod的YAML。K8s将POD调度到MasterNode的原因可能与kubernetes网络或kubernetes控制计划有关,如法兰绒、印花布、波浪等

要将默认污染恢复到主节点,必须执行以下命令:

$ kubectl taint nodes <master-node-name> node-role.kubernetes.io/master="":NoSchedule
请记住,有些POD是为在主节点上运行而设计的,我们不应该阻止它们进行调度。它可能会影响群集,并可能导致性能低下或工作不稳定

在主节点上,应至少为:

存储供应器 kube调度程序 库贝管制员经理 kube apiserver etcd
请添加kubectl get-no-show标签您是否检查了节点是否已启动并正在运行kubectl描述节点