一、问题再现

kubectl get ns

在这里插入图片描述

kubectl get ns

在这里插入图片描述

二、问题的方案

方案一:

#kubectl  delete ns 命名空间的名字 --force --grace-period=0
kubectl  delete ns dev --force --grace-period=0

方案二:

上述命令依然不行,出现如图所示,依旧在等待
在这里插入图片描述使用以上命令均无法成功删除命名空间,只会使命名空间的状态为Terminating状态
在这里插入图片描述

1)使用命令

#kubectl get namespace 命名空间的名字 -o json > devtesting.json
kubectl get namespace dev -o json > devtesting.json

在这里插入图片描述

2)文件修改

执行完这条命令后,当前文件夹会出现devtesting.json这个文件夹,打开这个文件,删除字段spec和finalizers这两个字段包含的内容。
在这里插入图片描述在这里插入图片描述

3)使用kubectl命令

kubectl proxy --port=8080

在这里插入图片描述打开新的命名窗口

curl http://localhost:8080/api/

在这里插入图片描述

4)使用http接口进行删除

#curl -k -H "Content-Type: application/json" -X PUT --data-binary @devtesting.json http://127.0.0.1:8080/api/v1/namespaces/命名空间的名字/finalize
curl -k -H "Content-Type: application/json" -X PUT --data-binary @devtesting.json http://127.0.0.1:8080/api/v1/namespaces/dev/finalize

在这里插入图片描述

5)再次查看

 kubectl get ns

在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