美文网首页
将Pod迁移到其他节点

将Pod迁移到其他节点

作者: 上岸的魚 | 来源:发表于2020-07-19 18:27 被阅读0次

因服务器升级迁移,需要将升级的节点上的pod迁移到其他节点。
可以改yaml中指定临时标签,重新部署,但比较麻烦,通常会采用cordon/uncordon节点的方案。

集群中三个节点:

NAME         STATUS   ROLES    AGE    VERSION
k8s-master   Ready    master   129d   v1.15.9
k8s-node1    Ready    <none>   129d   v1.15.9
k8s-node2    Ready    <none>   129d   v1.15.9
节点2有两个pod

kubectl cordon k8s-node2 #将节点2设置不不可调度
但此时是新的pod不会再分配到该节点,但原节点2上的pod不会自动迁移,node2的状态为 Ready,SchedulingDisabled

k8s-master   Ready                      master   129d   v1.15.9
k8s-node1    Ready                      <none>   129d   v1.15.9
k8s-node2    Ready,SchedulingDisabled   <none>   129d   v1.15.9

执行如下命令迁移节点的pod
kubectl drain k8s-node2 --delete-local-data --ignore-daemonsets --force

输出:

node/k8s-node2 already cordoned
WARNING: ignoring DaemonSet-managed Pods: kube-system/kube-flannel-ds-amd64-64zsm, kube-system/kube-proxy-b669n
evicting pod "kong-konga-7cbf568cd7-8mw97"
evicting pod "netcore-01-blue-7fb69d9db5-pdgjq"
pod/netcore-01-blue-7fb69d9db5-pdgjq evicted
pod/kong-konga-7cbf568cd7-8mw97 evicted
node/k8s-node2 evicted
迁移后

节点2维护完毕后,可以再将节点2还原成Ready可分配的状态
kubectl uncordon k8s-node2

相关文章

网友评论

      本文标题:将Pod迁移到其他节点

      本文链接:https://www.haomeiwen.com/subject/swcrkktx.html