兩個系統的配置是一樣的,只簡單的記錄下其中一個的配置過程。
1. 首先創建硬件設備drbd
mknod /dev/drbd0 b 147 0
2. 配置DRBD
DRBD運行時,會讀取一個配置文件/etc/drbd.conf.這個文件裏描述了DRBD設備與硬盤分區的映射關係,數據一旦寫入磁盤併發送到網絡中就認爲完成了寫入操作。
2.1 /etc/drbd.conf的內容一般爲:
include "drbd.d/global_common.conf";
include "drbd.d/*.res";
2.2 然後配置global_common.conf文件中是對全局的設置:
global {
usage-count no;
# minor-count dialog-refresh disable-ip-verification
}
net {
protocol C;
}
drbd.conf的配置參數說明
Protocol
Protocol A @數據一旦寫入磁盤併發送到網絡中就認爲完成了寫入操作
Protocol B @收到接收確認就認爲完成了寫入操作。
Protocol C @收到寫入確認就認爲完成了寫入操作。
global
global { usage-count yes; } @是否參加DRBD使用者統計,默認是yes
2.3 在drbd.d/下創建r0.res:
resource r0 {
on master{
device /dev/drbd0;
disk /dev/sdb1;
address 192.168.56.1:7789;
meta-disk internal;
}
on slave{
device /dev/drbd0;
disk /dev/sdb1;
address 192.168.56.2:7789;
meta-disk internal;
}
}
master和slave分別替換爲主機的name, 通過uname -n 得到主機名,我使用的機器分別是ubuntu-bing和VirtualBox-bing。
雙機兩個節點的配置文件是一模一樣的。
3. 運行DRBD
Create device metadata. This step must be completed only on initial device creation.
root@master# drbdadm create-md r0
root@slave# drbdadm create-md r0
root@master# drbdadm up r0
root@slave# drbdadm up r0
在任意一臺機器上運行:
root# cat /proc/drbd version: 8.4.1 (api:1/proto:86-100) GIT-hash: 91b4c048c1a0e06777b5f65d312b38d47abaea80 build by buildsystem@linbit, 2011-12-20 12:58:48 0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r----- ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:524236
在master機器上運行:
drbdadm primary --force r0
開始同步兩臺機器的數據,slave的數據不能被訪問,即使是read也不允許
掛載到master上讀寫設備
mkfs.ext3 /dev/drbd0
mount /dev/drbd0 /mnt/drbd
4. DRBD切換測試
首先,在master上先將設備卸載,同時將master降爲slave;然後在slave上執行primary:
root@master# umount /mnt/drbd
root@master# drbdadm secondary r0
root@slave# drbdadm primary r0
root@slave# cat /proc/drbd
參考:
http://johnsz.blog.51cto.com/525379/896371
http://www.drbd.org/users-guide/ch-configure.html