drbd安装配置.docx

上传人:b****6 文档编号:6356598 上传时间:2023-01-05 格式:DOCX 页数:9 大小:97.56KB
下载 相关 举报
drbd安装配置.docx_第1页
第1页 / 共9页
drbd安装配置.docx_第2页
第2页 / 共9页
drbd安装配置.docx_第3页
第3页 / 共9页
drbd安装配置.docx_第4页
第4页 / 共9页
drbd安装配置.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

drbd安装配置.docx

《drbd安装配置.docx》由会员分享,可在线阅读,更多相关《drbd安装配置.docx(9页珍藏版)》请在冰豆网上搜索。

drbd安装配置.docx

drbd安装配置

DRBD安装配置说明(添加新硬盘)

一安装前说明

======================================================================

DRBD(DistributedReplicatedBlockDevice),分布式复制块设备,是一种通过TCP/IP网络实现块设备数据实时镜像的方案。

利用这种方案,单一主节点模式(singleprimarymode)双机系统能够实时地将业务数据保存在主备节点的磁盘中,正常情况下两个节点的数据是一模一样的。

根据官方的说明文档,如果系统内核(linux)版本低于2.6.33,在安装软件之前需要加载DRBD模块,如果高于(或等于)2.6.33,则只安装客户端软件。

以下是官网发布的对应版本:

此文档是基于每台主机有两块硬盘,硬盘1用于系统安装,硬盘2用于和另一台主机的硬盘进行数据互备。

二安装前环境设定

======================================================================

OS:

Fedora13内核2.6.33版本

硬件环境:

两台主机,分别有两块硬盘(用作数据备份的硬盘最好大小相同)

主机名硬盘1硬盘2

www1sda(15G)sdb(2G)

www2sda(15G)sdb(2G)(此文档中硬盘2将作为互备硬盘)

主机名必须设定,因为DRBD靠主机名来识别主机和备份机,设定方法为:

#vim/etc/hosts

192.168.9.xxhostname1.domain.orghostname1

同时要保证两台主机能够相互通信

用来做DRBD的分区:

/dev/sdb5

挂载点:

/opt

三安装步骤

======================================================================

检查DRBD模块加载情况:

#lsmod

如下图所示,表示已经加载该模块

 

四DRBD配置

======================================================================

-----------------------------------

DRBD配置文件drbd.conf

----------------------------------

安装完成后,在/etc目录下会生成drbd.conf文件,即为drbd唯一需要配置的文件。

对drbd.conf文件进行编辑:

#vim/etc/drbd.conf

global{

usage-countyes; //yes表示同意加入DRBD统计用户数

}

common{ 

 syncer{rate10M;} //确定同步速率

}

resourcer0{//r0是资源名称,可自行命名

protocolC;

disk{ 

   on-io-error  detach; 

 }

net{

after-sb-0pridisconnect;

after-sb-1pridisconnect;

after-sb-2pridisconnect;

rr-conflictdisconnect;

}

onwww1{ 

   device    /dev/drbd0; 

   disk      /dev/sdb5; 

   address   192.168.210.11:

7788; 

   flexible-meta-disk internal; 

 }

onwww2{ 

   device   /dev/drbd0; 

   disk     /dev/sdb5; 

   address  192.168.210.44:

7788; 

   meta-diskinternal; 

 } 

}

------------------------------------------------------------------------------------------------------------------

准备一块新的没有数据的硬盘(只有一块硬盘的情况以上操作与之相同,详见最后说明)

------------------------------------------------------------------------------------------------------------------

查看当前硬盘设备:

#fdisk–l

Disk/dev/sda:

6442MB,6442450944bytes

255heads,63sectors/track,783cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sda1*1743596811683Linux

/dev/sda27447833213005Extended

/dev/sda5744783321268+82Linuxswap/Solaris

Disk/dev/sdb:

1073MB,1073741824bytes

