当前位置:首页 > 容器 > k8s > 正文内容

k8s 漂移pod

root2年前 (2022-09-09)k8s1600

背景:当前业务中需要将旧的node替换为新的node。需要将旧的node上的pod 迁移到新的node上。

也就是对node节点进行维护,驱逐pod

参考:对node节点进行维护,驱逐pod


设置node1 不能调度

kubectl cordon node1

驱逐node1节点上的Pod

kubectl drain node1 --delete-local-data --ignore-daemonsets --force

  • --delete-local-data 删除本地数据,即使emptyDir也将删除;

  • --ignore-daemonsets 忽略DeamonSet,否则DeamonSet被删除后,仍会自动重建;

  • --force 不加force参数只会删除该Node节点上的ReplicationController,ReplicaSet,DaemonSet,StatefulSet or Job,加上后所有Pod都将删除。


如果要恢复node1

kubectl uncordon node1


在驱逐node1节点上的pod时遇见一个问题

20220909-095735.jpg


原来是 PDB(pod's disruption budget)的特性,主动清理 Pod 时(例如 drain)对可用数量的保护,防止影响业务。

通过 describe 命令可以看到 istio-galley 至少要有一个 Pod,所以我们无法驱逐

解决办法就是扩容。

kubectl scale --replicas=2 deploy/istio-ingressgateway -n istio-system

解决方案原文



扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=246

分享给朋友:
返回列表

上一篇:k8s 给node这只标签

没有最新的文章了...

相关文章

k8s 给node这只标签

k8s 给node这只标签

给node 设置role 标签 kubectl label nodes 10.0.64.121 node-role.kubernetes.io/test=去掉role标签kubectl label nodes 10.0.64.12...

k8s 常用命令

k8s常用命令- 查看podkubectl  get pod- 查看rs 资源控制器 容器副本情况kubectl  get rs- 查看 管理器  deploymentkubectl  get dep...

k8s 的搭建

原文 修改node标签参考文档 命令端口不同问题解决 init 初始化问题解决 主机名主机ip版本CPU内存master1192.168.56.11Ubuntu server 18.042核1Gworker1192.168.56.21Ubu...