1. etcdctl 常用运维命令中健康检查、成员管理、键值操作与快照恢复?
请说明 etcdctl 在 Kubernetes 运维中常用的命令,包括健康检查、成员管理、键值操作与快照备份/恢复如何执行?
- etcdctl 的端点、证书鉴权参数
- 健康检查与成员列表
- 快照备份与恢复的完整流程
在现代 etcd(v3)中,etcdctl 通过 gRPC 对接。健康检查用 endpoint health 与 endpoint status;成员管理用 member list、member add、member remove;键值操作是 put、get、del、watch;快照用 snapshot save 与 snapshot restore。K8s 场景需带 transport 安全参数(--cacert、--cert、--key)和 --endpoints。快照恢复时用 snapshot restore 从备份重建数据目录,再以 etcd 正常方式启动,恢复后需重新添加到集群成员。
考点是常用的运维命令与快照恢复的完整流程。注意 v3 与 v2 命令差异,以及恢复时数据目录需清空、wal 与 snapshot 会重新生成。
# 健康检查
etcdctl --endpoints=https://10.0.0.1:2379 --cacert=/etc/etcd/ca.crt \
--cert=/etc/etcd/server.crt --key=/etc/etcd/server.key endpoint health
# 成员管理
etcdctl --endpoints=https://10.0.0.1:2379 member list
etcdctl member add node2 --peer-urls=https://10.0.0.2:2380
# 快照备份与恢复
etcdctl snapshot save /backup/etcd-snapshot.db
etcdctl snapshot restore /backup/etcd-snapshot.db \
--data-dir=/var/lib/etcd-restore \
--name=etcd-0 --initial-cluster=etcd-0=https://10.0.0.1:2380 \
--initial-advertise-peer-urls=https://10.0.0.1:2380