kubeadm reset
该命令尽力还原由 kubeadm init
或 kubeadm join
所做的更改。
概要
尽最大努力还原通过 'kubeadm init' 或者 'kubeadm join' 操作对主机所做的更改
"reset" 命令执行以下阶段:
preflight Run reset pre-flight checks
update-cluster-status Remove this node from the ClusterStatus object.
remove-etcd-member Remove a local etcd member.
cleanup-node Run cleanup node.
kubeadm reset [flags]
选项
--cert-dir string 默认值:"/etc/kubernetes/pki" | |
存储证书的目录路径。如果已指定,则需要清空此目录。 | |
--cri-socket string | |
要连接的 CRI 套接字的路径。如果为空,则 kubeadm 将尝试自动检测此值;仅当安装了多个CRI 或具有非标准 CRI 插槽时,才使用此选项。 | |
-f, --force | |
在不提示确认的情况下重置节点。 | |
-h, --help | |
reset 操作的帮助命令 | |
--ignore-preflight-errors stringSlice | |
错误将显示为警告的检查列表;例如:'IsPrivilegedUser,Swap'。取值为 'all' 时将忽略检查中的所有错误。 | |
--kubeconfig string 默认值:"/etc/kubernetes/admin.conf" | |
与集群通信时使用的 kubeconfig 文件。如果未设置该标志,则可以在一组标准位置中搜索现有的 kubeconfig 文件。 | |
--skip-phases stringSlice | |
要跳过的阶段列表 |
从父命令继承的选项
--rootfs string | |
[实验] 指向 '真实' 宿主机根文件系统的路径。 |
Reset 工作流程
kubeadm reset
负责从使用 kubeadm init
或 kubeadm join
命令创建的文件中清除节点本地文件系统。对于控制平面节点,reset
还从 etcd 集群中删除该节点的本地 etcd 堆成员,还从 kubeadm ClusterStatus
对象中删除该节点的信息。
ClusterStatus
是一个 kubeadm 管理的 Kubernetes API 对象,该对象包含 kube-apiserver 端点列表。
kubeadm reset phase
可用于执行上述工作流程的各个阶段。
要跳过阶段列表,你可以使用 --skip-phases
参数,该参数的工作方式类似于 kubeadm join
和 kubeadm init
阶段运行器。
外部 etcd 清理
如果使用了外部 etcd,kubeadm reset
将不会删除任何 etcd 中的数据。这意味着,如果再次使用相同的 etcd 端点运行 kubeadm init
,你将看到先前集群的状态。
要清理 etcd 中的数据,建议你使用 etcdctl 这样的客户端,例如:
etcdctl del "" --prefix
更多详情请参考 etcd 文档。
接下来
- 参考 kubeadm init 来初始化 Kubernetes 主节点。
- 参考 kubeadm join 来初始化 Kubernetes 工作节点并加入集群。
最后修改
November 27, 2020 at 5:10 PM PST
: sync changes in docs/reference/setup-tools/kubeadm/ directory (679b45e2c)