k8s 的命名空间一直 Terminating
查看命名空间状态,[NAMESPACE] 处于 Terminating。解决办法:删除部署文件 yaml 中的 finalizers 属性。使用强制删除命令没有效果。
·
查看命名空间状态,[NAMESPACE] 处于 Terminating
kubectl get ns
使用强制删除命令没有效果
kubectl delete namespace [namespace] --force --grace-period=0
解决办法:删除部署文件 yaml 中的 finalizers 属性
kubectl get namespace [NAMESPACE] -o json \
| tr -d "\n" | sed "s/\"finalizers\": \[[^]]\+\]/\"finalizers\": []/" \
| kubectl replace --raw /api/v1/namespaces/[NAMESPACE]/finalize -f -
如果这条命令无法删除可以换另一种方法
注意:需要打开两个控制台
- 开启代理
kubectl proxy
- 打开另一个控制台,导出要删除的命名空间的 json 脚本
kubectl get ns [namespace] -o json > tmp.json
- 编辑 tmp.json,删除其中 spec.finalizers 的内容
删除前
删除后
- 调用接口删除
curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json http://127.0.0.1:8001/api/v1/namespaces/[namespace]/finalize
更多推荐
已为社区贡献36条内容
所有评论(0)