概览

提供两种备份和恢复操作:

  • 集群备份和恢复:备份并恢复控制平面数据,包括 etcd、Registry、日志和监控数据。
  • 原生应用备份和恢复:基于 Velero 备份并恢复原生应用及其持久卷。

集群备份和恢复

集群备份可保护控制平面状态和平台数据。

etcd 备份和恢复

etcd 是 的键值存储,用于持久化资源对象的状态。对于控制平面状态恢复场景,需要进行 etcd 备份。

如需详细说明,请参见 etcd Backup and Restore

Registry 备份和恢复

有关 Registry 备份和恢复,请参见 Registry Data Backup and Recovery

日志备份和恢复

当前支持 ClickHouse。请联系技术支持。

监控备份和恢复

有关监控备份和恢复,请参见 VictoriaMetrics Backup and Recovery

原生应用备份和恢复

作为集群管理员,你可以使用 Velero 备份和恢复运行在 上的原生应用。

架构

原生应用备份和恢复由两个组件组成:

  • Data Backup Essentials:提供 UI,并安装在 global 集群上。
  • Data Backup for Velero:提供 Velero,并安装在工作负载集群上。

原生应用安装

要启用原生应用备份和恢复:

  1. Customer Portal 下载 Data Backup Essentials Data Backup for Velero
  2. 上传软件包 到平台。
  3. 在 global 集群上安装 Data Backup Essentials
  4. 在工作负载集群上安装 Data Backup for Velero

安装完成后,请配置一个备份仓库以存储备份数据。

备份和恢复原生应用

你可以通过创建备份计划来备份原生应用,并通过执行恢复任务来恢复原生应用。

如需详细说明,请参见:

备份注意事项

在配置备份策略之前,请考虑以下会影响备份和恢复策略的架构因素。

不可变 OS 集群

对于运行在 Immutable OS 上的集群,在灾难恢复场景中,不需要也不建议将 VM Snapshot 作为备份策略

不建议使用 VM Snapshot 的原因

  • Immutable OS 设计:操作系统层是只读的,并由平台集中管理。当节点发生故障时,平台会自动创建一个配置正确的新节点。
  • 分布式系统特性:Kubernetes 是一个分布式系统。VM Snapshot 无法捕获 etcd quorum 等分布式组件的一致状态。
  • 灾难恢复限制:VM Snapshot 通常与原始数据存储在一起,无法应对站点级灾难。

推荐的备份方式

  • 集群状态:使用 etcd 备份来捕获控制平面状态
  • 应用数据:对持久卷使用 PV 快照或 Restic
  • 集群配置:使用 GitOps/IaC 进行配置管理

使用场景

在当前集群内备份和恢复

在误删除或故障后,将原生应用恢复到当前集群。恢复过程中,通常不需要修改原生应用资源。

跨集群原生应用迁移

常见场景包括:

  • 跨数据中心进行开发和测试
  • 在集群之间迁移资源
  • 从生产集群复制到开发/测试集群

注意事项

  • 确保源集群和目标集群之间的 CPU 和内存规格相近
  • 保持一致的网络模式,以避免资源恢复问题
  • 如果子网不同,恢复后 Pod IP 将发生变化
  • 在恢复数据之前,评估是否需要进行镜像迁移