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

相关推荐
AI小小怪2 小时前
在Linux服务器上安装CVAT (Docker 28.5.1)
运维·docker·容器·数据标注·cvat
小坏讲微服务4 小时前
Docker-compose 搭建Maven私服部署
java·spring boot·后端·docker·微服务·容器·maven
!chen4 小时前
k8s-Pod中的网络通信
网络·docker·kubernetes
奥尔特星云大使6 小时前
《系统规划与管理师教程(第2版)》方法篇 第10章 云原生系统规划 知识点总结
云原生·软考·高级·系规
熙客8 小时前
Kubernetes是如何保证有状态应用数据安全和快速恢复的
mysql·云原生·容器·kubernetes
Wang's Blog9 小时前
Nestjs框架: 微服务项目工程结构优化与构建方案
微服务·云原生·架构·nestjs
似水流年 光阴已逝10 小时前
Kubernetes Pod 基本原理:全面详解
云原生·容器·kubernetes·pod
PKNLP10 小时前
07.docker介绍与常用命令
运维·docker·容器
阿里云云原生10 小时前
评估工程正成为下一轮 Agent 演进的重点
云原生
掘根12 小时前
【Docker】网络
网络·docker·容器