搜索

3.4. 恢复备份

download PDF

创建块存储卷备份后,您可以根据需要恢复这个备份的数据。

您可以使用以下方法之一恢复备份:

重要

当块存储服务数据库遇到灾难丢失时,您无法恢复任何备份,除非您导出并保存其元数据。如需更多信息,请参阅保护您的备份

只有项目管理员可以取消恢复卷备份。如需更多信息,请参阅 取消恢复备份

3.4.1. 将备份恢复到特定卷

您可以将卷备份恢复到您创建的 可用 卷。

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

流程

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc undercloud 凭证文件:

    $ source ~/stackrc
  3. 列出备份以获取您要恢复的备份的名称或 ID:

    $ openstack volume backup list

    例如:

    +--------------------------------------+---------+-------------+-----------+------+
    | ID                                   | Name    | Description | Status    | Size |
    +--------------------------------------+---------+-------------+-----------+------+
    | 83dadc43-2aa9-4c0b-bc05-a12203a8f4cb | vol1bu2 | None        | available |    1 |
  4. 列出卷:

    $ openstack volume list

    确保所需卷的状态 可用,然后获取此卷的名称或 ID。例如:

    +--------------------------------------+----------------+-----------+------+--------------------------------+
    | ID                                   | Name           | Status    | Size | Attached to                    |
    +--------------------------------------+----------------+-----------+------+--------------------------------+
    | 654e2be8-bc79-4528-96a7-5f773d31c201 | vol_3          | available |    1 |                                |
  5. 将备份恢复到卷:

    $ openstack volume backup restore <backup> <volume>
    • <backup > 替换为块存储卷备份的名称或 ID。
    • <volume > 替换为 可用 Block Storage 卷的名称或 ID。

      例如:

      $ openstack volume backup restore vol1bu2 vol_3
      +-------------+--------------------------------------+
      | Field       | Value                                |
      +-------------+--------------------------------------+
      | backup_id   | 83dadc43-2aa9-4c0b-bc05-a12203a8f4cb |
      | volume_id   | 654e2be8-bc79-4528-96a7-5f773d31c201 |
      | volume_name | vol_3                                |
      +-------------+--------------------------------------+
  6. 验证此命令提供的 backup_id 对应于恢复的备份 ID,并且 volume_namevolume_id 值对应于指定卷的名称和 ID。
  7. 如果您不再需要备份,请删除备份:

    $ openstack volume backup delete <backup>

3.4.2. 将备份恢复到新卷

在恢复块存储卷的备份时,您可以创建新卷。

流程

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc undercloud 凭证文件:

    $ source ~/stackrc
  3. 列出备份以获取您要恢复的备份的名称或 ID:

    $ openstack volume backup list

    例如:

    +--------------------------------------+---------+-------------+-----------+------+
    | ID                                   | Name    | Description | Status    | Size |
    +--------------------------------------+---------+-------------+-----------+------+
    | 83dadc43-2aa9-4c0b-bc05-a12203a8f4cb | vol1bu2 | None        | available |    1 |
  4. 将备份恢复到新卷:

    $ cinder backup-restore <backup>
    • <backup > 替换为块存储卷备份的名称或 ID。

      例如:

      $ cinder backup-restore vol1bu2
      +-------------+-----------------------------------------------------+
      | Property    | Value                                               |
      +-------------+-----------------------------------------------------+
      | backup_id   | 83dadc43-2aa9-4c0b-bc05-a12203a8f4cb                |
      | volume_id   | 296c853c-c749-4eb6-857a-57ec182232a6                |
      | volume_name | restore_backup_83dadc43-2aa9-4c0b-bc05-a12203a8f4cb |
      +-------------+-----------------------------------------------------+
  5. 验证此命令提供的 backup_id 对应于恢复的备份 ID。

    volume_id 值是创建卷的 ID。但是 volume_name 可以是替换为备份卷名称的临时名称。

  6. 列出卷以验证 ID 为 volume_id 的卷是否已创建,并获取此卷名称:

    $ openstack volume list

    例如:

    +--------------------------------------+----------------+-----------+------+--------------------------------+
    | ID                                   | Name           | Status    | Size | Attached to                    |
    +--------------------------------------+----------------+-----------+------+--------------------------------+
    | 296c853c-c749-4eb6-857a-57ec182232a6 | vol_1          | available |    1 |                                |
  7. 如果您不再需要备份,请删除备份:

    $ openstack volume backup delete <backup>

3.4.3. 取消恢复备份

项目管理员可以通过将备份的状态更改为 错误 来取消恢复卷备份。但是,当 Red Hat Ceph Storage 是备份存储库的后端时,您无法取消恢复备份。

警告

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

先决条件

  • 您必须是一个项目管理员,才能取消恢复卷备份。
  • 确保备份存储库的后端不是 Red Hat Ceph Storage。

流程

  1. stack 用户身份登录 undercloud 主机。
  2. 查找 stackrc undercloud 凭证文件:

    $ source ~/stackrc
  3. 列出备份以获取您要停止恢复的备份名称或 ID:

    $ openstack volume backup list
  4. 将这个备份的状态更改为 错误 以取消其恢复操作:

    $ openstack volume backup set --state error <backup>
    • 将 & lt;backup > 替换为您要恢复的卷备份的名称或 ID。

    取消恢复是一种异步操作,因为备份存储库的后端必须在取消恢复前检测备份状态的变化。

验证

  • 列出卷备份以验证是否已取消恢复:

    $ openstack volume backup list

    当备份状态变为 available 时,将取消恢复。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.