namespace,pv 一直Terminating状态处理

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

1,namespace  Terminating状态处理

在k8s集群中进行测试删除namespace是经常的事件,而为了方便操作,一般都是直接对整个名称空间进行删除操作。
$ kubectl get ns qasim
NAME    STATUS        AGE
qasim   Terminating   24d
 

调用接口删除

开启一个代理终端
$ kubectl proxy
Starting to serve on 127.0.0.1:8001
再开启一个操作终端
将test namespace的配置文件输出保存
$ kubectl get ns qasim  -o json > qasim.json

删除spec下finalizers的内容及status部分的内容还有metadata字段后的","号,切记!
剩下内容大致如下:
{
    "apiVersion": "v1",
    "kind": "Namespace",
    "metadata": {
        "annotations": {
            "cattle.io/status": "{\"Conditions\":[{\"Type\":\"ResourceQuotaInit\",\"Status\":\"True\",\"Message\":\"\",\"LastUpdateTime\":\"2020-10-09T07:12:17Z\"},{\"Type\":\"InitialRolesPopulated\",\"Status\":\"True\",\"Message\":\"\",\"LastUpdateTime\":\"2020-10-09T07:12:18Z\"}]}",
            "lifecycle.cattle.io/create.namespace-auth": "true"
        },
        "creationTimestamp": "2020-10-09T07:12:16Z",
        "deletionTimestamp": "2020-10-09T07:12:22Z",
        "name": "qasim",
        "resourceVersion": "471648079",
        "selfLink": "/api/v1/namespaces/test",
        "uid": "862d311e-d87a-48c2-bc48-332a4db9dbdb"
    }
}

  

