原因
这是由命名空间控制器无法删除的命名空间中仍存在的资源引起的。
此命令(使用kubectl 1.11+)将显示命名空间中保留的资源:
kubectl api-resources --verbs=list --namespaced -o name \ | xargs -n 1 kubectl get --show-kind --ignore-not-found -n <namespace>
方法
#!/bin/bash NAMESPACE=ckad-prep kubectl proxy & kubectl get namespace $NAMESPACE -o json |jq '.spec = {"finalizers":[]}' >temp.json curl -k -H "Content-Type: application/json" -X PUT --data-binary @temp.json 127.0.0.1:8001/api/v1/namespaces/$NAMESPACE/finalize