專家解析|全面了解Azure磁盤快照功能

來源: Microsoft云科技
作者:Microsoft云科技
時間:2021-07-22
17193
游覽高山河川,隨手按下快門,壯麗美景盡收囊中,隨時都可以拿出來回味。而使用Azure的過程中,需要時按下“快門”,你的磁盤數(shù)據(jù)也能得到充分保護,并且可以在必要時用這樣的快照將磁盤數(shù)據(jù)恢復(fù)為之前的狀態(tài)。Azure磁盤快照就是這樣一種方便的技術(shù),甚至成為了Azure備份等數(shù)據(jù)保護服務(wù)的基礎(chǔ)。不同于傳統(tǒng)本地存儲快照基于指針的方式,Azure磁盤快照更像是對磁盤有效數(shù)據(jù)創(chuàng)建的克隆,使用方式也有較大差異。

游覽高山河川,隨手按下快門,壯麗美景盡收囊中,隨時都可以拿出來回味。

而使用Azure的過程中,需要時按下“快門”,你的磁盤數(shù)據(jù)也能得到充分保護,并且可以在必要時用這樣的快照將磁盤數(shù)據(jù)恢復(fù)為之前的狀態(tài)。

Azure磁盤快照就是這樣一種方便的技術(shù),甚至成為了Azure備份等數(shù)據(jù)保護服務(wù)的基礎(chǔ)。不同于傳統(tǒng)本地存儲快照基于指針的方式,Azure磁盤快照更像是對磁盤有效數(shù)據(jù)創(chuàng)建的克隆,使用方式也有較大差異。

快照的操作很簡單,在管理門戶界面中選擇磁盤即可直接創(chuàng)建快照,但仔細研究一下,還是有很多有意思的地方。

Azure快照基礎(chǔ)概念

Azure磁盤快照分為兩類:全量和增量,兩者的區(qū)別和計價方式(以美東的Premium Disk為例)如下:

從描述中可以看出:


  • 快照分為全量和增量;

  • 快照只支持本地副本保護:LRSZRS(如果區(qū)域支持);

  • Premium Disk的全量快照可以放在Premium存儲或標(biāo)準(zhǔn)儲存中,增量快照只能放標(biāo)準(zhǔn)存儲中(標(biāo)準(zhǔn)SSD和標(biāo)準(zhǔn)磁盤的全量和增量快照都只能放在標(biāo)準(zhǔn)存儲);

  • 快照的容量由磁盤的有效數(shù)據(jù)量決定,而非磁盤大小;

  • 全量快照的基準(zhǔn)點是當(dāng)前磁盤;增量快照的基準(zhǔn)點是上一次快照。無論上次快照是全量還是增量都可以。

快照實驗

接下來我們將搭建一臺虛擬機,借此驗證快照功能。

實驗設(shè)計

該虛擬機運行Windows 10,附加了一塊1TB的數(shù)據(jù)盤用作快照測試,整體流程如下:

大致的實驗流程如下:


  1. 首先在磁盤中放入一個10GB的文件,做全量快照Snapshot1。Snapshot1基于磁盤當(dāng)前有效數(shù)據(jù)量,所以容量為10GB;

  2. 然后做增量快照Snapshot2,由于增量快照基于Snapshot1,而磁盤沒有任何變化,所以Snapshot2容量為0GB;

  3. 向磁盤增加一個20GB的文件,磁盤有效數(shù)據(jù)量變?yōu)?/span>30GB,做全量快照Snapshot3,容量為30GB

  4. 接著做增量快照Snapshot4,同理容量為0GB;

  5. 第三次向磁盤中放入一個40GB文件,磁盤有效數(shù)據(jù)量增加為70GB,再次做增量快照Snapshot5,這次增量快照的基準(zhǔn)點是最近一次快照Snapshot4,所以Snapshot5的容量應(yīng)該為70-30=40GB。

1. 創(chuàng)建快照

如下圖所示,在創(chuàng)建好的虛擬機的數(shù)據(jù)盤(F盤)里,使用fsutil命令創(chuàng)建一個10GB的文件:

然后做第一次全量快照Snapshot1

可以看到,因為這塊磁盤是Premium SSD,所以全量快照時可以選擇不同的存儲類型,這里統(tǒng)一選擇Standard HDD,然后一直“Next”創(chuàng)建快照:

