增加污点
kubectl taint nodes master1 node-role.kubernetes.io/master=:NoSchedule

设置taint
语法:

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

示例:

kubectl taint node node1 key1=value1:NoSchedule
kubectl taint node node1 key1=value1:NoExecute
kubectl taint node node1 key2=value2:NoSchedule

删除taint:

kubectl taint node node1 key1:NoSchedule-  # 这里的key可以不用指定value
kubectl taint node node1 key1:NoExecute-
# kubectl taint node node1 key1-  删除指定key所有的effect
kubectl taint node node1 key2:NoSchedule-

#实例:
kubectl taint node master1 node-role.kubernetes.io/master:NoSchedule-

一、强制删除pod
$ kubectl delete pod -n --force --grace-period=0
解决方法:加参数 --force --grace-period=0,grace-period表示过渡存活期,默认30s,在删除POD之前允许POD慢慢终止其上的容器进程,从而优雅退出,0表示立即终止POD

二、强制删除pv、pvc
$ kubectl patch pv xxx -p ‘{“metadata”:{“finalizers”:null}}’
$ kubectl patch pvc xxx -p ‘{“metadata”:{“finalizers”:null}}’
直接删除k8s etcd数据库中的记录!

Logo

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

更多推荐