You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubernetes中无法删除Apache Solr Operator CRD故障咨询

问题1原因解释

你遇到的get请求能查到资源、patch请求返回命名空间不存在的差异,是Kubernetes APIServer对读请求和写请求的校验逻辑不同导致的:

  • 读请求(kubectl get)查询自定义资源时,会直接从etcd拉取匹配规则的资源记录,只要资源还没被从etcd中清理,哪怕它所属的命名空间已经处于删除中、未完全销毁,也能正常返回查询结果。
  • 写请求(kubectl patch)执行前会先校验资源所属命名空间的状态,只要命名空间已经进入删除流程,APIServer就会直接拒绝写入操作,返回命名空间不存在的404错误。

问题2解决步骤

你当前的所有异常都是被处于删除中状态的CRD阻塞导致的,按以下顺序操作即可解决:

  1. 先清理残留的SolrCloud自定义资源,用raw请求跳过命名空间校验:
kubectl delete --raw /apis/solr.apache.org/v1beta1/namespaces/solr-wcnp-poc/solrclouds/explore
  1. 移除卡住的两个CRD的finalizers,让它们能正常完成删除:
# 清理solrclouds的CRD finalizer
kubectl patch crd solrclouds.solr.apache.org -p '{"metadata":{"finalizers":[]}}' --type=merge
# 清理zookeeperclusters的CRD finalizer
kubectl patch crd zookeeperclusters.zookeeper.pravega.io -p '{"metadata":{"finalizers":[]}}' --type=merge
  1. 验证所有关联CRD已经被完全删除:
kubectl get crd | grep -E 'solr.apache.org|zookeeper.pravega.io'

如果没有返回结果就说明清理完成,此时你再重新执行Solr Operator的安装流程即可。

内容的提问来源于stack exchange,提问作者happydude

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 13:12:02