讀資料保護:工作負載的可恢復性06備份的內容

躺柒發表於2024-12-07

1. 誤解

1.1. RAID不需要備份

  • 1.1.1. 使用冗餘磁碟系統來儲存資料,並不意味著不需要備份這些資料

  • 1.1.2. RAID所能提供的冗餘都是在硬體這一層面設計的

  • 1.1.3. 之所以不能代替備份,其中一項重要的原因就在於:RAID保護的是卷,而不是卷裡面的檔案系統

1.2. 啟用了資料複製機制就不用再做備份了

  • 1.2.1. 複製或者重製(replication)只是把所有東西都照搬一遍,無論是正確的操作,還是錯誤的乃至惡意的操作,其操作結果都會照搬到副本上

  • 1.2.2. 複製不僅無法消除錯誤並阻止病毒,還會讓錯誤或病毒變得更加嚴重

1.3. IaaS與PaaS不需要備份

  • 1.3.1. 高可用性也無法防範誤操作、網路攻擊,或者資料中心遭到物理破壞的情況

  • 1.3.2. 要把雲端備份跟你的雲端主賬號分開存放,而且不要放在跟主資料相同的區域裡面

1.4. SaaS不需要備份

  • 1.4.1. 提供那種利用版本管理系統與回收站等機制而打造的便捷恢復(convenience restore)功能,這樣的功能無法防範嚴重故障或網路攻擊

1.5. 備份系統應該把備份資料儲存好多年,以便從中調取資訊

  • 1.5.1. 備份產品通常不用來做檔案方面的工作

1.6. 磁帶已經消亡

  • 1.6.1. 不是因為覺得磁帶不可靠,而是因為它跟我們目前做備份的節奏不搭調

  • 1.6.2. 磁帶機在寫入0與1這樣的資料時,要比磁碟更可靠,而且這種資料能夠保留在磁帶上的時間,也比磁碟更久

  • 1.6.3. 如果磁帶機每秒鐘想要寫入1GB資料,而你執行的備份程式每秒鐘卻只能給出幾MB的資料,那麼在這種情況下就根本無法用磁帶做備份

  • 1.6.4. 今天買磁帶的人比以往任何時候都要多

  • 1.6.4.1. 型的磁帶櫃賣得很好,而且這些磁帶櫃裡儲存著重要的資料

  • 1.6.4.2. 大型的雲平臺廠商都買了許多這樣的磁帶櫃

  • 1.6.5. 磁帶最好的用途是儲存長期檔案

  • 1.6.5.1. 不要把增量備份直接儲存到磁帶上

  • 1.6.5.2. 如果你有好幾TB的檔案儲存在磁碟上,而旁邊又有磁帶機,那麼把這些檔案用磁帶機寫入磁帶就會相當順暢

  • 1.6.5.3. 磁帶機能夠將資料可靠地寫入磁帶,而且這樣的磁帶能夠保留相當長的時間

  • 1.6.6. 磁帶是相當廉價的儲存介質

  • 1.6.6.1. 不僅磁帶便宜,讀寫磁帶的磁帶機本身也很便宜,磁帶櫃的耗電量與溫控費用更是比磁碟系統小得多

  • 1.6.6.2. 磁碟驅動器的耗電量與溫控費用,會逐漸超過購買磁帶機的費用以及這些磁帶機的電費及溫控費

  • 1.6.7. 儘管現在已經幾乎沒有人再用磁帶做備份與恢復了,但它依然能夠繼續用來長期儲存資料

1.7. 把備份當成檔案來用,成本真的相當高

2. 條目級備份

2.1. item-level backup

2.2. 通常稱為檔案級備份,但實際上備份的不一定全都是檔案(也有可能是物件)

2.3. 條目級備份會把許多零散的資訊分別作為條目備份下來,所謂條目,其最常見的一種形式就是檔案

2.4. 另外一種形式,也就是物件儲存系統裡面的物件

2.5. 對於完全備份來說,它會把檔案系統裡位於相關路徑下的所有檔案全都備份下來

2.6. 對於增量備份來說,則只會涵蓋該路徑下自上次製作備份以來發生變化的那些檔案

2.7. 條目級備份的優勢在於,這種備份方式特別好懂

  • 2.7.1. 只需要把備份軟體安裝到位,它就能夠檢視你的檔案與物件儲存系統,找到所有需要備份的條目,並在適當的時間將其備份下來

3. 映象級備份

