环境与配置管理60 条

配置备份

配置的恢复能力:IaC 仓库、集群 etcd、平台设置各自有备份手段,并且要演练恢复而非只备份。

CI/CD 与发布速查开发更新于 2026-10-13

配置备份是什么

配置备份指的是配置的恢复能力:IaC 仓库、集群 etcd、平台设置(CI/CD 规则、密钥引用、环境配置)各自有备份手段。要点是「备份不等于可恢复」:没有演练过的备份只是心理安慰。备份范围也常被低估——基础设施代码、集群对象、平台流水线定义缺任何一层,灾难恢复都可能在半路卡住。

基本信息

适用平台Kubernetes、Terraform、CI 平台与各类自建服务
IaC版本库本身即备份(含历史);远端仓库多地冗余
K8setcd 快照定期备份(含加密配置),恢复演练到隔离环境
平台CI/CD 平台配置(密钥引用、环境规则)导出与文档化
验证定期从备份恢复到隔离环境并跑通启动
保留按合规要求设置保留期与异地副本

典型使用场景

  • 灾难恢复:集群损坏时用快照重建全部对象
  • 平台迁移:把旧平台配置导出为新平台的迁移底稿
  • 审计追溯:备份版本回答「某天的规则长什么样」
  • 误配置回滚:对照备份恢复被改坏的平台设置
  • 例行演练:定期在隔离环境验证恢复流程与权限
  • 变更前快照:重大配置变更前先留备份,回退有依据

etcd 快照与校验

etcd 快照与校验
ETCDCTL_API=3 etcdctl snapshot save /backup/etcd-$(date +%F).db \
  --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  # 生成快照
etcdctl snapshot status /backup/etcd-2026-10-13.db  # 校验完整性
# 恢复演练在隔离集群做 snapshot restore,别在生产验证

备份对象与手段

对象手段频率
IaC 代码版本库多地冗余持续
集群 etcd快照备份每日或按变更节奏
CI 平台配置导出与文档化随变更
密钥引用清单清单与权限核对随变更
备份文件同样含敏感数据:与生产数据同级保护,并验证可恢复,二者缺一不可。
恢复演练进日历:至少每季度在隔离环境完整走一次恢复流程,记录耗时与卡点,演练结果比备份数量更有说服力。

易错点

  • 备份存同机房同账号:区域级故障一并丢失,异地冗余
  • 从未演练恢复:恢复流程里的坑在真实故障时才暴露,定期演练
  • 只备份数据不备份平台配置:集群恢复了但发布能力没恢复,清单要把平台层列全
  • 快照频率与恢复点目标不匹配:接受不了半天数据量就别做每日快照,先对齐两个目标

数据来源与参考

  • Kubernetes 文档《Operating etcd》
  • Google SRE Workbook(数据完整性)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