ubuntu drbd双机互备
DRBD 是由内核模块和相关脚本而构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。您可以把它看作是一种网络RAID.
Drbd 负责接收数据,把数据写到本地磁盘,然后发送给另一个主机。另一个主机再将数据存到自己的磁盘中。其他所需的组件有集群成员服务,如TurboHA 或 心跳连接,以及一些能在块设备上运行的应用程序
drbd1:192.168.6.106
drbd2:192.168.6.107
OS:ubuntu server 8.04.1
软件:drbd-8.2.6.tar.gz
分别在两台机器安装,我的机器分区是用LVM来管理的
所以,我给两台机器都分了一个G,在/dev/www/www~
1。安装drbd所需要的,因为DRBD编译在内核里的,所以也要安装linux-headers
#uname -r 看下内核版本
2.6.24-19-serve 我的内核版本
#apt-get install flex linux-headers-2.6.24-19-server
2.编译安装drbd
#tar zxvf drbd-8.2.6.tar.gz
#cd drbd-8.2.6
#make clean 清除以前历史记录
#make KDIR=/usr/scr/linux-headers-2.6.24-19-server 编译+内核路径
#make install 安装
#groupadd haclient 建立组不然会提示警告
#chgrp haclient /sbin/drbdsetup
#chmod o-x /sbin/drbdsetup
#chmod u+s /sbin/drbdsetup
3.修改配置文件
#mv /etc/drbd.conf /etc/drbd.conf.bak 备份原配置文件
#vim /etc/drbd.conf
贴入
common {
# 设置主备节点同步时的网络速率最大值,单位是字节.
syncer { rate 10M; }
}
resource r0 {
# 使用协议C.表示收到远程主机的写入确认后,则认为写入完成.
protocol C;
disk { on-io-error detach; }
# 每个主机的说明以"on"开头,后面是主机名.在后面的{}中为这个主机的配置.
on drbd1 {
device /dev/drbd0;
disk /dev/www/www; (如果是新家的硬盘就写 /dev/sdb1;/dev/sdc...)
address 192.168.6.106:7788;
meta-disk internal;
}
on drbd2 {
device /dev/drbd0;
disk /dev/www/www; (如果是新家的硬盘就写 /dev/sdb1;/dev/sdc...)
address 192.168.6.107:7788;
meta-disk internal;
}
}
我的是很简单的,为了测试,还需要大家根据自己的需要自己修改~
好了两台机器都写完配置文件后,在drbd1和drbd2上分别输入命令
#drbdadm create-md r0 “r0”是我们在drbd.conf里定义
弹出的信息,敲回车,如果drbd.conf配置好的话,有的信息是不会弹出的。
现在我们可以启动DRBD了,分别在两台主机上执行:
[root@drbd1 local]#/etc/init.d/drbd start
[root@drbd2 local]#/etc/init.d/drbd start
[root@drbd1 ~]# cat /proc/drbd
version: 8.0.11 (api:86/proto:86)
SVN Revision: 2713 build by
root@drbd1
, 2008-06-27 14:07:14 1: cs:Connected st: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
resync: used:0/31 hits:0 misses:0 starving:0 dirty:0 changed:0
act_log: used:0/257 hits:0 misses:0 starving:0 dirty:0 changed:0
”/proc/drbd”中显示了drbd当前的状态.第一行的st表示两台主机的状态,都是”备机”状态.
ds是磁盘状态,都是”不一致”状态.
这是由于,DRBD无法判断哪一方为主机,以哪一方的磁盘数据作为标准数据.所以,我们需要初始化
一个主机.在drbd1上执行:
[root@drbd1 local]#drbdsetup /dev/drbd0 primary -o
主备机状态分别是”主/备”,主机磁盘状态是”实时”,备机状态是”不一致”.
[2] 下一页
- 最新评论