我有一个安装了 calico 的 kubernetes 集群(helm Chart 版本 v3.28.0)。我已经多次应用了 calico 网络策略。突然间,应用完全相同的策略给了我这个错误:
$ kubectl apply -f my-policy.yaml
error: resource mapping not found for name: "my-policy" namespace: "" from "my-policy.yaml": no matches for kind "GlobalNetworkPolicy" in version "projectcalico.org/v3"
ensure CRDs are installed first
怎么这个不再起作用了?
您可以检查api资源是否仍然存在:
kubectl api-resources --api-group=projectcalico.org -o wide
如果输出为空,则意味着 kubernetes 不再了解这些资源。为了确保 kubernetes 再次检测到这些 api 资源:
kubectl delete apiservices.apiregistration.k8s.io v3.projectcalico.org
kubectl rollout restart deployment calico-apiserver