k8s—调度策略设置

一、禁止master节点调度

1.命令

kubectl cordon master 禁止节点调度

kubeclt uncordon master 允许节点调度

2.设置污点

kubectl taint node [node] key=value[effect]`
NoSchedule: 一定不能被调度
PreferNoSchedule: 尽量不要调度
NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod

例;

kubectl taint node master1 node-role.kubernetes.io/master- `允许master调度

`kubectl taint nodes master node-role.kubernetes.io/master=:NoSchedule `禁止master调度

`kubectl describe node master |grep Taints `  查看污点

3、设置容忍master污点

在 pod 的 spec 中设置 tolerations 字段

tolerations:

key: "node-role.kubernetes.io/master"
operator: "Equal"
value: ""
effect: "NoSchedule"

pod可以调度master上

命令

kubectl taint node master1 node-role.kubernetes.io/master- 

查看是否设置成功

kubectl describe node master |grep Taints 
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