再對該磁盤創(chuàng)建增量快照Snapshot2

由于增量快照只支持標(biāo)準(zhǔn)存儲(Standard HDD),所以沒有存儲類型的選擇。創(chuàng)建完成結(jié)果如下:

隨后按此步驟增加文件并創(chuàng)建剩余的快照,列表如下:

2. 快照驗證

不同于傳統(tǒng)存儲快照可以直接回退,Azure的快照必須生成磁盤才能使用。因此我們首先用Snapshot1生成Disk1

隨后用同樣步驟,使用后邊幾個快照創(chuàng)建磁盤Disk2—Disk5

由于這些磁盤的來源還沒附加到虛擬機,因此沒有Owner。

再次回到虛擬機的OS,我們在數(shù)據(jù)盤分別創(chuàng)建了3個文件:file01、file02file03。按照創(chuàng)建快照的時間點,每個快照包含的文件如下:

隨后將從快照生成的磁盤附加到虛擬機:

并在OS中附加這些磁盤(G—K盤):

檢查磁盤內(nèi)容發(fā)現(xiàn)符合預(yù)期:

進一步測試

上文提過,增量快照是基于前一次快照的變化量。那么如果前一次快照被刪除,會出現(xiàn)什么情況?還是通過測試做驗證。

首先刪除Snapshot1(第一次全量快照):

發(fā)現(xiàn)快照列表里已經(jīng)沒有可Snapshot1

再次用Snapshot2生成磁盤Disk6,并附加到虛擬機:

將其附加到虛擬機(L盤),然后檢查里邊的內(nèi)容:

結(jié)果發(fā)現(xiàn)file01仍然存在,并且檢查哈希可知,其哈希值與之前的文件一致:

可以看出:即使刪除作為基準(zhǔn)點的快照,增量快照的安全也不受影響。

關(guān)于容量那些事

上文曾經(jīng)提到,快照容量是由磁盤的有效數(shù)據(jù)量決定。對于全量快照,有效數(shù)據(jù)量比較容易確認;但對于增量快照,通常磁盤的使用不是簡單的增加文件,而是一系列的增刪改等操作,但Azure的快照并不提供容量查詢的功能,屬性里看到的容量是對應(yīng)磁盤的容量。

不過我們可以通過一個變通方式來確認快照容量,即根據(jù)快照的成本來反推容量。

為此請重新創(chuàng)建一個虛擬機,附加兩塊1TB的數(shù)據(jù)盤:

進入OS,將兩塊數(shù)據(jù)盤分別創(chuàng)建分區(qū)并格式化(F盤和G盤):

隨后分別在F盤和G盤各創(chuàng)建一個300GB的文件,F盤用Windows自帶的fsutil工具創(chuàng)建,G盤用第三方的rdfc工具創(chuàng)建:

可以看到:fsutil創(chuàng)建速度很快,而rdfc速度非常慢。原因是fsutil會直接用“0”填充所生成的稀疏文件,而rdfc會用隨機數(shù)填充,真正生成了一個文件。完成后兩個磁盤的占用空間基本一致:

對這兩個磁盤分別做全量快照SnapshotFSnapshotG

放置兩天后,查看快照的使用成本。進入快照Overview,有一個View cost按鈕:

點擊進入,并選擇Daily costs

借此可以看到,G盤快照每天的成本大約$0.19

而用同樣方法查看F盤的快照成本如下,基本為0

對比可知:

  • G盤和F盤雖然空間占用基本一樣,但快照成本相差較大。F盤的文件基本全部為“0”填充,創(chuàng)建快照時并沒有實際占用空間,所以快照沒有實際占用空間,成本為0

  • G盤的文件實際大小為300GB,理論上的每天成本為$0.05/30*300=$0.50,但實際為$0.19,說明快照存儲時使用了類似壓縮去重的技術(shù),以節(jié)約空間。

小結(jié)

快照(Snapshot)是一個很平常的概念,在云端和本地有不同的機制。

雖然快照的操作很簡單,但如果能熟練掌握,使用場景非常廣泛,例如業(yè)務(wù)升級、數(shù)據(jù)更新等,可以利用快照做即時保護;另外在環(huán)境復(fù)制、遠程遷移虛擬機等情況下,也可以通過快照實現(xiàn)。

希望本文對大家有所幫助。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Microsoft云科技,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多