首页 > 解决方案 > 如果我删除 etcd 中的 pod 数据,kubelet 会发生什么?

问题描述

如果我停止 Apiserver 并删除 etcd 中的 pod 数据,然后我重新启动 Apiserver。

kubelet 会发生什么,如果 kubelet 会删除真正的 pod?

标签: kubernetesetcd

解决方案


快速回答。

您无法停止 Apiserver。

如果您删除 pod,它将被重新安排,因此您需要先删除kube-apiserver.yamlpod /etc/kubernetes/manifests

如果这样做,您将无法编辑 etcd。

Etcd是一个开源的分布式键值存储,它通过为集群协调和状态管理提供规范的中心(系统的真实来源)来充当分布式系统的骨干。

您可以通过进入 etcd pod 并更改数据来手动编辑值,但这有点问题。

或者你可以使用etcdctl工具。

etcdctletcd的命令行客户端。它可以在脚本中使用,也可以让管理员探索 etcd 集群。

ETCDCTL_API=3 etcdctl --endpoints=https://[127.0.0.1]:2379 --cacert=/etc/kubernetes/pki
/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt --key=/etc/kubernetes/pki/etcd/healthcheck-client.key

推荐阅读