k8s节点管理命令
在集群中需要对节点进行升级内核,升级docker等组件时候,为了避免业务受影响,需要把上面运行的pod迁移走。
cordon :设置节点禁止调度
drain :驱逐节点上运行的pod到其他节点
uncordon :恢复节点调度
#先把节点设置成禁止调度,新创建的pod就不会调度此节点上
[root@k8s-master1 ~]# kubectl cordon k8s-node1
#drain平滑的把pod迁移到其他可用节点。如果报错可以根据报错信息添加参数,如:--ignore-daemonsets --delete-emptydir-data等
[root@k8s-master1 ~]# kubectl drain k8s-node1
#节点维护完成后,把节点恢复调度
[root@k8s-master1 ~]# kubectl uncordon k8s-node1
#查询节点运行状态
[root@k8s-master1 ~]# kubectl get nodes