Google Compute Engine (GCE) 永久磁盘 (PD) 快照是否具有崩溃一致性?
Are Google Compute Engine (GCE) persistent disk (PD) snapshots crash-consistent?
当我拍摄 persistent disk snapshot 时,此快照的一致性保证是什么?我知道它不能保证“应用程序一致”,但它是“崩溃一致”吗?或者没有一致性保证?
-- 编辑--
为了进行比较,Machine Images 保证按原样具有崩溃一致性。但是,文档对永久性磁盘快照的这个问题只字未提。
根据 snapshot best practice,即使应用程序正在将数据写入这些磁盘,您也可以从永久磁盘创建一致的快照。如果您的应用程序需要严格的一致性,那么您可以按照以下步骤来确保一致的快照。
要在拍摄快照之前准备永久磁盘,请执行以下操作:
1- 使用 SSH 连接到您的实例。
2- 运行 一个应用刷新到磁盘。例如,MySQL 有一个 FLUSH 语句。使用适用于您的应用的任何工具。
3- 阻止您的应用写入永久磁盘。
4- 运行 sudo 同步。
TL;DR: PD 磁盘快照 崩溃一致。
来自Compute Engine Persistent documentation:
When you take a snapshot of a persistent disk, you don't need to take any additional steps to make your snapshot crash consistent. In particular, you do not need to pause your workload.
当我拍摄 persistent disk snapshot 时,此快照的一致性保证是什么?我知道它不能保证“应用程序一致”,但它是“崩溃一致”吗?或者没有一致性保证?
-- 编辑--
为了进行比较,Machine Images 保证按原样具有崩溃一致性。但是,文档对永久性磁盘快照的这个问题只字未提。
根据 snapshot best practice,即使应用程序正在将数据写入这些磁盘,您也可以从永久磁盘创建一致的快照。如果您的应用程序需要严格的一致性,那么您可以按照以下步骤来确保一致的快照。
要在拍摄快照之前准备永久磁盘,请执行以下操作:
1- 使用 SSH 连接到您的实例。
2- 运行 一个应用刷新到磁盘。例如,MySQL 有一个 FLUSH 语句。使用适用于您的应用的任何工具。
3- 阻止您的应用写入永久磁盘。
4- 运行 sudo 同步。
TL;DR: PD 磁盘快照 崩溃一致。
来自Compute Engine Persistent documentation:
When you take a snapshot of a persistent disk, you don't need to take any additional steps to make your snapshot crash consistent. In particular, you do not need to pause your workload.