Kubernetes 删除命名空间 电脑版发表于:2021/12/3 16:36 ![Kubernetes](https://img.tnblog.net/arcimg/hb/274ef6f115de4c9b8e40ded5deb2f4c2.jpg "Kubernetes") >#Kubernetes 删除命名空间 [TOC] tn2>可以直接通过如下命令删除k8s中命名空间下的所有资源。 ```bash kubectl delete ns [namespace] ``` tn2>这种方式一般都能删除,但也有可能会出现清理不掉的情况。ns的状态一直为Terminating。如下图所示的`rabbitmq-system`命名空间。 ![](https://img.tnblog.net/arcimg/hb/6a036aac030d47aea9e70279eb802d3b.png) 解决一直为Terminating的命名空间 ------------ tn2>1.先将要删除的namespace的描述信息导出到文件 ```bash kubectl get ns rabbitmq-system -o json > delete-ns.json ``` ![](https://img.tnblog.net/arcimg/hb/2ff152d12ea54fad8e5fb3143e3ed53a.png) tn2>2.删除该文件中finalizers字段,并保存 ![](https://img.tnblog.net/arcimg/hb/7cdf177d25304a1fb3fb063b078c6ffb.png) ![](https://img.tnblog.net/arcimg/hb/bb643acccf6e4b1a949139c277833df3.png) tn2>然后开通代理 ```bash kubectl proxy --address='0.0.0.0' --port=8081 ``` ![](https://img.tnblog.net/arcimg/hb/7b9ca460f4694e4789402f095c965d71.png) tn2>最后通过如下请求命令进行删除 ```bash curl -k -H "Content-Type: application/json" -X PUT --data-binary @delete-ns.json http://127.0.0.1:8081/api/v1/namespaces/rabbitmq-system/finalize ``` ![](https://img.tnblog.net/arcimg/hb/64c6201ef7834ce18f5b88065ed14a5b.png) tn2>再次查看 ![](https://img.tnblog.net/arcimg/hb/f4df9503fd4d46079acdc4ac30d9076e.png)