【云原生】CKA 第⼆题:设置节点不可⽤

考题概述:

设置 ek8s-node-1 节点为不可⽤、重新调度该节点上的所有 pod

考题解析:

cordon节点,drain 节点,需要忽略 daemonsets 并清除 local-data,否则可能⽆法驱逐 pod

参考⽅法:

kubectl cordon k8s-node1
kubectl drain k8s-node1 --ignore-daemonsets --delete-emptydir-data --force
kubectl get nodes

参考资料

作用介绍:
 
taint: 污点(查看污点、设置污点、取消污点)
cordon: 封锁;标记节点不可调度
uncordon: 标记节点可以调度;
drain: 驱逐节点上的pod
 
 
如果一个node被标记为cordon,新创建的pod不会被调度到此node上,已经调度上去的不会被移走,coedon用于节点的维护,当不希望再节点分配pod,那么可以使用coedon把节点标记为不可调度
 
 
如果一个节点被设置为drain,则此节点不再被调度pod,且此节点上已经运行的pod会被驱逐(evicted)到其他节点
 
drain包含两种状态:cordon不可被调度,evicted驱逐当前节点所以pod
 
 
实验环境说明:
 
192.168.2.21   master
192.168.2.22   node
192.168.2.23   node
 
 
1.标记节点不可调度
 
kubectl  cordon 192.168.2.22
 
kubectl get node
 
2.解除节点的封锁uncordon
 
kubectl uncordon 192.168.2.22
 
kubectl get node
 
3.给节点打上污点
 
kubectl taint node 192.168.2.23 node-role.kubernetes.io/master:NoSchedule
 
kubectl describe node 192.168.2.23 | grep Taint
 
4.去掉节点的污点
 
kubectl taint node 192.168.210.51 node-role.kubernetes.io/master:NoSchedule-
 
kubectl describe node 192.168.2.23 | grep Taint
 
5.驱逐节点上的pod
 
kubectl drain 192.168.2.23 --ignore-daemonsets --delete-local-data --force
 
kubectl get pod -A -o wide | grep 192.168.2.23
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苏书QAQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值