哪個分佈式文件系統真正適合我的需求?
聽我說
我在這裡,這裡看到了(以不同形式)提出的問題,也許我發現的最好的問題是在這裡,但我認為這不是重複的,因為自從提出這些問題以來已經過去了很長一段時間,而我的問題已經它自己的細微差別可能會在類似情況下幫助其他人。請聽我說完。
背景
我的問題來自於有許多偉大的分佈式文件系統宣傳它們很棒,但我懷疑並非所有這些都是我需要的。
我查看了這個很棒的列表以獲取有關可用內容的建議,但不確定哪一個適合我的需求。
案例
此伺服器的目的是確保我的數據安全並可供一般使用。我將使用它來儲存我的個人備份,以及 Nextcloud、Gogs 以及我未來自託管的任何其他東西儲存和使用的數據。
我在找什麼
我正在尋找一個分佈式文件系統:
防止鑽頭腐爛
具有糾刪碼(或至少數據重複,因此驅動器故障不會中斷使用)
擴展能力
- 從 1 台伺服器到更多伺服器
- 從 2 個 HDD 到更多
可以通過保險絲連接
強大的 API 和易用性是一大優勢。
我目前的硬體
這可能並不重要,但它可能有助於提供實施技巧。
我目前有一個 Raspberry Pi、一個 2 TB 硬碟和一個 4 TB 硬碟。我計劃在不久的將來再添加一個 2 TB 硬碟,並在不久的將來添加更多帶有更多硬碟的伺服器(現在錢很緊;我是可憐的大學生)。
我目前提出的解決方案
我對此進行了很多研究,但我覺得這有點過頭了,但這是我到目前為止所得到的:
我認為 Ceph 目前是我最好的選擇,就靈活性而言,它看起來很穩定。
我的計劃是將 BTRFS 放在驅動器上以處理 bit rot,然後將 Ceph 作為單節點集群執行以供以後擴展。
關於這將如何工作的問題
我對建議的設置有一些具體問題:
- 我知道 BTRFS 可以有位腐爛保護,但這是預設的嗎?我需要什麼才能啟用它?
- 我知道驅動器大小的不一致可能是一個問題(一個 2 TB,一個 4 TB),但是在我獲得另一個 2 TB 驅動器之前它會起作用嗎?
謝謝
我真的很感謝你讀到這裡:)
在過去的幾個月裡,我想我已經發現了足夠的東西來回答這個問題。
首先,樹莓派只用了這麼久,最終我升級到了一台配置很好的真正電腦。我決定我只有兩個選項來滿足我的需要,BTRFS和Ceph。
BTRFS
這是具有多個磁碟的單個節點的最佳選擇。稍後升級到 Ceph 因為它的分佈式功能並不太難,而且讓 BTRFS 工作非常容易。
它很棒的一些原因:
- 自動保護無聲比特腐爛。如果存在校驗和錯誤,它將引發錯誤。
- Raid 1 中的自動 bitrot 修復。它將檢測錯誤,並用 raid 1 陣列中另一個磁碟的正確數據覆蓋任何錯誤數據。
- 現場處理 BTRFS 非常容易。命令行實用程序很棒。
- 可以處理不同大小的磁碟,但有時會導致未使用的空間。
頭孢
- 可以分佈在節點之間。
- 它的 BlueStore 還具有 bitrot 保護。
- 與其他人相比,可以佔用大量記憶體和處理能力。可能是因為強大的功能集。
我決定做什麼
由於我仍然只有一個節點,因此我有一個 BTRFS raid 1 陣列,其中包含一個 2 TB SSD 和兩個 1 TB SSD。這很好用,以後添加 2 TB SSD 很容易。
一旦我有更多伺服器,我計劃切換到 Ceph,這樣做更有意義。那時移動數據應該不會太難。唯一的問題是有足夠的可用儲存空間將其從一個地方移動到另一個地方。