K8S 删除pod的正确步骤

在日常的k8s运维过程中,避免不了会对某些pod进行剔除,那么如何才能正确的剔除不需要的pod呢?

首先,需要查出想要删除的pod

python 复制代码
# 可通过任意方式进行查询
kubectl get pods -A |grep <podname>
kubectl get pods -n <namespace>
kubectl get pods --all-namespaces |grep <podname> 

kubectl 删除pod命令

python 复制代码
kubectl delete pod <podname> -n <namespace>

例如:kubectl delete pod nginx-web-460776586-f6nf0 -n yundoc 

可是这里你会发现,在进行删除delete pod后,并不会直接删除。该pod会自动重新构建(可以理解为重启、重构),原因是k8s误认为我们要删除的pod异常挂了,会启用容灾机制,导致重新再拉起一个新的pod。

我们想要正常且彻底的删除一个pod,必须要先破坏掉他的容灾机制,即删除deployment机制。

查看deployment信息

python 复制代码
#可理解是调度管理pod的
kubectl get deployment --all-namespaces
kubectl get deployment -n kube-system

删除deployment配置

python 复制代码
kubectl delete deployment <deployment名> -n <namespace>

例如:kubectl delete deployment nginx-web -n yundoc

注意:删除deployment,pod会随之删除。

可通过再次查看pod状态,然后进行删除pod命令即可,通常情况下删除deployment后,再次查询pod发现,pod已经开始自行删除了。

相关推荐
AlfredZhao1 小时前
Docker 查看容器日志:别只记 `docker logs -f`
docker
Crazy________4 小时前
k8s部署若依微服务架构流程,v3.6.6
运维·云原生·容器·kubernetes·状态模式
初级炼丹师(爱说实话版)5 小时前
Ubuntu服务器配置docker
服务器·ubuntu·docker
生活爱好者!6 小时前
NAS还能用来开视频会议?docker一键部署MiroTalk SFU
运维·docker·容器
xiaoxiangsiyan6 小时前
GitLab CI/CD 自托管(EE 企业版)+ Kubernetes Runner 集群 + ArgoCD(GitOps 部署)
运维·网络·ci/cd·容器·kubernetes·gitlab·argocd
PC2005-cloud6 小时前
KubeSphere 安装到插件管理实战:本地 K8s 搭建可视化容器平台
云原生·容器·kubernetes
兵bing8 小时前
Docker Compose 进阶配置与最佳实践笔记
docker
是良辰8 小时前
Docker Nginx HTTPS 自签证书部署完整操作文档
nginx·docker·https
沉迷学习 日益消瘦8 小时前
19-集群升级与维护
kubernetes
凌虚8 小时前
Kubernetes 编年史:从 Borg 到云原生操作系统
后端·程序员·kubernetes