创建应用备份

创建应用备份计划,用于定义备份数据的范围(按命名空间)、备份存储位置、方式及相关参数。每次按计划运行都会生成新的备份记录,实现对所选命名空间内应用资源的按需或定期自动备份。

前提条件

操作步骤

WARNING
  • 备份应用数据时需包含 PersistentVolumeClaims(PVC)。不支持绑定到 hostPath PersistentVolumes 的 PVC。
  • 为确保可靠性和数据完整性,不建议备份数据库数据(例如 MySQL-PXC、Redis),数据库备份请使用 Data Services。
  • 避免在备份的命名空间内进行读写、更新和删除操作,以防止迁移后出现漂移和不一致。

基本信息

  1. 在左侧导航栏点击 Clusters > Backup and Recovery

  2. 切换到 Backup Management 标签页。

  3. 点击 Create Backup Policy > Create Application Backup,并按如下配置参数。

    • Backup Resource TypeKubernetes Resources 包含所选命名空间内的所有 Kubernetes 资源文件。PVCs 是用于备份绑定到持久卷的应用数据的持久卷声明。不支持绑定到 hostPath 卷的 PVC。

      • 如果 PVC 使用的存储资源的 Recycle StrategyRetain,则只需备份 Kubernetes 资源。

      • 如果 PVC 使用的存储资源的 Recycle StrategyDelete,则需同时备份 Kubernetes 资源和 PVC。

    • Backup Repository:选择已通过连通性验证的仓库,或点击创建备份仓库。创建仓库后点击 OK and Create Application Backup 返回继续。

  4. 配置完基本信息后,点击 Next

备份资源

备份所选命名空间下的应用资源。

集群中未导入的命名空间不会显示,需先将其导入项目后才能备份。

  1. 选择一个或多个要备份的 Namespaces

  2. (可选) 配置资源过滤选项以细化备份范围:

    • Included Namespace Resources:选择要包含在备份中的特定命名空间范围资源类型。仅备份所选命名空间内的这些资源类型。支持模糊搜索和多选。

    • Included Cluster Resources:选择要包含在备份中的特定集群范围资源类型。仅备份明确选择的集群范围资源。默认不备份任何集群范围资源,除非包含。支持模糊搜索和多选。

    • Excluded Namespace Resources:选择要排除在备份之外的命名空间范围资源类型。Velero 不会备份这些资源类型。支持模糊搜索和多选。

    • Label Selectors:添加标签选择器过滤资源。仅备份匹配配置表达式的资源。配置多个选择器时,采用 OR 逻辑组合(由 Velero 的 orLabelSelectors 字段支持)。注意:此项与单一 labelSelector 互斥,备份时只能使用一种模式。每个选择器支持两种匹配方式:

      matchLabels - 简单的键值匹配:

      参数类型说明
      Keystring (必填)标签键
      Valuestring (必填)标签值

      matchExpressions - 复杂条件匹配:

      参数类型说明
      Keystring (必填)标签键
      Operatorstring (必填)取值为 InNotInExistsDoesNotExist 中之一
      Valuesarray (条件性必填)值数组。In/NotIn 时必填,Exists/DoesNotExist 时必须为空

      仅按标签键匹配(不指定值)时,使用带 Exists 操作符的 matchExpressions

      NOTE

      如果匹配的资源挂载了 PVC,且备份模式包含 PVC 数据(基于 defaultVolumesToFsBackup),则挂载的 PVC 数据也会被备份,除非通过 Pod 注解(例如 backup.velero.io/backup-volumes-excludes)排除。该注解仅排除文件系统备份的卷,若配置了卷快照,排除的卷可能仍通过快照备份。

  3. 点击 Next

方式

配置备份计划。

  • Backup once only:创建后立即执行。设置 Backup retention period 后,超过保留期的备份会自动清理。

  • Scheduled:设置 Backup rule,定期执行策略。支持 crontab 表达式。可使用平台预设的 Backup rule templates,并按需调整。推荐最小频率:备份 Kubernetes 资源和 Persistent Volume Claims 每日一次;备份 Kubernetes 资源 每小时一次。

高级配置

如有需要,配置自定义钩子以在备份过程中执行。

相关操作

手动执行备份计划

手动执行已创建的计划(包括周期规则的计划)。每次执行都会生成新的备份记录。

  1. 在左侧导航栏点击 Clusters > Backup and Recovery

  2. 切换到 Backup Management 标签页。

  3. 在计划右侧点击 Execute Backup,然后确认。

导出备份任务日志

手动导出指定计划的备份任务日志。备份任务进行中时不支持导出日志。

操作步骤

  1. 在左侧导航栏点击 Clusters > Backup and Recovery

  2. 切换到 Backup Management 标签页。

  3. 点击 Backup Schedule Name 查看备份记录,然后在 Backup Records 区域点击对应记录右侧的 Export Log