255heads,63sectors/track,130cylinders

Units=cylindersof16065*512=8225280bytes

Disk/dev/sdbdoesn'tcontainavalidpartitiontable

可以看到新添加的硬盘显示在最后,还没有分区,接下来对其进行分区操作

#fdisk/dev/sdb

Command(mforhelp):

n

Commandaction

eextended

pprimarypartition(1-4)

e

Partitionnumber(1-4):

1

Firstcylinder(1-130,default1):

Usingdefaultvalue1

Lastcylinderor+sizeor+sizeMor+sizeK(1-130,default130):

Usingdefaultvalue130

Command(mforhelp):

n

Commandaction

llogical(5orover)

pprimarypartition(1-4)

l

Firstcylinder(1-130,default1):

Usingdefaultvalue1

Lastcylinderor+sizeor+sizeMor+sizeK(1-130,default130):

Usingdefaultvalue130

Command(mforhelp):

w

Thepartitiontablehasbeenaltered!

Callingioctl()tore-readpartitiontable.

Syncingdisks.

分区完成,用以下命令查看

#fdisk-l/dev/sdb

Disk/dev/sdb:

1073MB,1073741824bytes

255heads,63sectors/track,130cylinders

Units=cylindersof16065*512=8225280bytes

DeviceBootStartEndBlocksIdSystem

/dev/sdb111301044193+5Extended

/dev/sdb51130104416283Linux

这个/dev/sdb5就是准备用作DRBD的磁盘

--------------------------

创建DRBD资源

--------------------------

#drbdadmcreate-mdr0//r0为配置文件中定义的资源名

如果显示如下,表示资源创建成功

如果出现以下情况的错误:

#drbdadmcreate-mdr0

md_offset1069215744

al_offset1069182976

bm_offset1069150208

Foundext3filesystemwhichuses1044160kB

currentconfigurationleavesusable1044092kB

Devicesizewouldbetruncated,which

wouldcorruptdataandresultin

'accessbeyondendofdevice'errors.

Youneedtoeither

*useexternalmetadata(recommended)

*shrinkthatfilesystemfirst

*zerooutthedevice(destroythefilesystem)

Operationrefused.

Command'drbdmeta/dev/drbd0v08/dev/sdb5internalcreate-md'

terminatedwithexitcode40

drbdadmaborting

 

这说明在/dev/sdb5上已经有数据存在了,至少已经有了文件系统。

遇到这样的情况,有两个解决方法:

调整分区大小;备份后擦除现有数据

1.调整分区大小是非常危险的操作。

有可能遇到‘accessingbeyondendofdevice’的错误,说明磁盘已经写满。

如果一定要进行调整,执行以下操作:

#e2fsck-f/dev/sdb5&&resize2fs/dev/sdb5 1044092K

2.第二个方法比较安全,将现有数据备份到其他设备上,然后进行擦除。

利用dd命令,可以完成这项工作,下面是备份命令

(1)备份

##将本地的/dev/hdx整盘备份到/dev/hdy

dd if=/dev/hdx of=/dev/hdy 

##将/dev/hdx全盘数据备份到指定路径的image文件

dd if=/dev/hdx of=/path/to/image 

##备份/dev/hdx全盘数据,并利用gzip工具进行压缩,保存到指定路径(bzip2工具也一样可使用)

dd if=/dev/hdx | gzip>/path/to/image.gz 

(2)恢复

##将备份文件恢复到指定盘

ddif=/path/to/imageof=/dev/hdx

##将压缩的备份文件恢复到指定盘

gzip-dc/path/to/image.gz|ddof=/dev/hdx

下面是擦除命令

#ddif=/dev/zeroof=/dev/sdb5

然后就可以在机器上创建资源了:

#drbdadmcreate-mdr0

五DRBD的启动、关闭以及测试

启动DRBD服务,确保其正常工作

[hostname1]#/etc/init.d/drbdstart

