Minikube控制平面节点无污点致Pod被调度的原因咨询
Minikube控制平面节点无污点允许Pod调度的原因
出现这个现象是Minikube针对本地开发场景的默认设计导致的,具体原因如下:
适配本地开发需求:Minikube作为本地Kubernetes开发工具,核心目标是简化集群使用、最大化本地资源利用率。默认情况下,不管是单节点还是多节点集群,它都不会给控制平面节点添加
node-role.kubernetes.io/control-plane:NoSchedule这类限制Pod调度的污点——如果单节点集群加了这类污点,Pod将无处可调度,完全不符合开发场景的使用需求。版本默认配置规则:你使用的Kubernetes版本是v1.24.3,对应版本的Minikube保持了控制平面节点无污点的默认设定。生产环境用kubeadm部署的集群通常会自动给控制平面节点加污点防止Pod调度,但Minikube作为开发工具,没有沿用这个生产级的限制规则。
如果需要让控制平面节点禁止Pod调度,可以手动添加污点:
kubectl taint nodes minikube node-role.kubernetes.io/control-plane:NoSchedule
你提供的节点信息:
NAME STATUS ROLES AGE VERSION minikube Ready control-plane 76d v1.24.3 minikube-m02 Ready <none> 18m v1.24.3
节点污点信息:
node-role.kubernetes.io/control-plane= node.kubernetes.io/exclude-from-external-load-balancers= Annotations: kubeadm.alpha.kubernetes.io/cri-socket: unix:///var/run/cri-dockerd.sock node.alpha.kubernetes.io/ttl: 0 volumes.kubernetes.io/controller-managed-attach-detach: true CreationTimestamp: Sun, 21 Aug 2022 22:27:29 -0500 Taints: <none>
内容的提问来源于stack exchange,提问作者Ashwin Sridhar
相关产品推荐
相关产品推荐

