Ceph

小型 HPC 集群的 Ceph 架構

  • November 13, 2018

我想建構用於 HPC 的 Ceph 儲存集群。(基於 CentOS 7)現在我有企業 SAS RAID 機箱,有 3 個架子乘 12 個 4TB 磁碟(總共 36 個)。現在它被配置為預設的 RAID6 裝備。而且它的性能很差。我也無法擴展系統。例如,無法切換到 6TB 磁碟。所以我想做什麼。

  1. 從 RAID6 切換到 JBOD。
  2. 將每 12 個磁碟映射到 3 個不同的控制器埠。
  3. 通過 SAS HBA 卡將 3 台伺服器連接到機箱。
  4. 設置一個 ceph 池。類型:CephFS。512 pg_num。擦除編碼。故障域=主機。藍色商店。
  5. 使用 IPoIB 在計算節點上掛載 CephFS 池。

主要問題在第四步左右。

  1. 如何選擇糾刪碼 k+m 個數字?3+3 4+2 8+3 8+4 10+4?實際上我無法完全理解它將如何處理不同的故障。正如我所理解的,我的系統需要處理 1 台主機停機 + 1-2 個 OSD 失敗。3主機配置可以嗎?如果不是,如果主機故障後修復過程中 OSD 失敗會發生什麼?如果 1 台主機停機進行維護(修復未啟動)時 OSD 失敗會發生什麼?
  2. 以後是否可以像在文件儲存中一樣為 Bluestore 添加 WAL/DB SSD?
  3. HPC MPI 呼叫是否會受到相同 IB 介面和交換機上的 IPoIB 流量的影響?

和整體問題。它會起作用嗎,還是我錯過了一些全球性的東西?

表現

擦除編碼是 CPU 密集型的。如果需要性能,請使用 3 份。

更多磁碟,更好的性能。JBOD 是一個不錯的選擇。

強烈推薦企業級 SSD。您可以稍後重新配置、添加、刪除 OSD。

可用性和數據保護

您擁有的節點越多,儲存就越能防止數據失去。

對於糾刪碼和 3 個主機,最小值為k=3 m=2。當主機發生故障時,您將失去 1 個數據部分,並且需要一個奇偶校驗部分來恢復。因此,您至少需要兩個奇偶校驗部分,以防一個在故障主機上。

如果您有比k+m更多的節點,那將是最好的。當 1 台主機發生故障時,您希望在剩餘主機上擁有所有擦除部分。

對於 3 個副本的保護,建議最少使用 4 個主機。當一個失敗時,您仍然有 3 個副本的空間。

對於生產,您將需要更多伺服器。

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