崩潰一致與應用一致備份比較

備份的可靠性,以及數據保護策略的一般性取決於備份數據在需要時是否有效且可立即使用。據一些組織報告,2021年的還原失敗率為34%

迅速且成功的還原問題特別關注於像微軟 SQL Server 和 Exchange Server 這樣的現場數據庫工作負載。這些通常是關鍵的,且不能在虛擬機器或實體機器備份期間停止,而備份的時間取決於機器的大小,有時可能需要幾個小時。為解決這個問題,現代解決方案提供了幾種類型的備份,包括崩潰一致性和應用程序一致性備份。

閱讀本文以發現這些備份類型之間的主要差異,並了解每種類型如何影響應用程序數據的備份和還原。

崩潰一致性備份備份軟件如何在同一時間點拍攝整個數據集的快照?這是通過利用微軟的卷影複製服務 (VSS) 實現的,該服務是從微軟 Server 2003 開始的 Windows OS 的一部分。VSS 服務促進了環境中不同組件之間的通信:備份軟件、不能關閉的生產應用程序(在備份進程中對其進行更改)和存儲。對於 Microsoft VSS 的運作,所有這些組件都應該支持這個功能。

A crash-consistent backup takes a snapshot of all the data found on a disk at the exact same time, while preserving the write order. This means that files that rely on each other are backed up at the same point in time, and thus they are consistent. The term “crash-consistent” describes the capturing of the data for backup, as it is similar to a restore point being captured at the instant leading up to a server crashing or being powered off.

如何备份软件在同一时间点拍摄整个数据集的快照?这是通过利用微软的卷影复制服务(VSS)来实现的,该服务是从微软服务器2003年开始的Windows操作系统的一部分。VSS服务促进了环境中不同组件之间的通信:备份软件、无法关闭的生产应用程序(在备份过程中写入更改)和存储。为了使Microsoft VSS正常工作,所有这些组件都应支持此功能。

“VSS请求者”,即备份软件,请求创建阴影副本。VSS快速冻结卷上的I/O操作,然后将其排队。然后记录当前由卷使用的块。备份软件然后复制磁盘上的所有数据,即使自快照以来块已更改,因为它知道哪些块用于快照。

请注意,崩溃一致备份远远优于旧的不一致备份,后者基本上相当于对磁盘上文件的复制。这意味着如果文件在备份过程中发生更改,那么在备份窗口期间发生更改的文件将处于不一致状态,因为另一个文件依赖的文件可能在备份期间发生了更改。

儘管與不一致的備份相比具有優勢,但崩潰一致性備份也有其局限性。最重要的是,記憶體中或在任何未完成的I/O交易中找到的資訊將被忽略。在像是 Microsoft SQL Server 和 Microsoft Exchange Server 這類的資料庫應用程式中,這一點尤為關鍵。對於這類應用程式的崩潰一致性備份,需要在資料恢復後進行程序,使備份數據達到一致狀態,進而導致更長的恢復時間和資料丟失的風險。

應用程式一致性備份

應用程式一致性備份,也被稱為應用程式感知備份,可以捕獲應用程式中的記憶體和未完成的I/O操作中的資訊。這是通過使用 Microsoft 的服務中稱為 VSS 寫入器的應用程式特定組件實現的。這些寫入器確保在創建影子複本時應用程式數據的一致性。當備份軟體要求創建影子複本時,Microsoft VSS 寫入器或第三方寫入器允許 VSS 控制特定應用程式數據,而不僅僅是磁片上的文件,並允許對這些應用程式進行具有事務性一致性的備份。

Microsoft SQL Server 可能在記憶體中存放資料,並且有待處理的 I/O 操作。即使在檔案層面上一致的磁碟常規崩潰一致性備份,也會遺漏這些位置中存放的資料。然而,透過應用程式一致性備份,Microsoft SQL Server 的 VSS 寫入程式允許將記憶體中的資訊清除,並將待處理的 I/O 操作按正確的交易順序刷新到磁碟中,以便包含一致的交易資料的應用程式資料磁碟備份。

Linux 機器的應用程式一致性備份

對於無法使用 VSS 服務的基於 Linux 的機器,您可以使用 Linux 預腳本和後腳本命令。

  • 預凍結腳本可以在採取 VM 快照之前運行,以使 I/O 操作靜止並將記憶體中的資訊刷新到磁碟中。
  • 然後,後解凍腳本會在採取 VM 快照後立即運行,以解凍 I/O 操作,使應用程式可以恢復正常運作。

從應用程式一致性備份中恢復

應用程式一致性和崩潰一致性備份之間的另一個關鍵差異是在恢復資料後,特別是在恢復完成後,您需要進行的工作量。

  • 使用崩潰一致性備份,由於應用程式資料可能不一致,您必須遵循特定程序將應用程式帶到一致的狀態。此過程因產品而異,例如 Microsoft Exchange Server 或 Microsoft SQL Server。
  • 應用程式一致的備份是指應用程式數據已經一致。在應用程式數據的災難恢復方案中,擁有應用程式感知的備份比崩潰一致的備份要大大有益,因為恢復過程更快速、更可靠。

VSS Writers Commands

vssadmin是VSS writers的強大故障排除工具,命令行中提供了許多選項。您可以使用vssadmin list writers命令來查看Windows中VSS writers的狀態。下圖顯示了特殊的VSS SqlServerWriter以及Exchange的Microsoft Exchange Writer

下面顯示了Microsoft Exchange Writer

以下是vssadmin實用程序支持的命令。

崩潰一致與應用程式一致的備份

以下是崩潰一致和應用程式一致備份之間的快速概述:

操作 崩潰一致性 應用程式一致性
文件的一致點時備份
區塊級別備份使用卷影複製
應用程式一致性
了解記憶體資訊和待處理的I/O事務
VSS寫入者使用
不需要特殊步驟來還原應用程式資料

結論

在處理像是Microsoft SQL Server或Microsoft Exchange Server這樣的活動應用程式中,崩潰一致性和應用程式一致性備份的方式存在明確的差異。崩潰一致性備份不會複製記憶體中的資料和未完成的I/O操作。應用程式感知型備份則意識到這些類型的暫時性資料,並利用Windows中的VSS服務的VSS寫入器作為組成部分來捕獲它們,正確地使應用程式進入安靜狀態,將記憶體和未完成的I/O刷新到磁碟上,使其能夠以交易一致性進行適當的備份。

像NAKIVO Backup & Replication這樣的現代 vSphere備份解決方案提供多種備份選項,可用於不同的工作負載,以幫助您保護數據並確保在災難後進行恢復。下載免費版本以查看所有高級工具和功能。

Source:
https://www.nakivo.com/blog/crash-consistent-vs-application-consistent-backup/