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

相关推荐
正经教主3 小时前
【docker基础】0、系统学习docker之总计划
学习·docker·容器
Yang三少喜欢撸铁3 小时前
【Centos7通过kubeadm方式部署kubernetes1.30版本【一主两从】】
docker·kubernetes·container
@土豆6 小时前
基于Docker部署Squid正向代理文档
运维·docker·容器
Cyber4K6 小时前
【Kubernetes专项】K8s 包工具- Helm 入门到企业实战
云原生·容器·kubernetes
观无8 小时前
微服务下的跨域问题
微服务·云原生·架构
Chuncheng's blog8 小时前
K8S二进制部署exec unable to upgrade connection: Unauthorized异常解决方案
云原生·容器·kubernetes
FJW0208149 小时前
HAProxy+Keepalived实现Kubernetes高可用集群部署
云原生·容器·kubernetes
正经教主9 小时前
【docker基础】第二课:安装、配置与基础命令
docker·容器·eureka
倔强的胖蚂蚁9 小时前
云原生服务器存储规划与磁盘选型实施
运维·服务器·云原生
观无9 小时前
微服务架构核心技术知识全景总结
微服务·云原生·架构