开发者社区 > PolarDB开源 > 正文

Kubernetes集群NameSpace无法删除

已解决

Kubernetes集群NameSpace无法删除

展开
收起
提个问题 2024-06-01 17:03:09 97 0
1 条回答
写回答
取消 提交回答
  • 开发者社区问答官方账号
    官方回答
    采纳回答
    Kubernetes集群NameSpace无法删除的原因通常有如下几种:
    1、APIservice存在非true状态,会阻塞controller对NameSpace的删除行为。 
    2、NameSpace下存在一些自定义的crd资源没有清理完毕,常见的比如社区Istio。 
    3、NameSpace被其他Controller接管,例如Rancher,此类工具在社区也有已有的issues。 
    针对场景1的解决方案为:通过kubectl get apiservice 检查非true的apiservice并修复,确认apiservice如果是无用的话,可以备份yaml后删除。 
    针对场景2的解决方案为:通过kubectl api-resources --verbs=list --namespaced -o name | xargs -n 1 kubectl get -n {namespace} 过滤namespace下所有资源,如果有pending或者终止状态的资源就将其删除。如果通过命令kubectl delete删除不了,可通过kubectl edit 删除finalizers字段。
    针对场景3的解决方案为:通过kubectl edit namespace {namespace} , 将yaml中的 "finalizers"  字段去除后,重新保存后在看一下。
    2024-06-01 17:03:10
    赞同 1 展开评论 打赏

PolarDB 是阿里云自研的云原生数据库产品家族,采用存储计算分离、软硬一体化设计,既拥有分布式设计的低成本优势,又具有集中式的易用性,可满足大规模应用场景需求。 2021年,阿里云先后宣布PolarDB PostgreSQL版与PolarDB分布式版开源,并持续推动开源版本迭代和演进,助力开发者通过开源版本快速使用阿里云数据库产品技术,并参与产品迭代中来。 开源历程参见:OpenPolarDB.com/about

相关电子书

更多
ACK 云原生弹性方案—云原生时代的加速器 立即下载
ACK集群类型选择最佳实践 立即下载
企业运维之云原生和Kubernetes 实战 立即下载

相关镜像