OCFS2 新增節點

OCFS2 新增節點

我有在不同機器上運行 nginx 和 php fpm 的虛擬機,現在我使用一種非常愚蠢的手動同步目錄的方法,因為叢集不是那麼大。不過,我有另一台伺服器,我想將其用作共享儲存設備。

到目前為止,我了解到我可以透過 iscsi 和 ocfs2 檔案系統提供儲存。讓我困擾的是,初始設定需要提前指定每個節點,然後新增一個節點,我需要關閉 o2cb 來​​套用變更。

目標是透過 iscsi 向 nginx 和 php-fpm 節點提供共享儲存(因此我不必進行複製),但是節點數量可能會根據叢集的負載而增長。

想法#1:也許我可以透過主機向我的虛擬機提供存儲,所以只有主機直接處理 ocfs2 ?這樣節點就已知了。

答案1

OCFS2 是一個叢集檔案系統,它假設用於副本的每個區塊裝置都是相同的。它是為與 nginx 等非常不同的用例而設計的,其中資料的鎖定和排序在參與節點之間具有極高的內聚性。

這需要大量的開銷,但對於運行多個對相同資料集進行修改的工作程序來說非常有益。這是我們在儲存中盡量避免的模式,儘管有時會很有用。現在不是那個時候。

此實作將受益於中央 NFS 或 SMB 共用,而不是 iSCSI 支援的叢集 FS。這樣,每個 Nginx 工作執行緒都可以存取相同的目錄。最好不要嘗試同時寫入同一個文件,但如果您確實需要這樣做,您可以確保您使用的是 NFS >v4.1 或 SMB >v3.x。兩者都比以前的版本更好地處理鎖定。

答案2

您可以簡單地將第三台伺服器設定為 NFS 伺服器,這比在該用例中使用 OCFS2 更有意義。 OCFS2 是快速 SAN 儲存或即時複製儲存(例如 DRBD)之上的更好選擇。

相關內容