RAID 兩隻碟都正常都會失檔:TrueNAS snapshot 同異地備份設定指南
3C 產品

RAID 兩隻碟都正常都會失檔:TrueNAS snapshot 同異地備份設定指南

圖片:via XDA Developers — https://www.xda-developers.com/zfs-snapshots-truenas-setup-offsite-backup/
TechLab 編輯部(譯)·

由定時版本紀錄到遠端副本,逐層補好 NAS 嘅資料保護

RAID 保住運作,救唔返你撳錯嗰一下

XDA 作者用 RAIDZ2 跑 NAS,一直以為有磁碟冗餘就夠穩陣,直至佢誤覆一份記低 home lab 設定嘅文字檔。當時硬碟冇壞、pool 亦冇報錯,舊內容照樣消失,因為 RAIDZ2 會忠實地將新資料寫落成個 pool。磁碟冗餘主要處理硬碟故障,唔會保存檔案歷史;誤刪、誤覆、惡意加密同程式寫壞資料,全部可以喺一個健康嘅 array 入面正常發生。

XDA 標題估好多 NAS 嘅 snapshot 仲未開,但原文冇統計數據支持,實際只係作者個人經歷。真正值得拎出嚟講嘅位,係 TrueNAS 有齊 snapshot 同 replication 工具,但裝好系統、砌好 RAIDZ,唔代表佢已經按你想要嘅頻率保存舊版本。冇建立定時任務,就冇版本紀錄可以還原,呢個設定值得逐個 dataset 檢查。

Snapshot 做到咩,又做唔到咩

ZFS 用 copy-on-write,建立 snapshot 時會記低 dataset 當刻引用緊嘅資料區塊,唔使即場複製全份內容,所以一般可以好快完成。之後檔案有改動,ZFS 先保留 snapshot 仍然引用緊嘅舊區塊,佔用空間亦會跟改動量增加。你可以由 snapshot 搵返舊檔案,或者按情況回復 dataset;不過 rollback 會影響 snapshot 之後嘅資料,落手前要先確認範圍。

呢層保護好適合救誤刪、誤覆同程式改壞檔案,亦可以提供惡意加密前嘅版本。不過 snapshot 仍然留喺原本個 pool:火牛故障拖垮硬件、controller 出事、NAS 俾人偷、火災入水,live data 同 snapshot 都可能一齊冇。若入侵者攞到足夠管理權限,佢亦可能刪 snapshot。同一部 NAS 入面有 snapshot,整體仍然有單一故障點。

第一步:設定 Periodic Snapshot Task

新版 TrueNAS SCALE 可去 Data Protection > Periodic Snapshot Tasks 新增任務;TrueNAS CORE 13 就喺 Tasks > Periodic Snapshot Tasks > Add。先揀要保護嘅 dataset 或 zvol,再決定使唔使 Recursive 包埋下面嘅 child datasets,跟住設定 Schedule、Snapshot Lifetime 同 Enabled。介面名稱會隨版本有少少差異,設定前應喺官方文件右上角揀返自己裝緊嗰個版本,唔好照搬另一版畫面。

排程冇一個適合所有人嘅答案。普通文件可以由「每小時留一至兩日、每日留數星期、每星期留數月」開始,再按檔案改動速度同容量調整;呢個亦只係起步例子。剪片 project、VM image 或 database 改動密,snapshot 增長可以相當快。設定後要睇任務狀態同 pool 用量,亦要確認揀中正確 dataset;只建立任務但漏咗相片或工作檔所在嘅 child dataset,一樣救唔返。

第二步:複製去另一個地方

TrueNAS SCALE 可去 Data Protection > Replication > Add,將 Source 設做本機 dataset,Destination 揀另一部系統,再建立 SSH connection、選擇目的地 dataset、排程同兩邊嘅 snapshot 保留期。官方文件指新版 SCALE replication wizard 可以為未有 snapshot 嘅來源自動建立 periodic task;舊版 SCALE 同 CORE 流程、root 或 admin 權限設定都有分別,所以升級過系統後最好重新核對任務同 SSH 權限,唔好只見到條 task 仲喺度就當佢正常運作。

另一部 NAS 若只係放喺同一張枱、插住同一個拖板,最多叫第二份副本,遇上失竊、電力事故或火災仍然可能一鑊熟。較完整嘅做法係放去另一個實體地點,限制 replication 帳戶權限,同時唔好畀來源端任意清走所有歷史版本。網速有限可以先喺同一網絡完成首次大份傳輸,再搬走目的機;之後通常只傳 snapshot 之間嘅增量,但實際流量仍視乎資料改動量。

最後一定要試還原

設定完成後先手動跑一次 snapshot 同 replication,跟住建立測試檔、改內容、刪走,再由本機 snapshot 搵返舊版本;之後亦要喺遠端目的地確認 snapshot 真係存在,再試下將一小批檔案還原去另一個資料夾。定期查看 task log、最近成功時間同目的機容量,否則一條長期失敗但冇人理嘅排程,只會提供另一種假安全感。相片、工作檔同家庭影片真係重要嘅話,至少要同時有磁碟冗餘、本機版本紀錄,同一份隔開硬件及地點嘅可還原副本。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook