drbd+heartbeat+nfs

Drbd+heartbeat+nfs

設備信息:

masterip 192.168.8.220/24  eth0   增加sdb磁盤無需掛載

backup: ip 192.168.8.221/24   eth0  增加sdb磁盤無需掛載

拓撲:

spacer.gif

編輯 /etc/hosts     (master+backup)

spacer.gif

下載drbd源碼包:drbd8.4.3.tar.bz2

一:編譯安裝drbd  master+backup

1.1安裝依賴

Yum install gcc gcc-c++ make flexkernel-devel kernel-heders

解壓並安裝:

./configure –prefix=/usr/local/drbd –with-kem#--with-kem 開啓內核模塊

make KDIR=/usr/src/kernels/’uname-r’#指定系統內核源碼路徑

make install

modprobe drbd    ##加載內核模塊

lsmod | grep drbd

配置drbd master+backup

cp /usr/local/drbd/etc/drbd.d/global_common.conf global_common.conf.bak 

vi global_common.conf

global {

usage-countno;

}

common {

protocol C;

startup {

wfc-timeout120;

degr-wfc-timeout120;

}

disk {

on-io-errordetach;

fencingresource-only;

}

net {

cram-hmac-alg"sha1";

shared-secret"uccc";

}

syncer {

rate 30M;

}

}

2:創建資源文件(master+backup)

vi /usr/local/drbd/etc/drbd.d/nfs.res   #創建名爲nfs的資源文件

resource nfs {

on master {

device/dev/drbd0;

disk/dev/sdb1;

address 192.168.8.220:7788;

meta-diskinternal;

}

on backup {

device/dev/drbd0;

disk/dev/sdb1;

address 192.168.8.221:7788;

meta-diskinternal;

}

}

激活資源:(master+backup)

drbdadm  create-md nfs   ##drbdadmdrbd的管理命令

啓動drbd(master+backup)

service drbd start   ##啓動drbd

service drbd sattus   ##查看drbd狀態

設置開機啓動(master+backup)

chkconfig –add drbd

chkconfig drbd on

因爲默認狀態下masterbackup的狀態都爲secondary,所以需要設置masterprimary(master)

drbdsetup /dev/drbd0 primary –force     ##設置masterprimary

格式化並掛載磁盤(master

mkfs.ext4 /dev/drbd0

mkdir /data

mount /dev/drbd0 /data

查看磁盤使用情況

df –h

spacer.gif

至此drbd安裝完成。

二:安裝NFSmaster+backup

yum install rpcbind nfs-utils –y

編輯配置文件:vi exports

spacer.gif

servicerpcbind start

service nfsstart

chkconfigrpcbind on

chkconfig nfson

修改nfs啓動配置

vi/etc/init.d/nfs

修改配置

killproc nfsd -2 9     ##此處配置是否必須?

三:安裝heartbeat master+backup

3.1通過yum安裝,默認yum源沒有此包,需對源進行更新。

rpm -Uvh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm

yum install heartbeat* -y

heartbeat有三個配置文件

authkeys ha.cf  haresources    ##分別爲認證文件、主配置文件、資源文件

3.2 master配置heartbeat

3.2.1 [root@master ~]# cat /etc/ha.d/ha.cf| grep -v "^#"

debugfile /var/log/ha-debug

logfile   /var/log/ha-log

logfacility    local0

keepalive 2

deadtime 10

warntime 10

initdead 120

udpport 694     ##端口號

ucast eth0 192.168.8.221   ##對端的ip

auto_failback off     ##自動切換

node     master #主節點

node     backup       #備節點

ping 192.168.8.1      ##ping網關

3..2.2 配置authkeys

vi /etc/ha.d/authkeys

auth 1       # 採用何種認證

1 crc        #無加密認證

#2 sha1 HI

#3 md5 Hello!

3.2.3配置haresources

vi /etc/ha.d/haresources

master IPaddr::192.168.8.222/24/eth0 drbddisk::nfs Filesystem::/dev/drbd0::/data::ext4 killnfsd

###此處說明:共有5部分

1部分:主節點主機名

2部分:設置heartbeatvip;即對外服務ip

3部分:設置對資源文件進行的操作。通過drbddisk

4部分:文件系統類型及掛載點

5部分:執行killnfsd腳本

共有4個腳本:IPaddr    drbddisk      Filesystem   killnfsd

需要存放在/etc/ha.d/resource.d/  中,但是經過查看目錄中沒有drbddisk。所以導致啓動一直沒能成功。需要找到drbddisk文件並複製到/etc/ha.d/resource.d/

killnfsd文件也需要自己創建。

3.2.4

如圖:spacer.gif

查找drbddisk文件,發現在drbd安裝文件中是有的,直接複製過去。

cp /usr/local/drbd/etc/ha.d/resource.d/drbddisk/etc/ha.d/resource.d/

創建killnfsd文件

cd /etc/ha.d/recource.d/;vi killnfsd

killall -9 nfsd; /etc/init.d/nfs restart;exit 0

chmod +x killnfsd

3.2.5 修改文件權限

chmod 600  /etc/ha.d/authkeys

chmod 755 /etc/ha.d/resource.d/killnfsd

3.3 backup配置heartbeat

3.3.1複製master的配置文件到backup中。

scp ha.cfauthkeys haresources backup:/etc/ha.d/

scp resource.d/killnfsd backup:/etc/ha.d/resource.d/

scp resource.d/drbddisk backup:/etc/ha.d/resource.d/

3.3.2配置master的ha.cf文件

ucast eth0 192.168.8.220  #修改此處爲masterip

3.4啓動heartbeatmaster+backup

service heartbeat start    #啓動

chkconfig heartbeat on   #設置開機啓動

service heartbeat status   #查看狀態

ip a 查看ip地址發現 vip已經存在

spacer.gif

ping 192.168.8.222 已通

heartbeat已經安裝完成!

:模擬測試

4.1 masterdrbd狀態與master /data 分區

spacer.gif

spacer.gif

可以看出masterdrbdprimary狀態,且/drv/drbd0已經掛載到/data

4.2 backup查看drbd狀態與 /data 分區

spacer.gif

spacer.gif

backupdrbd狀態爲secondary,且無/data分區

4.3 關閉masterheartbeat,查看drbd狀態,與backup的分區信息

spacer.gif

關閉heartbeat後,masterdrbd狀態切換至secondary,且/data分區已經消失。

 

 

 

 

查看backup的主機。

spacer.gif

發現drbd狀態已由原來的secondary切換至primary

spacer.gif

再觀察分區,發現/dev/drbd0已成功掛載至/data

實驗完成!!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章