k8s污点
污点和容忍度就是对默认调度策略的补充
污点的类型:
NoSchedule 不影响之前的pod,不接受新的调度,强制性
PreferNoSchedule 备用,候选,尽可能调度其他节点,不强制,其他节点上都有任务的时候,才可能调度到节点
NoExecute 不接受新的调度,还会驱赶已存在的pod,强制性
#打标签
kubectl label nodes kubernetes-node2 disk-type=ssd
#删标签
kubectl label nodes kubernetes-node2 disk-type-
#添加污点的例子
kubectl taint node kubernetes-node2 disk-type=ssd:NoSchedule
#检查
[root@k8s-master ~]# kubectl describe nodes kubernetes-node2|grep -i taint
Taints: node-role.kubernetes.io=master:NoExecute
k8s容忍度
#添加在pod的spec下
tolerations:
- key: "disk-type"
operator: "Exists"
value: "ssd"
effect: "NoExecute"
亲和力:affinity
亲和性:affinity
nodeName
nodeSelector: 根据标签选择node节点
nodeSelector:
disk-type: ssd
影响调度的:默认调度,污点和容忍度,亲和性,node名字和标签选择器