k8s集群namespace一直处于Terminating状态不释放解决办法

这篇具有很好参考价值的文章主要介绍了k8s集群namespace一直处于Terminating状态不释放解决办法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Kubernetes中namespace有两种常见的状态,即Active和Terminating状态,其中Terminating状态一般会比较少见,当对应的命名空间下还存在运行的资源,但该命名空间被删除时才会出现所谓的Terminating状态,这种情况下只要等待Kubernetes本身将命名空间下的资源回收后,该命名空间将会被系统自动删除。

问题:
想要删除kuboard这个命名空间,但是命名空间却一直处于Terminating状态不释放
k8s 一直terminating,k8s,kubernetes,java,docker
解决

  1. 查看是否有pod未被删除
kubectl get pod,deployment -n kuboard

在某些情况下,即使命名空间下没有运行的资源,但依然无法删除Terminating状态的命名空间的情况,它会一直卡在Terminating状态下,这时候就需要强制删除了。

  1. 强制删除的几种方法:
  • 1. 使用--force --grace-period=0 强制删除
kubectl delete ns kuboard --force --grace-period=0
#kuboard为命名空间

但大部分时候,这些资源也杀不掉,最好的解决办法是使用原生接口删除。

  • 2. 原生接口删除
1.获取namespace的详情信息
kubectl  get ns kuboard -o json >kuboard.json

编辑json文件,删除.metadata.finalizers字段及其内容:
删除前:
k8s 一直terminating,k8s,kubernetes,java,docker
删除后:
k8s 一直terminating,k8s,kubernetes,java,docker

2.开启k8s apiserver的一个http代理,以免必须带上证书才能访问
kubectl proxy --port=8081
#开启请单独打开一个窗口,默认前台执行,不可以退出

3.通过curl json提交接口删除
curl -k -H "Content-Type: application/json" -X PUT --data-binary @kuboard.json  http://127.0.0.1:8081/api/v1/namespaces/kuboard/finalize

例子: curl -k -H "Content-Type: application/json" -X PUT --data-binary @命名空间.json  http://127.0.0.1:8081/api/v1/namespaces/命名空间/finalize
#将cattle-system.json 以及url中的cattle-system命名空间地址进行替换成对应的命名空间

4.查看是否删除
kubectl  get ns

成功截图如下:
k8s 一直terminating,k8s,kubernetes,java,docker文章来源地址https://www.toymoban.com/news/detail-670837.html

到了这里,关于k8s集群namespace一直处于Terminating状态不释放解决办法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s pod一直处于pending状态一般有哪些情况,怎么排查?

    一个pod一开始创建的时候,它本身就是会处于pending状态,这时可能是正在拉取镜像,正在创建容器的过程。 如果等了一会发现pod一直处于pending状态, 那么我们可以使用kubectl describe命令查看一下pod的Events详细信息。一般可能会有这么几种情况导致pod一直处于pending状态: 1、

    2024年01月17日
    浏览(42)
  • k8s delete namespace Terminating

    版本情况 当时Terminating截图 前段时间pod的数量增加,怀疑是master节点机器资源不足导致处理效率问题 目前运行的pod数量 查看Prometheus监控,可以看到master节点的使用率都很低,排除资源不足问题 执行查看资源情况, 没有发现依赖资源未释放情况,排查依赖资源没有释放问题

    2024年02月10日
    浏览(25)
  • K8S集群中Pod资源处于CrashLoopBackOff状态排查思路

    CrashLoopBackOff状态一般都是Pod资源中的容器出现了问题,可以有以下几点原因: 容器中部署的程序存在Bug,无法正常启动,就会出现此状态,可以查询容器的启动日志,从日志中获取重要线索,逐个进行排查。 定义Pod资源时,对于Pod中的容器进行了资源限额,可能限额的资源

    2024年01月21日
    浏览(31)
  • K8S集群中Pod资源处于ImagePullBackOff状态排查思路

    ImagePullBackOff状态表示容器的镜像拉取失败,可能存在以下几点原因: 拉取镜像时间较长导致超时,从而导致镜像拉取失败,部署完Docker后,一定要添加上阿里云的镜像加速器,否则拉取镜像是非常慢的,很容易就会导致镜像拉取失败。 镜像配置有误,指定的镜像在公有仓库

    2024年02月14日
    浏览(30)
  • k8s pod 处于Terminating的原因分析和解决处理——筑梦之路

    之前整理了一下各种资源长时间无法回收,解决处理的命令行 k8s 各种资源Terminationg状态处理 —— 筑梦之路_k8s自定义资源修改状态-CSDN博客 这里具体整理下pod长时间处于Terminating状态的相关知识,主要是对前面的补充和完善,作为笔记记录。 当我们要删除一个Pod时,Kuberne

    2024年02月03日
    浏览(24)
  • namespace,pv 一直Terminating状态处理

    在k8s集群中进行测试删除namespace是经常的事件,而为了方便操作,一般都是直接对整个名称空间进行删除操作。     补充:删除rancher的相关namespace(谨慎操作!!!)   (1)可以执行如下命令强制删除(PV-NAME 替换成实际需要删除的 pv 名称):   (2)再次查看可以发现

    2024年02月08日
    浏览(27)
  • k8s部署解成功解决node节点一直处于NotReady状态的问题,报错failed to load Kubelet config file /var/lib/kubelet/config.yaml

    我在部署k8s的时候host1节点一直显示NotReady 报错便报,直接经典看日志解决问题思路哈哈哈 看日志找报错点,找问题解决问题,思路一定要清晰。 在host1节点中查看报错信息,代码: 由日志信息可知,报错原因是不能从/var/llib/kubelet/config.yaml下载到kubelet的配置。 错误原因估计

    2024年02月11日
    浏览(31)
  • k8s默认StorageClass,解决pvc一直处于“Pending”

    报错详情 排查思路 查看 pvc 详细属性 persistentvolume-controller waiting for a volume to be created, either by external provisioner \\\"nfs-provisioner-01\\\" or manually created by system administrator 从persistentvolume-controller反馈出来的信息是 没有权限来创建出pvc。 查看 nfs-provisioner pod日志 远程NFS服务器上的动态子

    2023年04月27日
    浏览(38)
  • k8s 大量 pod 处于 ContainerStatusUnknown 状态

    如图所示,nexus 正常运行,但产生了大量的状态不明的 pod,原因也无从所知 解决办法,删除多余的 pod,一个一个删除,非常费劲 获取 namespace 中状态为 ContainerStatusUnknown 的 pod,并删除 获取所有非 Running 状态下的 pod,并删除

    2024年02月07日
    浏览(40)
  • k8s coredns 一直是pending状态的解决办法

    使用kubectl get pods -n kube-system 查看如下  coredns 一直是pending 。 经查阅资料发现coredns 最大可能是缺少网络插件导致,本文选择kube-flannel.yml方式来安装 创建文件 kube-flannel.yml,将下面内容复制并保存 执行  kubectl apply -f kube-flannel.yml 再次运行 kubectl  get pods -n kube-system 查看 

    2024年02月15日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包