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

相关推荐
m0_741574755 小时前
k8s的service
云原生·容器·kubernetes
鼠鼠我捏,要死了捏7 小时前
蓝绿发布与滚动更新:基于Kubernetes的微服务零停机切换实战指南
微服务·kubernetes·blue-green
xiao-xiang8 小时前
k8s下的发布策略详解
云原生·容器·kubernetes·部署·cicd·发布
优秀的老黄8 小时前
Docker部署RabbitMQ
linux·运维·docker·中间件·容器·centos·rabbitmq
Lin_Aries_04218 小时前
容器使用卷
linux·运维·docker·云原生·容器·eureka
寒士obj9 小时前
Docker的使用及核心命令
运维·docker·容器
邂逅星河浪漫9 小时前
【Docker-Nginx】通过Docker部署Nginx容器
nginx·docker·容器
Dontla10 小时前
Docker Compose healthcheck介绍(监控容器中服务的实际健康状态)数据库健康检查pg_isready
数据库·docker·容器
HeXDev10 小时前
【Docker】一键将运行中的容器打包成镜像并导出
运维·docker·容器
有谁看见我的剑了?11 小时前
k8s-临时容器学习
学习·容器·kubernetes