2.9. 将卷恢复到最新的快照
要将卷恢复到其最新快照的状态,您可以更改卷的状态,而不是从这个快照创建新卷。有关从快照创建新卷的更多信息,请参阅创建块存储卷
支持恢复到快照功能的块存储驱动程序,比没有驱动程序更快、更高效地执行此任务。例如,写时复制空间优化不会受到影响。有关驱动程序支持哪些功能,请联系您的驱动程序供应商。
限制:
- 您不能在附加或正在使用的卷中使用 restore-to-snapshot 功能。
-
您不能在可引导的根卷中使用 restore-to-snapshot 功能,因为它不处于 available 状态。要使用这个功能,实例必须使用
delete_on_termination=false(默认)属性引导,以便在实例终止时保留引导卷。当您要恢复到快照时,您必须首先删除初始实例,以便卷可用。然后,您可以恢复它并从卷创建新实例。 - 在拍摄快照后,您无法恢复您重新定义大小(extend)的卷。
- 使用带有多附加卷的 restore-to-snapshot 功能可能会有限制。在使用这个功能前,请查看是否适用此类限制。
先决条件
- 块存储服务(cinder) REST API 微版本 3.40 或更高版本。
- 您必须为该卷创建一个快照。
流程
从您的工作站访问 OpenStackClient pod 的远程 shell:
$ oc rsh -n openstack openstackclient分离卷:
$ nova volume-detach <instance_id> <vol_id>-
将
<instance_id> 替换为实例 ID。 -
将
<vol_id> 替换为您要恢复的卷 ID。
-
将
找到最新快照的 ID 或名称。
$ openstack volume snapshot-list恢复快照:
$ openstack volume --os-volume-api-version=3.40 revert <snapshot_id_name>-
将
<snapshot_id_name> 替换为快照的 ID 或名称。
-
将
可选: 您可以检查您要恢复的卷是否处于恢复状态:
$ openstack volume snapshot-list重新附加卷:
$ nova volume-attach <instance_id> <vol_id>可选:您可以使用以下命令验证您恢复的卷现在是否处于 available 状态。
$ openstack volume list退出
openstackclientpod:$ exit