第 1 章 备份 etcd
etcd 是 OpenShift Container Platform 的以”键-值”形式进行的存储,它会保留所有资源对象的状态。
定期备份集群的 etcd 数据,并在 OpenShift Container Platform 环境以外的安全位置保存备份数据。不要在第一个证书轮转完成前(安装后的 24 小时内)进行 etcd 备份,否则备份将包含过期的证书。另外,建议您在非使用高峰时段对 etcd 进行备份,因为备份可能会影响到系统性能。
一旦您有了 etcd 备份,就可以对丢失的 master 主机进行恢复,并恢复到以前的集群状态。
您可以在任何已连接到 etcd 集群的 master 主机上执行 etcd 数据备份过程 ,这里提供了正确的证书。
1.1. 备份 etcd 数据
按照以下步骤通过创建快照来备份 etcd 数据。快照可以被保存,并在以后需要时使用它来恢复 etcd 数据。
您应该只保存来自一个 master 主机的快照。您不需要对集群中的每个 master 主机都进行快照。
先决条件
- 具有对 master 主机的访问权限。
流程
- 访问 master 主机。
如果启用了集群范围的代理,请确定已导出了
NO_PROXY
、HTTP_PROXY
和HTTPS_PROXY
环境变量。提示您可以通过查看
oc get proxy cluster -o yaml
的输出来检查代理是否已启用。如果httpProxy
、httpsProxy
和noProxy
字段设置了值,则会启用代理。运行
etcd-snapshot-backup.sh
脚本,输入保存 etcd 快照的位置。确保在
sudo
中使用-E
以便将环境变量正确传递给脚本。$ sudo -E /usr/local/bin/etcd-snapshot-backup.sh ./assets/backup/snapshot.db
在此示例中,快照将保存到 master 主机上的
./assets/backup/snapshot.db
。