k8s 处理namespace删除一直处于Terminating —— 筑梦之路

问题现象

k8s集群要清理某个名空间,把该名空间下的资源全部删除后,删除名空间,一直处于Terminating状态,无法完全清理掉。

如何处理

为什么要记录下这个处理的步骤,经过查询资料,网上也有各种各样的方法,但能够有效解决的并不好找。

方式1:强制删除

bash 复制代码
  kubectl delete ns ingress-nginx --force 

这种方式尝试后对我没有用,仍然还是没有清理掉。

方式2:api请求

1. 导出namespace的json文件

bash 复制代码
 kubectl get  ns ingress-nginx -o json  > ingress-nginx-ns.json

2. 修改json文件并发送请求API

bash 复制代码
编辑test.json文件,确保spec中内容为空

     "spec": {
         "finalizers": [    #########
             "kubernetes"   ######### 删除这三行内容,告知k8s要删除的ns中内容为空
         ]                  #########
     },

将空ns通过调用k8s的api接口覆盖掉原来的ns

 curl -k \
 > -H "Content-Type: application/json" \
 > -X PUT \
 > --data-binary @ingress-nginx-ns.json \
 >http://192.168.100.100:6443/api/v1/namespaces/ingress-nginx/finalize

最后再检查名空间ingress-nginx是否清理即可。

相关推荐
会飞的小蛮猪1 小时前
Ubuntu24.04 基于Containerd部署K8s1.34(私服部署)
docker·云原生·kubernetes
U***e6311 小时前
PHP在微服务中的Mezzio
微服务·云原生·架构
间彧12 小时前
Kubernetes滚动发布详解
kubernetes
间彧13 小时前
在实际生产环境中,Kubernetes声明式API如何实现蓝绿部署、金丝雀发布等高级部署策略?
kubernetes
间彧13 小时前
Kubernetes声明式API相比传统命令式API在故障恢复场景下的具体优势有哪些?
kubernetes·github
间彧13 小时前
为什么说Kubernetes的API设计是其成功的关键因素之一?
kubernetes
间彧13 小时前
Kubernetes Deployment 配置简化实战:从复杂到高效
kubernetes
u***u68514 小时前
Vue云原生
前端·vue.js·云原生
可爱的小小小狼16 小时前
k8s:服务网格Service Mesh(服务网格)istio和envoy
kubernetes·istio·service_mesh
gggg远18 小时前
docker详解
运维·docker·容器