使根安裝冗餘並最大化正常執行時間的最鐵定方法?RAID、ZFS 還是其他?
我想設置我的台式電腦(實際上是我在其中進行實際工作的 KVM 客人的伺服器)以進行冗餘根安裝。如果一個驅動器當機,我想快速恢復工作,而不需要從備份中完全恢復,也不需要重新安裝系統並重置我的所有設置和首選項。
我認為做到這一點的方法是 RAID1,但我越深入研究它,我就越意識到 RAID1 不是一個“設置它並忘記它”的解決方案。哦,我希望它是 UEFI 引導。
上次我嘗試安裝軟體 RAID1(我使用 Ubuntu Server 安裝程序設置)時,有些東西損壞了,我最終看到了一個 GRUB 救援螢幕,我終生無法弄清楚如何讓它從鏡像驅動。據我所知,由於驅動器之間的損壞複製,兩者上的引導扇區都已損壞。顯然,這違背了為減少停機時間而進行 RAID1 引導的目的。我在想也許我應該把 EFI 分區放在 USB 驅動器上並保持備份以便快速輕鬆地更換(同時在 RAID1 中有根分區),但我擔心我現在可能總是知道 EFI 分區有已更改,因此不知道何時備份它。
我也在考慮做 ZFS-on-root,因為認為 bitrot 保護和快照可能在防止上述情況方面更有用。但似乎不建議在 Ubuntu 上使用 root 上的 ZFS,而且由於某個 Linux 核心程序員表示對 ZFS 缺乏容忍度,現在 Linux 上的 ZFS 的狀態總體上似乎存在問題。我想知道這是否是一個好方法,但我對整個 MAAS 的事情一無所知,也不知道它是否與我的案例相關。
我想的最後一件事是只進行正常的單驅動器安裝,然後每週左右將其添加到備用驅動器,這樣如果發生災難,我至少可以從一周或更短的時間內恢復我的設置和安裝。但是每週添加一個SSD不會真的很難嗎?
我找到了無數關於 RAID 和 ZFS 的教程,但到目前為止,還沒有找到任何東西可以清楚地解釋我的選擇在上述目標方面的利弊。建議或解釋連結將不勝感激!
取決於需求,但您有幾個選擇。我個人的選擇是在根卷上使用 lvm 鏡像,以及任何其他對我的理智至關重要的東西(我的筆記型電腦和工作站上的 /home)。
至於備份,您可以將您的東西打包或同步到遠端主機,或者如果它更簡單,甚至使用 git(在 /etc 上工作奇蹟)。
我以前只是使用 mdadm 來做鏡像和條帶化,然後放棄並只使用 lvm,因為遷移東西(交換驅動器、添加驅動器、移動到新主機)比 mdadm 容易得多。