从快照还原 Amazon EBS 卷



但根据我的实验,我会发现以下内容,有两个实例实例 1 和实例 2

第一种情况 - 失败我已经为实例 1 的数据卷创建了快照,并使用该快照创建了一个新卷并将新卷附加/装载到实例 2。将新卷挂载到实例 2 后,我看不到其中的数据。

第二种方案 - 成功我已经从实例 1 中卸载了数据卷,然后为实例 1 的数据卷创建了快照,并使用该快照创建了一个新卷并将新卷附加/装载到实例 2。将新卷挂载到 instance-2 后,我可以看到其中的数据。

这是行为快照还是我错过了什么

AWS 建议在拍摄快照之前卸载 EBS 卷的文件系统,正是出于这个原因。 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html

大多数(所有?)现代操作系统中,即使我的应用程序写入文件并被告知操作成功,内核也可能没有实际写入后备存储,将更改缓存在内存中。 在虚拟存储上拍摄快照时,这尤其危险,因为在创建快照时操作系统可能正在写入文件系统,从而损坏文件、目录/文件夹或更糟的情况。

您可以在拍摄快照之前立即停止应用程序,并在快照开始后立即释放它。例如,如果是 XFS 文件系统,您可以在创建快照之前以及解冻之后立即冻结文件系统。Freeze 将无法考虑未写入文件的应用程序数据,但它会将文件系统缓存刷新到磁盘。更好的解决方案是在应用程序级别执行此操作,例如:在拍摄快照之前对MySQL数据库执行刷新和写入锁定,并在之后立即释放锁定。

最新更新