etcdctl命令备份集群状态数据,需指定证书路径和存储位置,建议定期通过CronJob自动执行。ETCDCTL_API=3 etcdctl --endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
snapshot save /opt/backup/etcd-$(date +%Y%m%d).db
kubeconfig文件(集群访问凭证)和证书(如/etc/kubernetes/pki/下的文件),确保恢复后能正常访问集群。kubectl cp或rsync备份Pod数据,或通过数据库工具(如mysqldump)备份有状态应用数据。etcdctl snapshot restore命令从备份文件恢复数据,需指定数据目录,恢复后重启etcd。kubeconfig文件复制到/etc/kubernetes/目录,确保权限正确,重启Kubernetes组件。kubectl cp或rsync将备份的数据还原到对应Pod或存储卷,或通过数据库工具恢复。参考来源: