簡介: 這是介紹和原理篇。
一、快照
1.1 照的概念
存儲網絡行業協會(SNIA)對快照的定義是:對指定數據集合的一個完全可用拷貝,該拷貝包含源數據在拷貝時間點的靜態影像?! ?快照可以是數據再現的一個副本或者復制。對于文件系統來說,文件系統快照是文件系統的一個即時拷貝,它包含了文件系統在快照生成時刻所有的信息,本身也是一個完整可用的副本。
創建一個快照不同的設備需要不同的命令,但對于系統來說,基本都包括如下幾個步驟:
1、首先發起創建指令
2、在發起時間點,指令通知操作系統暫停應用程序和文件系統的操作
3、刷新文件系統緩存,結束所有的讀寫事務
4、創建快照點
5、創建完成之后,釋放文件系統和應用程序,系統恢復正常運行。
1.2 快照在不同層級的實現
在IT設備的不同層級都會有相應的產品去實現快照,而且不同的存儲產品也經常會使用多種技術實現快照。

廣義的快照技術通常可有7個不同類型的實現主體:
1、主機文件系統(包括服務器、臺式機、筆記本電腦) 2、邏輯卷管理器(LVM) 3、網絡附加存儲系統(NAS) 4、磁盤陣列 5、存儲虛擬化設備 6、主機虛擬化管理程序 7、數據庫。
基于文件系統和LVM的快照
1.2.1 基于文件系統的快照
很多文件系統都支持快照功能,免費是文件系統快照的優勢之一,因為它集成在文件系統內部;另一個優點是非常好用,最新版文件系統的快照功能通常使用起來很簡單。但存在的劣勢是每個文件系統都必須獨立進行管理,當系統數量激增時,管理工作會變得非常繁重
1.2.2 基于LVM邏輯卷管理器快照
我們可以創建跨多個文件系統的LVM快照。像賽門鐵克的Veritas Volume Manager可以支持大多數常見的操作系統和文件系統。LVM通常還包括存儲多路徑和存儲虛擬化等功能。
基于NAS和磁盤陣列的快照
1.2.3 基于NAS的快照
NAS本質上就是一個經過優化的、或是專門定制的文件系統,運行在特定的設備上,或集成在存儲設備里。
通過網絡連接到NAS的計算機系統都可以使用這種標準的通用快照,包括物理服務器、虛擬機、臺式機和筆記本電腦。它也非常容易操作和管理
1.2.4 基于磁盤陣列的快照
基于磁盤陣列的快照與基于NAS的快照有非常相似的優點,即所有與磁盤陣列相連的計算機系統都可以使用這種標準的通用快照功能。
基于存儲虛擬化的快照技術
1.2.5 基于存儲設備的快照
這里所說的存儲虛擬化設備主要用于SAN光纖網絡環境,不同于基于文件(NFS)應用的網絡設備,像F5 Network公司的Acopia ARX產品就是排除在這個范疇之外的。主要的存儲虛擬化軟硬件存儲設備(或融合了虛擬化功能的存儲系統)都支持快照能力。
1.2.6 基于主機虛擬化軟件的快照
隨著服務器虛擬化應用的普及,基于主機虛擬化管理軟件(Hypervisor)的快照技術也逐漸流行起來。像Citrix公司的 XenServer、微軟的Hyper – V、SUN的xVM Ops Center、以及VMware的ESX和vSphere4等主機虛擬化產品都支持快照功能。
1.2.7 基于數據庫的快照
在數據庫中,快照動作被稱為“SnapShot Isolation(快照隔離)”,這點在SQL Server中應用比較多(其6個事物隔離級別中的一個就是snapshot isolation)
1.3 快照的分類
快照分類的方式有很多種,比如按照是全量還是增量來區分為全量快照、增量快照。比較也可以分為物理快照和邏輯快照。
這里按照常用的快照技術分類:
- Clone or split mirror 克隆或鏡像分離
- Copy-on-write with background copy 后臺拷貝的復制寫
- 寫時拷貝 (Copy-On-Write),COW
- 寫時重定向 (Redirect-On-Write),ROW
(因為內容較多,進行了文章刪減,閱讀全文可以通過點擊下方“了解更多”進行瀏覽)
原文出處:阿里云開發者社區