首先尝试寻找该namespace下是否有资源未删除,
kubectl api-resources --verbs=list --namespaced -o name | xargs -n 1 kubectl get --show-kind --ignore-not-found -n <terminating-namespace>
然后删除所有未删除的资源,然后namespace就会被删掉了。
若删除所有资源后,k8s仍未删除,执行如下命令,以下是删除test namespace
cat <<EOF | curl -X PUT \
localhost:8080/api/v1/namespaces/test/finalize \
-H "Content-Type: application/json" \
--data-binary @-
{
"kind": "Namespace",
"apiVersion": "v1",
"metadata": {
"name": "test"
},
"spec": {
"finalizers": null
}
}
EOF