阿里云容器服务备份中心为集群内的有状态应用提供灾难备份和恢复能力,对于Kubernetes集群内的有状态应用的崩溃一致性、应用一致性及跨地域的灾难恢复提供了一站式的解决方案。本文介绍如何通过控制台应用备份功能实现同集群内应用的备份、制作快照及应用的恢复。

前提条件

已安装备份服务组件并完成对应权限的配置。具体操作,请参见安装备份服务组件并配置权限

使用限制

  • 备份应用时,正在被删除的资源不会被备份。
  • 如需使用HBR文件备份功能,请先开通HBR服务。具体操作,请参见混合云备份HBR
  • 如需使用云盘快照备份卷,需要安装CSI插件,且其版本不低于v1.1.0。关于如何安装CSI插件,请参见安装与升级CSI组件
  • 如需创建NAS快照(即制作快照时对应PVC的转换为存储类列选择为alibabacloud-cnfs-nas),您需要先创建StorageClass。具体操作,请参见通过CNFS方式使用NAS文件系统

计费说明

若备份时,使用了云盘、NAS、HBR或快照等存储资源,计费说明如下所示。

步骤一:创建备份仓库

当前应用备份功能使用阿里云OSS对备份数据进行存储。若创建备份任务时无可用的备份仓库,则需执行该步骤。
说明
  • 在您集群的所在地域只需要创建一次备份仓库,您可在同一地域的不同集群使用同一个备份仓库。
  • 已创建过的备份仓库不支持更新,只能被删除。若您在删除备份仓库后,重新创建了同名的备份仓库,此新建的同名备份仓库在现有已使用过备份的集群中也无法生效。
  1. 登录容器服务管理控制台,在左侧导航栏选择多集群 > 备份中心
  2. 备份中心页面,单击创建
  3. 创建面板配置参数,然后单击确定
    配置项说明
    备份仓库名称备份仓库的名称,支持小写字母和数字。
    OSS Bucket区域OSS Bucket所在地域。
    OSS Bucket名称OSS Bucket的名称。若为ACK托管版集群,则OSS Bucket的名称首部需要为cnfs-oss****。可通过CNFS OSS声明一个新的Bucket。
    OSS Bucket子目录OSS Bucket的子目录(非必填)。

步骤二:创建备份任务

  1. 备份中心页面,在备份计划和恢复的集群下拉列表中选择目标集群,然后单击右侧的创建备份计划
  2. 在目标集群应用备份创建备份计划面板,设置备份应用的相关参数后,单击确定
    说明
    • 备份任务名称仅支持小写字母和数字,不能有空格。
    • 备份命名空可选择多个。
    • 如果指定标签备份,每个备份任务只能输入一个标签。
    • 备份存储卷时,云盘快照集成了阿里云云盘快照技术,而HBR是阿里云混合云备份服务的简称,是一种高效、安全、低成本的全托管式云备份存储服务。
    • 定时备份的表达式。支持Linux Crontab以及按照间隔备份。
    • 如果开启了定时备份功能,则在应用备份页面的备份计划页签可以看到定时备份的详细配置信息。
    创建备份
    配置项说明
    名称备份任务的名称,必填项。
    备份仓库需要关联的备份仓库,必填项。
    备份命名空间支持选中一个或者多个备份命名空间。表示备份选中的一个或多个命名空间中的应用,必填项。
    备份存储卷是否开启备份存储卷以及存储应用中的数据。

    当选中备份存储卷时,默认为您进行数据备份。如果存储卷是云盘,则通过快照进行备份;如果存储卷不是云盘,则会通过HBR方式进行备份。

    备份类型立即备份定时备份

    当设置为定时备份时,需要配置备份周期。支持Crontab表达式设置定时备份。关于如何使用Crontab表达式,请参见how-use-cron-linux

    指定标签备份需要备份的应用标签,以指定备份带有该标签的应用。
    指定资源支持填写多个资源对象名称,多个资源对象名称以英文半角逗号(,)间隔,例如deploy, configmap等。指定资源后可以只备份特定资源。
    排除资源支持填写多个资源对象名称,多个资源对象名称以英文半角逗号(,)间隔,例如pod, secret等。表示排除备份选中的资源对象应用。
    备份有效期备份任务的数据存储有效期,过期之后数据将无法恢复。
    备份和快照页签,创建的备份任务状态显示Completed,表示该任务备份成功。

步骤三:为文件系统类型的数据卷制作快照

若创建备份任务时已选中备份存储卷且存储类型使用了非云盘类型,即使用混合云备份服务HBR(Hybrid Backup Recovery)进行文件备份。根据恢复需求,您可选择制作云盘快照或文件系统CNFS快照。

  1. 应用备份页面单击备份和快照页签。
  2. 在对应备份任务右侧操作列单击制作快照
  3. 生成快照对话框,选中对应可以转换的PVC,对应PVC的转换为存储类列选择对应存储卷类型,然后单击制作快照(对应显示为Snapshot的系统已经创建快照完成,无须再次转换)。
    说明 制作快照时,请选择对应的转换为存储类。否则,制作的快照将无法恢复。
    生成快照
    目前支持NAS(alibabacloud-cnfs-nas)及云盘(alicloud-disk)两种存储卷类型。
    生成快照后,对应PVC的状态会显示为ConvertionCompleted。如下图所示:制作快照

步骤四:恢复应用和数据卷

重要 对于需要备份存储卷的备份任务,在恢复数据前,确认已完成备份任务的快照制作。
  1. 应用备份页面,单击恢复页签。
  2. 恢复页签,单击创建恢复任务
  3. 创建恢复任务面板配置恢复任务,然后单击确定
    选择备份仓库后,请单击初始化仓库,将恢复集群和指定的备份中心进行关联。每个备份仓库只需要关联一次。仓库初始化完成后,您可以选择备份仓库中指定的备份进行恢复。创建恢复任务
    配置项说明
    名称恢复任务名称,仅支持小写字母和数字。
    备份仓库备份文件所在的仓库。
    选择备份备份文件。
    重定义命名空间若需要修改备份数据的命名空间,请单击添加,选择备份数据所属的命名空间,在冒号后设置恢复后数据所属的命名空间。
    说明 恢复应用时,仅恢复当前集群中不存在的资源,对于已存在的资源不会覆盖。如需恢复到之前的版本,则需要删除现有资源再进行恢复。
  4. 在提示对话框中,单击左下角的确定
  5. 验证相关的有状态应用或无状态应用,存储卷和服务可以正常启动和正常访问。
    1. 在恢复集群管理页左侧导航栏选择工作负载 > 无状态
    2. 在目标应用右侧操作列单击详情
      容器组页签下,确认目标应用的状态为Runnning
    3. 在集群管理页左侧导航栏中,选择存储 > 存储声明
      存储声明页面可查看已恢复的存储声明。
    4. 在集群管理页左侧导航栏中,选择网络 > 服务
    5. 服务页面单击目标的外部端点,确认是否可以访问。