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是否清理即可。

相关推荐
无望__wsk14 分钟前
k8s控制器
java·docker·kubernetes
不好听61317 分钟前
Dockerfile 实战:把第一个 Node 服务容器化
docker·容器
2301_8107301025 分钟前
K8s的Pod管理
linux·容器·kubernetes
川石课堂软件测试27 分钟前
自动化测试常见的异常处理
python·jmeter·mysql·docker·容器·单元测试·grafana
CJY62128 分钟前
k8s控制器管理
云原生·容器·kubernetes
无念是……1 小时前
K8s 控制器管理详解|RC、RS、Deployment、StatefulSet、DaemonSet、Job&CronJob
云原生·容器·kubernetes·控制器
EterNity_TiMe_1 小时前
一个网页管理多种远程连接:Docker 部署 Next Terminal 与资产审计
运维·人工智能·docker·ai·容器
mohesashou1 小时前
k8s的pod管理
云原生·容器·kubernetes
WThh2 小时前
k8s中的控制器管理
云原生·容器·kubernetes
养海绵宝宝的小蜗2 小时前
【Kubernetes系列】控制器(Controller)全解:ReplicaSet、Deployment、DaemonSet、Job 与 CronJob
云原生·容器·kubernetes