Linux
跨伺服器中多個 SSD 的負載平衡
我想在我的伺服器中有一個跨越多個 SSD 或 HDD 的捲。當我將文件寫入此卷時,該文件將整體寫入隨機或循環方式選擇的驅動器之一。如果一個驅動器塊出現故障 - 我會失去它保存的一個文件。如果驅動器完全發生故障 - 我將失去寫入它的所有文件,但該卷仍然可用並且包含來自其他驅動器的文件。顯然,RAID 不適合這裡的要求。不過,這項任務似乎很基本——有人能指出正確的 Linux 方向嗎?
因此,您想在物理上不同的文件系統之間自動分配數據而不為數據提供冗餘?
Linux 沒有為此的內置方法。您可以使用 MD 或 ZFS 來設置 RAID,但不存在在不同文件系統之間自動分發和跟踪文件。這將是一個應用程序級別(即使用者空間)功能,您將需要尋找執行此操作的應用程序或編寫您自己的應用程序。
例如:Apache Cassandra 支持分配給它的多個數據目錄/位置。通常是定義不同的文件系統。Cassandra 跟踪哪些數據在哪裡,並嘗試均勻分佈數據,本地伺服器上的這些位置之間沒有冗餘。Cassandra 通過網路進行複制。
您也許可以使用 GlusterFS 來實現此效果。在具有多個磚(每個磚是不同的文件系統)的單個伺服器上創建一個分佈式捲,然後在本地安裝該卷。我從來沒有試過這個,所以你的里程可能會有所不同。