一、现象

kubectl delete ns XXX命令一直卡着,不会执行完成

二、解决办法1(使用Kuboard)

查看集群信息:

在这里插入图片描述

编辑名称空间列表:

在这里插入图片描述

删除相应名称空间:

在这里插入图片描述

三、解决方法2(不使用其他软件)

1、将要删除的namespace的描述信息导出到文件

# 文件名称后缀是json,名称取啥都行
kubectl get ns 命名空间名称 -o json > 文件名称

例如:

kubectl get namespace ingress-nginx -o json > nginx.json

在这里插入图片描述

2、修改导出文件

spec中的内容删除干净,记得把两边的大括号留下,删除完成效果如下图:

在这里插入图片描述

3、在xshell中新开一个窗口,执行kubectl proxy命令

在这里插入图片描述

4、在xshell老窗口中执行命令(注意:需要在包含上述导出json文件的目录下执行)

curl -k -H "Content-Type: application/json" -X PUT --data-binary @文件名称 http://127.0.0.1:8001/api/v1/namespaces/名称空间/finalize

例如:

curl -k -H "Content-Type: application/json" -X PUT --data-binary @test-ns.json http://127.0.0.1:8001/api/v1/namespaces/test-ns/finalize

5、查看命名空间列表

kubectl get ns

如果已经删除了,那就是正确的

Logo

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

更多推荐