gpt4 book ai didi

kubernetes - 服务 "kubernetes"已删除 - 意外删除了 kubernetes 服务

转载 作者:行者123 更新时间:2023-12-02 11:29:22 28 4
gpt4 key购买 nike

我不小心删除了 kubernetes svc:

service "kubernetes" deleted

使用:
 kubectl delete svc --all

我该怎么办?我只是想删除服务,以便我可以启动新服务。

最佳答案

首先有点理论;)
每当您删除 kubernetes svc 时,您也会删除端点,这就是
Reconciler进来了。它实际上是核心引导 Kubernetes Controller 循环的 Controller 管理器,它管理创建“ kubernetes ”服务,
默认 ”、“ kube-system ”和“ kube-public ”命名空间,并提供服务IP的IP修复检查。

因此,在健康集群中 default.kubernetes 服务应该由 Controller 管理器自动重新创建。

如果不是,我建议:

检查 api-server 日志

kubectl logs -f kube-apiserver-master -n kube-system

你应该看到类似的东西:
Resetting endpoints for master service "kubernetes" to [10.156.0.3]

如果您没有看到它,请尝试手动删除此服务的 etcd key

因为集群的当前状态存储在 etcd 中,所以当你删除一个服务时可能会发生 key 仍然存在的情况:

一种。执行到 etcd-master pods
kubectl exec -it etcd-master -n kube-system sh

湾获取 etcd 键值
ETCDCTL_API=3 etcdctl --cacert=/etc/kubernetes/pki/etcd/ca.crt --key=/etc/kubernetes/pki/etcd/server.key --cert=/etc/kubernetes/pki/etcd/server.crt get /registry/services/endpoints/default/kubernetes

C。如果你得到任何值(value),如:
v1    Endpointst
O

kubernetesdefault"*$eafc04cf-90f3-11e9-a75e-42010a9c00032����z!


10.156.0.3
https�2TCP"

只需将其删除
ETCDCTL_API=3 etcdctl --cacert=/etc/kubernetes/pki/etcd/ca.crt --key=/etc/kubernetes/pki/etcd/server.key --cert=/etc/kubernetes/pki/etcd/server.crt rm /registry/services/endpoints/default/kubernetes

完成后,再次检查 api-server 日志。

关于kubernetes - 服务 "kubernetes"已删除 - 意外删除了 kubernetes 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56573434/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com