3.1. image-level backup

  • 3.1.1. 也叫作驅動器級別的備份、卷(volume)級別的備份或虛擬機器級別的備份

3.2. 映象級備份則是我們目前備份虛擬環境時最常用的方式

3.3. 映象級備份是在資料塊(block)的層面備份某個物理裝置或虛擬裝置,這樣製作出來的是整個裝置的一份映象

3.4. 在製作映象級備份時,你備份的是整個檔案系統,而不只是其中的某些具體檔案

3.5. 虛擬快照技術,例如Windows系統的VSS(Volume Shadow Copy Service,卷影複製服務)與VMware虛擬機器管理器的快照功能

3.6. 在映象級別做備份與恢復,速度要比檔案級別快得多

  • 3.6.1. 備份恢復起來,速度也比檔案級備份快得多

3.7. 映象級備份會把整個驅動器或卷都給備份下來,因此對於其中的每個檔案來說,這樣製作出來的是完全備份(而不是增量備份)​

3.8. CBT(Changed-Block Tracking,資料塊修改追蹤)技術,它會記錄上一次備份是在什麼時候建立的,並把從那個時間點算起發生變化的資料塊記錄下來

3.9. 缺點,就是不便於從裡面直接恢復單個的條目(例如某個具體的檔案)​

4. 從映象級備份裡做檔案級恢復

4.1. 提前給映象內容製作索引,它們可以透過索引來了解某份檔案在映象中是由哪幾個資料塊表示的

5. 把檔案級備份與映象級備份結合起來

5.1. 大多數使用者在備份虛擬機器時做的都是映象級備份,這樣還能讓他們在這種映象的基礎上做增量備份,並從中恢復單個的條目

5.2. 執行塊級別的增量備份,因為這種增量備份的效率,要比條目級別的增量備份高得多

5.3. 只需要用這一個映象,就能把整個虛擬機器輕鬆地恢復出來

  • 5.3.1. 裸機恢復(bare-metal recovery)執行起來容易多了

6. 選擇有待備份的內容

6.1. 你的備份軟體必須先知道工作環境裡有這樣一個系統需要備份,然後我們才能討論怎樣選擇有待備份的內容

  • 6.1.1. 最好先把有待保護的伺服器與服務,註冊到你的備份與恢復軟體裡面

6.2. 備份工作要把安全地保護資料放在第一位,成本是次要的

6.3. 包含法

  • 6.3.1. 包含法(selective inclusion,也稱選擇性包含)

  • 6.3.2. 如果採用包含法,那麼管理員必須在備份系統裡一個一個地指定有待備份的檔案系統、資料庫或物件

  • 6.3.3. 包含法有一個問題,就是不能夠很好地應對配置發生變化的情況

  • 6.3.3.1. 包含法之所以遠不如排除法穩妥,原因正在於此

  • 6.3.4. 最壞的情況則是某些需要備份的重要資料未能納入備份範圍

  • 6.3.5. 包含法所儲存的資料通常比較少,因此看上去似乎比較省錢,但風險卻比排除法高得多

  • 6.3.6. 很多人都是因為漏掉了應該備份的資料而遭到解僱的

6.4. 排除法

  • 6.4.1. 排除法(selective exclusion,也稱選擇性排除)

  • 6.4.2. 排除法也可以理解成自動包含或預設包含(automatic inclusion),除非管理員明確將某個東西排除掉,否則伺服器裡的所有內容都會自動納入備份範圍

  • 6.4.3. 最壞的情況也只不過是把某些無意義的資料給涵蓋了進來(因為你忘了排除)​

  • 6.4.4. 把不需要備份的資料排除掉其實很容易

  • 6.4.5. 在劃定備份範圍的時候,預設應該採用排除法(也就是自動包含法)​。

  • 6.4.6. 沒有人會因為備份的資料太多而遭到解僱

6.5. 去重技術

  • 6.5.1. 去重技術(deduplication,重複資料刪除技術)對我們劃定備份範圍所帶來的影響

  • 6.5.2. 去重技術能夠確保與Windows或Linux作業系統有關的那些內容在備份系統裡只會儲存一份

6.6. 根據標籤或目錄來選擇

  • 6.6.1. 把貼了某個標籤的資料或位於某個目錄中的資料自動納入備份範圍

  • 6.6.2. 建立一套預設的備份策略,讓備份系統能夠為那些沒有貼任何標籤或沒有放在特定目錄中的虛擬機器自動運用該策略

相關文章