我们有时会遇到在kubernetes集群中,一些挂掉的pod或者其它资源对象无法正常的删除的时候,我们可以通过etcd去进行删除操作。
首先我们需要先到etcd的库中查找我们想要的资源对象:
ETCDCTL_API=3 etcdctl get “/registry” --prefix --keys-only | sed ‘/^\s*$/d’
接着可以根据查找到的资源对象进行一个删除操作,比如我需要删除一个资源分区:
ETCDCTL_API=3 etcdctl del /registry/namespaces/xxx(你需要删除的ns的名称)
删除对应的kv值,可以有针对性的删除批量的数据:
etcdctl --endpoints=http://192.168.247.133:1159 del --prefix --prev-kv /registry/events/kube-system/calico-typha