调接口删除
$ curl -k -H "Content-Type: application/json" -X PUT --data-binary @qasim.json http://127.0.0.1:8001/api/v1/namespaces/qasim/finalize
{
  "kind": "Namespace",
  "apiVersion": "v1",
  "metadata": {
    "name": "qasim",
    "uid": "fa898418-3a8c-4464-854c-3128ad7af3eb",
    "resourceVersion": "584891986",
    "creationTimestamp": "2021-12-16T03:00:34Z",
    "deletionTimestamp": "2022-04-11T07:59:18Z",
    "labels": {
      "kubernetes.io/metadata.name": "qasim"
    },
    "managedFields": [
      {
        "manager": "kubectl-create",
        "operation": "Update",
        "apiVersion": "v1",
        "time": "2021-12-16T03:00:34Z",
        "fieldsType": "FieldsV1",
        "fieldsV1": {"f:metadata":{"f:labels":{".":{},"f:kubernetes.io/metadata.name":{}}}}
      },
      {
        "manager": "kube-controller-manager",
        "operation": "Update",
        "apiVersion": "v1",
        "time": "2022-04-11T07:59:32Z",
        "fieldsType": "FieldsV1",
        "fieldsV1": {"f:status":{"f:conditions":{".":{},"k:{\"type\":\"NamespaceContentRemaining\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionContentFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionDiscoveryFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceDeletionGroupVersionParsingFailure\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}},"k:{\"type\":\"NamespaceFinalizersRemaining\"}":{".":{},"f:lastTransitionTime":{},"f:message":{},"f:reason":{},"f:status":{},"f:type":{}}}}}
      }
    ]
  },
  "spec": {
    
  },
  "status": {
    "phase": "Terminating",
    "conditions": [
      {
        "type": "NamespaceDeletionDiscoveryFailure",
        "status": "True",
        "lastTransitionTime": "2022-04-11T07:59:26Z",
        "reason": "DiscoveryFailed",
        "message": "Discovery failed for some groups, 1 failing: unable to retrieve the complete list of server APIs: metrics.k8s.io/v1beta1: the server is currently unable to handle the request"
      },
      {
        "type": "NamespaceDeletionGroupVersionParsingFailure",
        "status": "False",
        "lastTransitionTime": "2022-04-11T07:59:32Z",
        "reason": "ParsedGroupVersions",
        "message": "All legacy kube types successfully parsed"
      },
      {
        "type": "NamespaceDeletionContentFailure",
        "status": "False",
        "lastTransitionTime": "2022-04-11T07:59:32Z",
        "reason": "ContentDeleted",
        "message": "All content successfully deleted, may be waiting on finalization"
      },
      {
        "type": "NamespaceContentRemaining",
        "status": "False",
        "lastTransitionTime": "2022-04-11T07:59:32Z",
        "reason": "ContentRemoved",
        "message": "All content successfully removed"
      },
      {
        "type": "NamespaceFinalizersRemaining",
        "status": "False",
        "lastTransitionTime": "2022-04-11T07:59:32Z",
        "reason": "ContentHasNoFinalizers",
        "message": "All content-preserving finalizers finished"
      }
    ]
  }

   

补充:删除rancher的相关namespace(谨慎操作!!!)

kubectl patch namespace cattle-system -p '{"metadata":{"finalizers":[]}}' --type='merge' -n cattle-system

kubectl delete namespace cattle-system --grace-period=0 --force

kubectl patch namespace cattle-global-data -p '{"metadata":{"finalizers":[]}}' --type='merge' -n cattle-system

kubectl delete namespace cattle-global-data --grace-period=0 --force

kubectl patch namespace local -p '{"metadata":{"finalizers":[]}}' --type='merge' -n cattle-system

for resource in `kubectl api-resources --verbs=list --namespaced -o name | xargs -n 1 kubectl get -o name -n local`; do kubectl patch $resource -p '{"metadata": {"finalizers": []}}' --type='merge' -n local; done

kubectl delete namespace local --grace-period=0 --force

 

2,pv  Terminating状态处理

(1)可以执行如下命令强制删除(PV-NAME 替换成实际需要删除的 pv 名称):
$ kubectl patch pv pv-name -p  '{"metadata":{"finalizers":null}}'
 
(2)再次查看可以发现该 pv 已被删除:

 文章来源地址https://www.toymoban.com/news/detail-482232.html

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

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

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

相关文章

  • k8s中如何调用接口删除处于Terminating状态的namespace

    每当删除 namespace 或 pod 等一些 Kubernetes 资源时,有时资源状态会卡在 Terminating,很长时间无法删除,甚至有时增加 --force grace-period=0 之后还是无法正常删除。这时就需要 edit 该资源,或者将该资源导出为 json(通过调用原生接口进行删除), 将 finalizers 字段设置为 [],之后

    2024年02月07日
    浏览(41)
  • k8s delete namespace Terminating

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

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

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

    2024年02月03日
    浏览(35)
  • Pod一直处于CrashLoopBackOff状态的排查思路

    一台宿主机上启动的Pod一直重启,describe报错信息如下 Pod sandbox changed, it will be killed and re-created. Pod处于CrashLoopBackOff状态,第一想到的是Liveness probe failed或者OOM-kill; 测试Pod没有配置存活探测,查看对应机器也没有OOM-kill相关内核日志; 怀疑是否dockerd进程资源比较紧张,比如

    2024年02月12日
    浏览(69)
  • docker 启动MySQL一直处于restarting状态

    docker 启动MySQL失败,我通过 docker logs -f mysql 命令查看 日志发现以下错误 该日志大概意思就是说没找到 /etc/mysql/conf.d 这个文件夹。原因其实是官方的配置文件已经不放在/etc/mysql底下了,这底下就两个空文件夹。 1.先创建一个简单的mysql容器实例 2.复制里面的/etc/mysql文件夹

    2024年02月10日
    浏览(41)
  • 如何解决Pod一直处于Pending状态的问题

    在Kubernetes集群中,当我们创建一个新的Pod或更新一个Pod时,可能会遇到Pod一直处于Pending状态的问题。本文将介绍解决这个问题的几种方法。 检查Node节点的状态 Pod在Kubernetes中必须运行在Node节点上。因此,如果没有可用的Node节点或者Node节点不可用,Pod就会被挂起。可以使用

    2024年02月06日
    浏览(48)
  • unity 打开项目时一直停留在improting状态

    今天有两个项目突然打不开了,一打开就一直卡在improting界面 解决方案: 删掉\\\"Library\\\"文件夹重新打开终于可以了 本次问题出现的原因是Library中的某个文件损坏导致项目打开时无法成功加载,然后unity就不停的在循环加载 关于Library: Unity会把Asset下支持的资源导入成自身识别

    2024年02月11日
    浏览(43)
  • uniapp 之 小程序线上版本一直处于加载状态

    最开始小程序都是体验版的,后来应老大需求,把体验版提交审核为正式版本(线上版本), 原本以为版本审核得花费几天时间,没想到它这审核速度挺快的,不到3小时就审核通过了,审核通过后还要点击 提交发布  才能转为线上版本。 转为线上版本后就可以直接在搜索小

    2024年02月09日
    浏览(39)
  • V2ray状态,一直显示未运行(无论重启,开启)在查看状态还是未运行

            在putty中安装v2ray由于一开始出现了错误,我在网上找了一堆命令进行安装v2ray可能装了太多版本,也可能是服务器系统的原因(服务器系统是centos),最终的问题就是无论我怎么启动v2ray,其状态都是未在运行。   关于这个问题我也搜了好多: 第一种:装的v2ra

    2024年02月11日
    浏览(46)
  • 文件一直处于修改状态 git checkout 无法还原的问题解决方法

    最近在 RT-Thread 时,使用 Git 回退版本验证问题,后来 git pull 拉取最新代码后,发现里面有几个文件,一直为【修改】状态,并且无法还原, git checkout xxx git reset --hard 都用了,依旧无法还原文件,也就是几个文件一直处于【修改】状态 通过 file xxx 查看,这些文件是以回车换

    2024年02月16日
    浏览(48)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包