如何将备份恢复到基于kubernetes的新环境¶
Operator不仅允许在进行备份的Kubernetes集群上恢复备份,还允许在安装了Operator的任何基于Kubernetes的环境上恢复备份。
当恢复到一个新的基于kubernetes的环境时,确保它的Secrets对象具有与原始集群中相同的用户密码。更多关于秘密的细节可以在系统用户.所需Secrets对象的名称可以从spec.secrets输入部署/ cr.yaml(my-cluster-name-secrets默认情况下)。
的正确名称备份和集群.如果您可以访问原始集群,可用的备份可以使用以下命令列出:
$kubectl得到psmdb-backup
下面的命令将列出可用的集群:
$kubectl得到psmdb
请注意
如果你有配置存储操作日志,可进行时间点恢复,您可以将集群回滚到特定的日期和时间。否则,只有恢复备份而不进行时间点恢复。
当知道正确的备份名称和集群名称时,可以按照以下方式进行备份恢复。
中设置适当的键部署/备份/ restore.yaml文件。
集
spec.clusterName要在其上恢复备份的目标集群名称的键,集
spec.backupSource分段代替spec.backupName字段指向适当的s3兼容存储。这backupSource分段应包含备份类型(逻辑或物理),以及目的地键,后面跟着必要的存储配置键,与部署/ cr.yaml文件:...backupSource:类型:逻辑目的地:s3: / / S3-BUCKET-NAME / BACKUP-NAMEs3:credentialsSecret:my-cluster-name-backup-s3地区:us-west-2endpointUrl:https://URL-OF-THE-S3-COMPATIBLE-STORAGE
正如你所注意到的,
目的地值在s3兼容存储的情况下由三部分组成s3: / /前缀、s3 bucket名称和实际的备份名称,这些名称已经使用Kubectl得到psmdb-backup命令)。对于Azure Blob存储,您不需要添加前缀,而是使用容器名称作为存储桶的等效名称。- 你也可以用a
storageName键指定存储的确切名称(实际存储应已在backup.storages第部署/ cr.yaml文件):
...storageName:s3-us-westbackupSource:目的地:s3: / / S3-BUCKET-NAME / BACKUP-NAME恢复完成后,可以按照如下步骤启动实际恢复流程。
$kubectl应用- f部署/备份/ restore.yaml
中设置适当的键部署/备份/ restore.yaml文件。
集
spec.clusterName要在其上恢复备份的目标集群名称的键,属性中的其他恢复参数
pitr部分:...规范:clusterName:my-cluster-namepitr:类型:日期日期:YYYY-MM-DD hh: mm: ss集
spec.backupSource分段代替spec.backupName字段指向适当的s3兼容存储。这backupSource分段应包含目的地Key等于s3桶的特殊值s3: / /前缀,后面跟着必要的S3配置密钥,与部署/ cr.yaml文件:...backupSource:目的地:s3: / / S3-BUCKET-NAME / BACKUP-NAMEs3:credentialsSecret:my-cluster-name-backup-s3地区:us-west-2endpointUrl:https://URL-OF-THE-S3-COMPATIBLE-STORAGE你也可以用a
storageName键指定存储的确切名称(实际存储应已在backup.storages第部署/ cr.yaml文件):...storageName:s3-us-westbackupSource:目的地:s3: / / S3-BUCKET-NAME / BACKUP-NAME
运行实际恢复进程:
$kubectl应用- f部署/备份/ restore.yaml