K8S 删除命令空间时 一直卡住怎么办?

当使用完一个命名空间后,想删除了又删除不掉,这个时候查看命名空间的状态一直是Terminating。使用强制删除,也是还是不行。(找了好多办法都不行)

root@k8s-master kubernetes-yaml# kubectl delete ns mem-example
Error from server (Conflict): Operation cannot be fulfilled on namespaces "mem-example": The system is ensuring all content is removed from this namespace. Upon completion, this namespace will automatically be purged by the system.

1、原因(可能是因为这个命名空间namespace 下边又正在运行的pod。或者存在pod)也有可能这是K8S的一种机制。

2、使用强制删除命令 kubcelt delete ns namespace --force --grace-period=0 还是会报错。

3、解决方法:可以使用K8S的API删除。

1、首先导出需要删除的namespace的json文件到本地的json文件中。kubectl get ns demo-ns -o json > tmp.json

2、修改刚刚导出的文件,将"finalizers": "kubernetes" 修改为"finalizers": ,保存并退出

3、打开一个新窗口,使用 kubectl proxy --port=8001,

4、在原先的窗口使用更改接口,来删除namespace tmp.json修改为自己保存的,cpu-test,是需要删除命名空间。curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.jsonhttp://127.0.0.1:8001/api/v1/namespaces/****cpu-test****/finalize

5、使用 kubec get ns 查看命令空间已经被删除

以上是解决K8S删除命名空间的方法,希望能帮助大家,欢迎一起探讨!!!

相关推荐
java_cj1 小时前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
源图客3 小时前
【AI向量数据库】Weaviate介绍与部署
运维·docker·容器
一勺菠萝丶5 小时前
宝塔 Docker 安装 Ubuntu 及启动失败解决流程
ubuntu·docker·eureka
码云骑士7 小时前
28-Docker部署Django(下)-docker-compose编排与静态文件处理
docker·容器·django
至乐活着8 小时前
Docker Compose多服务编排实战:从零搭建Node.js+MySQL+Redis全栈应用
docker·微服务·devops·容器编排·compose
木雷坞8 小时前
Firecrawl Docker Compose 自托管排查:镜像、Redis、队列和 Playwright
redis·docker·容器·firecrawl
whyfail8 小时前
Colima:把 Docker Desktop 从 Mac 上“瘦身”的那把刀
macos·docker·容器
人工智能培训9 小时前
数字孪生的未来发展方向探析
gpt·深度学习·机器学习·容器·知识图谱
大佐不会说日语~10 小时前
在 Windows 本地用 Docker 部署向量模型(bge-m3)
windows·docker·容器·llm·ollama
xsc-xyc10 小时前
CasaOS + Docker 挂载外接硬盘部署 Jellyfin 私人影院
运维·docker·容器