2011/03/28

DRBD, Distributed Replicated Block Device 重點介紹

介紹:
    DRBD為Linux上分散式儲存系統,除自身系統核心,另包含使用者空間管理程式及shell scripts,通常用於高可用性(High Availability)叢集,有數種做法。


原理:
    DRBD全名為「分散式區塊複製裝置」,可將本地端硬碟區塊內容複製至另一台主機硬碟,概念上如鏡像磁碟陣列(RAID1 over TCP)。若加上心跳(heartbeat)功能即可建構Linux HA叢集環境。

運作方式 - Single Primary Mode:
    僅有單一Primary主機與Stand by雙角色,主要用於高可用性(High Availability)叢集,可使用一般檔案格式(ext3、ext4、xfs),概念與RAID1相近。一次僅有一台機器運作,若Primary離線,Stand by伺服器會於一分鐘後接手Primary工作。



運作方式 - Dual Primary Mode:
    於8.0後可支援,必須搭配使用其他cluster檔案系統進行存取管理(DLM, distributed lock manager),如OCFS2、GFS。架構內有兩台Primary主機,同時啟動運作,一般常見用於負載平衡環境,預設為停用。

資料複製模式 - Protocol A:
    非同步複製協定:於Primary先行寫入磁碟,並將資料置於TCP緩衝區待傳送,依設定時間做資料傳送同步。但若Primary發生不可預期意外,資料有可能將漏失。


資料複製模式 - Protocol B:
    半同步複製協定:Primary先行將資料寫入硬碟,並同時將資料傳至Stand by伺服器緩衝,依設定時間寫入資料。若Primary發生不可預期事件,Stand by伺服器可正常啟動,但若兩部機器同時發生意外,資料將有漏失風險。
 
資料複製模式 - Protocol C:
    同步複製協定:Primary與Stand by伺服器皆寫入資料並確認後才回報完成,可降低資料漏失風險,但此方式網路頻寬需求較大。
 
Three-way Replication:
    為原有DRBD叢集上再堆疊,將原有的叢集視為隸屬於另一組DRBD叢集。可達成資料再多一複製節點。可以Protocol C做同步傳輸,或可排定夜間再做資料同步(Protocol A)。
 

0 Comments:

張貼留言