3.5. 从备份中恢复


在数据库故障或导致数据丢失的另一种事件类型后,使用您创建的备份来恢复数据。

重要

如果将 cinder-backup 服务配置为使用 Ceph RBD 驱动程序,则只能将备份卷恢复到基于 RBD 的块存储(cinder)后端。

3.5.1. 从备份中恢复卷

要从备份创建新卷,请完成以下步骤。

流程

  1. 查找您要使用的卷备份的 ID:

    # cinder backup-list
    Copy to Clipboard Toggle word wrap

    确保卷 ID 与您要恢复的卷 ID 匹配。

  2. 恢复卷备份:

    # cinder backup-restore _BACKUP_ID_
    Copy to Clipboard Toggle word wrap

    BACKUP_ID 替换为您要使用的卷备份的 ID。

  3. 如果您不再需要备份,请删除它:

    # cinder backup-delete _BACKUP_ID_
    Copy to Clipboard Toggle word wrap
  4. 如果您需要将备份卷恢复到特定类型的卷,请使用 --volume 选项将备份恢复到特定卷:

    # cinder backup-restore _BACKUP_ID --volume VOLUME_ID_
    Copy to Clipboard Toggle word wrap
    注意

    如果您从加密备份中恢复卷,则必须加密目标卷类型。

3.5.2. 在块存储数据库丢失后恢复卷

当块存储数据库丢失时,您无法恢复卷备份,因为数据库包含卷备份服务所需的元数据。但是,在创建卷备份后,您可以导出和存储由 backup_servicebackup_url 值组成的元数据,以便在数据库丢失时,您可以恢复卷备份。如需更多信息,请参阅 第 3.1.1 节 “创建完整卷备份”

如果您导出并存储此元数据,您可以将其导入到新的块存储数据库,该数据库允许您恢复卷备份。

注意

对于增量备份,您必须先导入所有导出数据,然后才能恢复其中一个增量备份。

流程

  1. 以具有管理特权的用户身份,运行以下命令:

    # cinder backup-import _backup_service_ _backup_url_
    Copy to Clipboard Toggle word wrap

    backup_servicebackup_url 替换为您导出的元数据。例如,使用从 第 3.1.1 节 “创建完整卷备份” 导出的元数据:

    # cinder backup-import cinder.backup.drivers.swift eyJzdGF0dXMi...c2l6ZSI6IDF9
    +----------+--------------------------------------+
    | Property |                Value                 |
    +----------+--------------------------------------+
    |    id    | 77951e2f-4aff-4365-8c64-f833802eaa43 |
    |   name   |                 None                 |
    +----------+--------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. 将元数据导入到块存储服务数据库后,您可以正常恢复卷,请参阅 第 3.5.1 节 “从备份中恢复卷”

3.5.3. 取消备份恢复

要取消备份恢复操作,请将备份的状态改为 恢复 以外的任何状态。您可以使用 错误状态 来最小化与恢复成功相关的混淆。或者,您可以将值更改为 available

$ openstack volume backup set --state error BACKUP_ID
Copy to Clipboard Toggle word wrap
注意

备份取消是一种异步操作,因为备份驱动程序必须在取消备份前检测状态更改。当目标卷中状态变为 available 时,取消完成。

注意

此功能目前在 RBD 备份上不可用。

警告

如果在启动后取消恢复操作,则目标卷是无用的,因为无法知道实际恢复的数据量(如果有的话)。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部