etcd灾难恢复
灾难恢复 etcd 被设计为能承受机器失败。etcd 集群自动从临时失败(例如,机器重启)中恢复,而且对于一个有 N 个成员的集群能容许 (N-1)/2 的持续失败。当一个成员持续失败时,不管是因为硬件失败或者磁盘损坏,它丢失到集群的访问。如果集群持续丢失超过 (N-1)/2 的成员,则它只能悲惨的失败,无可救药的失去法定人数(quorum)。一旦法定人数丢失,集群无法达到一致而因此无法继续接收更新。 为了从灾难失败中恢复,其中etcd v3 提供快照和修复工具来重建集群而不丢失 v3 键数据。 V2版api 备份数据: etcdctl backup --data- dir /home/etcd/ --backup- dir /home/etcd_backup 恢复: etcdctl -data- dir =/home/etcd_backup/ -force-new-cluster V3版api 在使用 API 3 时需要使用环境变量 ETCDCTL_API 明确指定。 在命令行设置: export ETCDCTL_API= 3 备份数据: etcdctl snapshot save " /root/$(date +%Y%m%d_%H%M%S)_snapshot.db " --cacert=/etc/ssl/etcd/ssl/ca.pem --cert=/etc/ssl