[hostname2]#/etc/init.d/drbdstart

或者使用以下命令代替:

[hostname1]#drbdadmattachr0

[hostname1]#drbdadmconnectr0

[hostname2]#drbdadmattachr0

[hostname2]#drbdadmconnectr0

正常启动后显示为:

#/etc/init.d/drbdstart         

StartingDRBDresources:

[d(r0)].

此时查看DRBD运行状况

#/etc/init.d/drbdstatus

可以看到两台机器都处于secondary状态

以上操作配置两台机器一样,下面开始分主备机操作

为了激发同步启动,将主机(www1)的状态设置为primary(DRBD同时只允许有一台机器处于primary状态)

[hostame1]#drbdsetup/dev/drbd0primary–o

(或者#drbdadm—–overwrite-data-of-peerprimaryr0)

如果是第一次启动,使用第一个命令,之后两个命令都可以用,它们是等价的

此时再次查看DRBD状态,发现已经开始同步

[hostname1]#/etc/init.d/drbdstatus

当达到100%的时候,说明同步已经完成,此时两台机器的/dev/sdb2是完全一致的。

对主节点进行格式化并创建文件系统:

[hostname1]#mke2fs-j/dev/drbd0//或者#mkfs.ext3/dev/drbd0

[hostname1]#mount/dev/drbd1/opt//将drbd设备挂载到/opt

[hostname1]#mkdir/opt/data//建立存放数据的文件夹

[hostname1]#vim/opt/data/test

Thisisatest

保存退出后,对主节点进行卸载、降级

[hostname1]#umount/opt

[hostname1]#drbdadmsecondaryr0

对备份节点进行升级、挂载

[hostname2]#drbdadmprimaryr0

[hostname2]#mount/dev/drbd0/opt

查看/opt下的数据,和主节点中是一致的,备份成功

 

六注意事项

防火墙设置:

打开DRBD需要使用的端口,即drbd.conf配置文件里面的address:

port

修改防火墙配置需要修改/etc/sysconfig/iptables这个文件,如果要开放哪个端口,在里面添加一条:

-ARH-Firewall-1-INPUT-mstate--stateNEW-mtcp-ptcp--dport1521-jACCEPT

就可以了,其中1521是要开放的端口号,然后重新启动linux的防火墙服务。

停止/启动防火墙服务的命令:

用root登录后,执行

serviceiptablesstop--停止

serviceiptablesstart--启动

DRDB的一些常规操作:

查看DRBD版本:

#dpkg–l|more

drbd.ko存放路径:

/lib/moduled/2.6.33-85.fc13.i686.PAE/kernel/drivers/block/drbd/drbd.ko

查看端口使用:

#netstat-ant

查看DRBD信息:

#drbdadmstater0

主从节点的切换:

主节点切换到备份节点:

先卸载(#umount/opt),再降级(#drbdadmsecondaryr0)

备份节点切换到主节点:

先升级(#drbdadmprimaryr0),再挂载(#mount/dev/drbd0/opt)

(两个节点都是secondary状态后,才可以将其中的一个设置为primary)

切换的操作不能在同步的目录下进行!

节点间连接:

drbdadmconnect|disconnectall

DRBD脑裂后的处理:

脑裂后,两个节点间数据不同步,主从关系失效,需要按下面的步骤修复:

a.在从节点如下操作:

#drbdadmsecondaryr0

#drbdadm----discard-my-dataconnectr0

b.在主节点上,通过cat/proc/drbd查看状态,如果不是WFConnection状态,需要再手动连接:

#drbdadmconnectr0

 

对于只有一块硬盘的情况:

DRBD的安装及drbd.conf的配置与有两块硬盘的情况是一样的。

配置好drbd.conf之后,使用dd磁盘备份命令,将要作为备份的分区上的数据保存到其它分区,如下图

 

Loveisnotamaybething.Youknowwhenyoulovesomeone.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1