Zfs

HPC SSD 環境中 ZFS RAIDz1/2 的成本是多少?

  • November 10, 2020

範例硬體/主機:

  • 現代 64 核 CPU,128GB 記憶體
  • 8 個美光 Pro 15.36TB u.2 SSD
  • 每個設備通過專用 Oculink 連接 SSD(無背板或 PCIe 共享)
  • Ubuntu 20.04

案例:

  • 數百台主機的備份伺服器。備份是通過增量 rsync 執行的,首先是來自遠端主機的 rsync,然後是本地副本(使用 cp)以創建快照。- - - 數以百萬計的小文件(電子郵件、html 文件等)是典型的備份。
  • 在任何時候,伺服器都可以處理 50 個傳入的 rsync(cpu 輕加密算法和無壓縮)
  • 冗餘雖然是有利的,但不是必需的。最多單個驅動器故障。
  • 文件輪換所需的極端本地 i/o
  • rsync 和硬連結差異複製(‘rsnapshot’)的使用不能改變,這是已部署並投入生產的備份軟體所要求的 - 所以 BTRFS 快照是不可能的。

我提出了兩種可能的解決方案:

  1. 分片我的數據儲存,沒有冗餘。BTRRFS 中基於每個驅動器的格式,並使用內聯 LZO 壓縮進行安裝。
  • 優點:簡單輕量,無raid管理成本
  • 優點:獨立故障,在磁碟故障時只有一小部分備份失去,可以快速重新建立
  • 優勢:獲得的最大總容量
  • 缺點:容量管理的複雜性 - 沒有大容量意味著戰略性地平衡特定磁碟上的數據以充分利用它們
  • 缺點:磁碟故障確實會失去數據
  1. 一個大卷跨所有磁碟的 ZFS RAIDz1/2
  • 優點:1或2個磁碟故障冗餘
  • 優點:易於管理,所有內容都集中在一個巨大的體積中 - 空間充足。
  • 缺點:損失 1 或 2 個磁碟的容量

問題:與選項 1 相比,是否存在顯著的 ZFS RAID 管理成本會降低陣列的性能?- 在他設計的每個級別以最大限度地提高作業系統和 SSD 之間的磁碟吞吐量的配置中,以每秒 10 千兆比特為單位,ZFS RAID 管理的成本是否會導致性能顯著下降和/或 CPU 或記憶體過載?

謝謝你。

使用 ZFS。使用 LZ4 壓縮。適當地調整您的 ZFS,因為預設值對於那麼多 NVMe 驅動器來說並不理想。

使用您的實際工作負載進行測試和基準測試。我們無法告訴您它將如何執行。

RAIDZ 成本不是這個問題。

CPU 的微基準測試會自動為您的給定平台選擇最快的。

查看ZFS 模組參數

在此處輸入圖像描述

由於 BTRFS RAID5 不被認為是 100% 穩定的,所以我不建議將它用於備份機器。此外,對於這些大型 SSD,我會使用 RAID6 而不是 RAID5。

所以我建議使用帶有 XFS 的 MD RAID6,或者作為 Ubuntu 機器,使用帶有 lz4 壓縮的 ZFS RAIDZ2。

**編輯:**我根本不考慮使用單驅動器 BTRFS 文件系統作為有效的備份方法。在此配置中,任何單個驅動器故障都將導致(部分)數據失去。我強烈建議您使用帶有 LZ4 壓縮的 RAIDZ2,或者為了獲得最佳性能,使用帶有 XFS 的 MD RAID6(但會失去壓縮和校驗和)。

引用自:https://serverfault.com/questions/1041892