我总结了3种方式,前2种并不总是有用,没用的时候可以试试第3种

1.强制删除,加上--force --grace-period=0参数
以kuboard ns为例:

k delete ns kuboard --force --grace-period=0  

2.删除ns长时间卡住,ns status为terminating,可以用edit编辑ns信息,删掉finalizer行
仍然以kuboard ns为例:

k edit namespace kuboard 
删掉finalizer2行
controller.cattle.io/namespace-auth

删除后退出,这下再看ns就删除成功了~~

3.终极方法
终端1,执行

kubectl proxy
Starting to serve on 127.0.0.1:8001

此时会打开8001端口

终端2,执行

kubectl get ns rook-ceph -o json | jq '.spec.finalizers=[]' | curl -X PUT http://localhost:8001/api/v1/namespaces/rook-ceph/finalize -H "Content-Type: application/json" --data @-
2处需替换处于Terminating状态的ns名

这样一定会快速删掉ns,不信就试试吧~~~

参考链接:
https://github.com/rancher/rancher/issues/14715
https://www.cnblogs.com/leozhanggg/p/12780653.html

posted on 2023-04-26 15:17  jiayou111  阅读(652)  评论(0编辑  收藏  举报