情境 12 兩種角色 · 季度演練

Syngle 自己也要能還原

Controller 壞掉那天,要重建的是 Syngle 的狀態:資料庫、金鑰、目錄定義和例外

256MiB · 備份 bundle 的上限

季度演練

備份的是自己的狀態

NAS 上的資料交給 DSM 原生套件,Syngle 要備份的是自己的狀態,還有開啟它的那把金鑰

  • 備份到底涵蓋什麼,不涵蓋什麼
  • 金鑰與 recovery kit 放在哪
  • 還原之後哪些東西要重做
  • 升級失敗怎麼退回去
畫面

備份、還原、升級是同一條線

備份、還原和升級其實是同一條線上的三件事

設定的資料與備份頁,說明 bundle 內容、排程與 recovery kit

Bundle 裡有什麼

store.sqlite、keys 和目錄定義,去掉 session、快取和可重建的觀測資料,上限 256 MiB

密碼與加密

AES-256-GCM 配 PBKDF2-SHA256,密碼 12–1,024 bytes

冷還原只接受空白 Controller

解密、版本檢查、integrity_check、金鑰清冊,再用一個交易切換,staging 256 MiB、15 分鐘

就地還原會先保住舊的

先停止新工作,最多 120 秒 drain,寫一份 rescue copy,再切換和逐台驗證

步驟

你會做到

01

先下載並驗證 recovery kit

排程備份要先下載並驗證才開得起來,沒驗證過就不開

02

排程每天備一份

目的地只能是套件私有區,或 installer 已註冊的共用資料夾,保留 1–30 份,預設 7

03

要啟用時輸入 RESTORE

冷還原完成後逐台驗證,啟用要確認舊 Controller 已經停了

04

升級前自動做一份

preupgrade 用同一把金鑰重新開起來驗證,失敗就回非零,讓 DSM 中止升級

05

升級只前進

沒有 down-migration,降版的唯一方法是還原升級前的 bundle

帶走什麼

能還原回來的才叫狀態,備份的是 Syngle 自己,不是 NAS 上的資料

下一步

換一個情境,看同一套系統怎麼答

十七個情境對應不同的功能組合,用的都是同一份資料、同一套護欄