k8s的namespace资源一直terminating问题解决
生活随笔
收集整理的這篇文章主要介紹了
k8s的namespace资源一直terminating问题解决
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題:刪除ns時一直顯示terminating的狀態
解決:
-
方法一:
kubectl delete ns cattle-system --force --grace-period=0
通過強制刪除,并且設置優雅刪除時間為0(默認為30s)實踐后發現并不好使
-
方法二:
$ kubectl get ns cattle-system -o json > cattle-system.json$ cat cattle-system.json{"apiVersion": "v1","kind": "Namespace","metadata": {"annotations": {"cattle.io/status": "{\"Conditions\":[{\"Type\":\"ResourceQuotaInit\",\"Status\":\"True\",\"Message\":\"\",\"LastUpdateTime\":\"2022-04-19T04:11:00Z\"},{\"Type\":\"InitialRolesPopulated\",\"Status\":\"True\",\"Message\":\"\",\"LastUpdateTime\":\"2022-04-19T04:11:06Z\"}]}","field.cattle.io/projectId": "c-m-p9qpsm85:p-xxjt6","kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Namespace\",\"metadata\":{\"annotations\":{},\"name\":\"cattle-system\"}}\n","lifecycle.cattle.io/create.namespace-auth": "true","management.cattle.io/no-default-sa-token": "true"},"creationTimestamp": "2022-04-19T04:10:57Z","deletionGracePeriodSeconds": 0,"deletionTimestamp": "2022-04-19T04:13:25Z","finalizers": ["controller.cattle.io/namespace-auth"],"name": "cattle-system","resourceVersion": "189264460","selfLink": "/api/v1/namespaces/cattle-system","uid": "b71ffd2d-bf96-11ec-a6c4-fa163eb86964"},"spec": {},"status": {"phase": "Terminating"}}$ kubectl proxy --port=8081(開啟k8s apiserver的一個http代理,以免必須帶上證書才能訪問)$ curl -k -H "Content-Type: application/json" -X PUT --data-binary @cattle-system.json http://127.0.0.1:8081/api/v1/namespaces/cattle-system/finalize
通過k8s提供的api接口,把.metadata.finalizers字段及其內容刪除,從而k8s會直接將該ns刪除經過第二種方法后,果然ns刪除
總結
以上是生活随笔為你收集整理的k8s的namespace资源一直terminating问题解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我的消费记录怎么查看呢?
- 下一篇: 关于开源框架GPUImage 的简单说明