集群备份

PolarDB-X Operator 从 1.3.0 版本开始支持全量备份恢复功能。本文介绍如何对 PolarDB-X 进行全量备份。

前置条件

  1. PolarDB-X Operator 升级到 1.3.0 及以上版本
  2. 完成备份存储方式配置,参见文档:备份存储配置

发起全量备份

下面介绍如何通过 PolarDBXBackup 对象为 PolarDB-X 进行全量备份。

创建 PolarDBXBackup 对象

  1. 参照如下示例编写 pxc-backup.yaml 文件:
    apiVersion: polardbx.aliyun.com/v1  
    kind: PolarDBXBackup
    metadata:                   
     name: pxcbackup-test
    spec:
     cluster:
       name: polardbx-test             
     retentionTime: 240h
     storageProvider:
       storageName: sftp
       sink: default
     preferredBackupRole: follower
    

参数说明:

  • cluster.name: 待备份的目标 PolarDB-X 集群名称
  • retentionTime: 备份集保留时间,单位小时
  • storageProvider.storageName: 备份集存储方式,支持 sftp 和 oss
  • storageProvider.sink: 备份集存储配置的名称,对应备份存储配置中的 name 字段
  • preferredBackupRole( 该参数仅适用于 1.4.0 及后续版本 ): 进行备份的节点角色,可选择 followerleader,默认为 follower若使用 leader 发起备份,可能会对业务造成影响,请谨慎配置

2.使用下面的命令创建 PolarDBXBackup 对象,触发全量备份:

kubectl create -f pxc-backup.yaml

查看全量备份进度

您可以使用以下指令查看全量备份的进度:

kubectl get pxb

当进度中的PHASE变为Finished后备份即表示全量备份完成。

NAME             CLUSTER         START                  END                    RESTORE_TIME           PHASE      AGE
pxcbackup-test   polardbx-test   2022-10-21T04:56:38Z   2022-10-21T04:58:21Z   2022-10-21T04:57:23Z   Finished   4m15s

其中,进度里的RESTORE_TIME字段表示该备份集可以恢复到的最新的时间点。

注意事项

  • PolarDBXBackup 对象的metadata.name字段表示备份集的名称,多次构建备份集需要修改该字段

备份集查阅

全量备份完成后,备份集存放在如下路径,您可以在 SFTP 配置的主机或者 OSS bucket 中查看对应的备份集文件。

{root_path}/polardbx-backup/{pxc_name}/{pxc_backup_name}-{timestamp}
  • root_path取决于存储配置
    • 若采用sftp作为存储,则该值为sink.rootPath
    • 若采用oss作为存储,则该值为sink.bucket
  • polardbx-backup为固定字段
  • pxc_name是待备份的集群的名字
  • pxc_backup_name是备份集的名字
  • timestamp是备份开始的时间戳(UTC+0)

results matching ""

    No results matching ""