본문 바로가기

TroubleShooting/Cloud-native

[Kubernetes]Delete Namespace forcefully in Kubernetes

Kubernetes를 운영하다 보면 namespace가 삭제되지 않는 경우가 발생한다. 

그럴 경우 아래와 같은 방법으로 삭제할 수 있다. 

Install jq

JSON 형식을 다루는 도구

yum iunstall jq -y

Delete Namespace forcefully

e.g. rook-ceph라는 namespace가 삭제되지 않는 경우

NAMESPACE=rook-ceph
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

https://stackoverflow.com/questions/52369247/namespace-stuck-as-terminating-how-i-removed-it