zfs-fuse 0.6.9 在 Linux 上的穩定性如何?

zfs-fuse 0.6.9 在 Linux 上的穩定性如何?

我正在考慮將 ZFS 用於我的自製 NAS 陣列。我在 Ubuntu Server 10.04 機器上的 raidz 中有 4 個硬碟。

我想在儲存資料時使用快照功能和重複資料刪除。我不太關心速度,因為機器是透過 N 個無線網路存取的,這可能會成為瓶頸。

那麼有人對 zfs-fuse 0.6.9 在此類(或類似)配置上有任何實際經驗嗎?

答案1

我的家庭 NAS (debian lenny) 上的 zfs-fuse 映像設定中有兩個 500GB 磁碟機。它已經運行了將近6個月了,我沒有遇到任何問題。更多細節這裡在我的部落格上。

答案2

現在有一個本機 Linux 連接埠ZFS 的。我最近才知道這一點,因此還沒有機會進行測試。不過,它正在積極開發中,這是一個好兆頭。只要您不被自己編譯核心模組和工具所嚇倒,這可能值得嘗試。

如果你能讓它工作,毫無疑問,它的性能會比 zfs-fuse 好得多。

答案3

我知道這條線索很古老,但從那時起事情已經發生了很大變化。 (例如 ZFS-FUSE 和核心選項的狀態、「開放」Solaris 的有爭議的消失等)

首先,ZFS的內核移植不會一定「毫無疑問」比 ZFS-FUSE 效能好得多。該答案似乎呼應了一個常見的誤解,即 FUSE 檔案系統的效能總是比核心中的要差。 (如果您還不知道,簡而言之:理論上,在其他條件相同的情況下,核心檔案系統效能更好。但是,還有許多其他因素對效能的影響比核心與使用者空間的影響更大。不過對於我的使用來說,還是可以的。

Ubuntu 現在透過其 PPA 儲存庫系統提供了一個「ubuntu-zfs」軟體包,這只是本機 zfs-on-linux 專案的一個很好的打包和自動模組建置。它運行在核心空間,目前支援比 zfs-fuse 更高的 zpool 版本。

我曾經在大型冗餘 20tb 伺服器上使用 OpenSolaris,現在在其上使用 Oracle Solaris 11。 Solaris 存在一些重大問題和挑戰(尤其是如果您熟悉配置和管理 Linux 而不是老式 UNIX),並且它們極大地改變了作業系統版本甚至更新之間的許多硬體管理和其他配置介面,使其成為一個經常令人非常沮喪的移動目標(即使在升級到下一個版本之前最終掌握了一個版本)。但是,有了正確的(相容的)硬體以及對更改、學習和調整的足夠耐心,就檔案系統而言,它可能是一個令人驚嘆的選擇。

還有一點建議:不要使用內建的 CIFS 支援。使用森巴舞。內建支援已損壞,可能永遠無法準備就緒。我上次檢查時發現,有大量企業安裝使用 Samba,但由於權限管理噩夢,沒有一個使用 CIFS。

我每天還在 Ubuntu 上(在個人工作站上)使用 ZFS-FUSE,並且發現它堅如磐石,這是一個非常棒的解決方案。我能想到的關於 ZFS-FUSE 的唯一問題是:

  1. 您無法停用 ZIL(寫入快取),至少不能在原始碼中設定標誌並自行編譯。順便說一句 - 與常見的誤解相反,停用 ZIL 不會導致您在崩潰時失去池子。你只會失去當時寫的任何內容。這與大多數檔案系統沒有什麼不同。對於許多關鍵任務伺服器場景來說,它可能並不理想(在這種情況下,您可能應該使用本機 Oracle Solaris),但對於大多數工作站/個人用例來說,通常是一個非常值得的權衡。對於小規模設置,ZIL 可能是一個巨大的寫入效能問題,因為預設情況下,快取分佈在池本身中 - 這可能會非常慢,尤其是奇偶校驗條帶設定 (RAIDZx) 時。在 Oracle Solaris 上,停用它很容易,我相信它是池的「同步」屬性 IIRC。 (我不知道它是否可以在本機linux核心版本上輕鬆停用。)

  2. 另外,對於 ZFS-FUSE,zpool 版本不夠高,無法支援較新版本的更好池恢復選項 - 因此,如果您決定將寫入快取卸載到一個或多個 SSD 或 RAM 驅動器,請務必小心。 (並且始終鏡像它!)如果您失去了 ZIL,幾乎可以肯定您也失去了整個池子。 (這種情況在我使用 OpenSolaris 時就發生過,災難性的。)Oracle Solaris 上最新的 zpool 版本已經緩解了這個問題。我似乎無法確定核心級 Linux 連接埠是否包含該緩解措施。

另外,您也可以安全地忽略該人似乎在垃圾郵件討論中發出的「ZFS ARC bug」警報。我的伺服器遭受重創,就像世界各地無數的生產伺服器一樣,但從未經歷過。

就我個人而言,雖然我非常不喜歡 Solaris,但 ZFS 確實令人驚嘆,而且現在我已經開始依賴它的功能,我離不開它。我甚至在 Windows 筆記本上也使用它。 (透過複雜但非常可靠的虛擬化解決方案和用尼龍搭扣固定在蓋子上的 USB 驅動器。)

編輯:為了清晰、相關性並承認 ZFS-FUSE 效能限制,進行了一些細微的編輯。

答案4

在將池移轉到 OpenSolaris 之前,我在 Ubuntu 下運行 ZFS-FUSE 近一年,沒有出現任何問題。也就是說,多 TB 池上 Dedup 的記憶體需求可能會超過家庭 Linux 伺服器的記憶體。一旦重複資料刪除表從 ARC(主記憶體快取)溢出,重複資料刪除效能就會很糟糕,除非您有用於 L2ARC 的 SSD 來保持它們隨時可用。如果記憶體中沒有重複資料刪除表,許多操作可能會變得異常緩慢(刪除檔案目錄、刪除快照等)。快照可以在沒有重複資料刪除的情況下運行,並且本身幾乎沒有任何開銷,因此除非您存儲大量冗餘數據並且有8-16GB 的RAM 和/或SSD 來解決該問題,否則我會跳過重複數據刪除。

相關內容