·極具空間效益的Snapshot™ 副本
·不需要使用2 倍磁盤容量即可克隆存儲卷的 FlexClone® 技術
·減少需預先分配的存儲數量的簡化配置選項
·消除所有 NetApp 存儲卷內重復的數據塊副本的 A–SIS 重復數據刪除技術
本文探討了一種相對較新的 NetApp 技術——空間收回,它可以幫助您節省并重新使用 Windows® 環境中您已分配給 LUNs 的磁盤空間。NetApp 是提供這種功能的供應商。
了解空間收回技術
要了解空間收回技術,您必須記住您在何時將 LUN 分配給主機以及主機何時在 LUN 上創建其文件系統和撰寫簿記。這樣,主機就可以通過不同于存儲系統的方法了解當前在 LUN 內使用了多少空間。(這完全適用于所有的 SAN 存儲供應商,而不僅僅是 NetApp。)
圖 1)在收回空間上,主機和存儲的空間使用觀點如何出現分歧
但是假如我們現在按照步驟 3 的說明刪除前兩個文件。記住,對于大多數的文件系統(包括 NTFS),刪除文件都會引起文件系統重新分配數據塊并將其寫入可用數據塊列表中。不會有任何消息告知存儲系統所發生的情況。LUN 內存儲的數據對于存儲系統來說是不透明的。因此,主機和存儲系統的觀點突然發生分歧。主機報告文件系統僅用了 25% 的空間,而存儲系統認為占用了 75% 的 LUN。
主機沒有任何義務重新使用它剛釋放的數據塊,因此如果之后另一個大型文件被寫入到 LUN,這個文件就可能占用之前未使用的空間,如步驟 4 所述。此時存儲系統就認為 LUN 已滿,而主機顯示只利用了 50%。
在將固定大小的 LUN 專門分配給某個應用程序的情況下,這些差異并不會真正造成問題。但是它會影響以下兩處:
簡化配置。
如果您使用簡化配置,在存儲系統上可能有很大的差別,其一是認為完全占了 LUN 的 25%,另一種認為完全占了 LUN 的 75%。
?
假如您的 LUN 大小為 2TB。在這個假設中,這個大小就相當于您可以在其它地方使用的全部 TB。 ?
在糟糕的情況下,如果您在存儲系統上將簡化配置卷配置為“自動增加”,即使 LUN 的主機視圖顯示還有大量可用空間,存儲系統都會顯示卷已滿。
?
Snapshot 副本。猜猜會發生什么?如果存儲系統不知道分配給已刪除文件的數據塊實際上未在使用,則會將這些數據塊保存在 Snapshot 副本內。隨著時間的推移,您可能需要越來越多的 Snapshot 副本存儲空間(一個更大的 snapreserve,叫做 NetApp)。
收回LUN中未使用的空間
此時,您可以看到收回存儲空間的一些優點。當空間收回開始時,主機上的代理會確定 LUN 上的哪些數據塊沒有被 NTFS 使用。然后主機代理將此信息傳達到存儲系統,WAFL® 將把這些數據塊標記為可用。存儲系統釋放這些數據塊后,在生成Snapshot 副本時其將不會繼續保留。如果啟用了簡化配置,則空間又可以被其它的 LUN 重新使用。
如果沒有空間收回,幾乎不可能長時間簡化配置 LUN。很顯然,這取決于特殊應用程序使用存儲空間的方式,但通常存儲系統可能會不斷分配空間一直到 LUN 達到值,這時就好像您在正常配置 LUN 一樣。圖 2 說明了空間收回如何恢復空間的情況。
圖 2)空間收回對 LUN 空間使用的影響
空間收回入門
NetApp 空間收回技術已經集成到 NetApp SnapDrive® for Windows 5.0 并且沒有增加額外成本。SnapDrive 使用基于向導的方案或通過可與管理腳本和計劃程序共同使用的命令行接口 (SDCLI) 使 Windows 服務器管理員更易于管理 NetApp SAN 存儲。
使用 SnapDrive GUI 或 SDCLI,您可以定期在 LUN 上啟動空間收回過程。GUI 工具將首先確定有多少空間可以收回并詢問您是否要繼續。您可以限制該過程使用的時間以確保其不會在高峰期運行。
以下是您運行空間收回須注意的事項:
在創建 Snapshot 副本之前運行空間收回。否則,用于釋放的數據塊都將會被鎖在 Snapshot 內并且無法釋放出來。
?
由于空間收回初會占用主機上的周期,因此應在低活動期運行。
?
過程在運行時,傳輸到 LUN 的數據可以繼續正常進行。但是,在空間收回過程中不可以執行以下操作:
?
·創建或恢復 Snapshot 副本將停止空間收回。
·不可以刪除、斷開或擴展 LUN。
·不可以更改裝載點。
·我們不建議運行 Windows defragmentation。
更多地了解您的存儲
借助空間收回技術,NetApp 為您提供了可進一步提高存儲效率的新工具。空間收回技術可以長期高效地簡化基于數據塊的 LUN 的配置,而不會使 LUN 空間分配慢慢達到 。它還可以提高 LUN 上 Snapshot 副本的效率,從而減少您需要為該重要功能而保留的空間量。