存储分类:
DAS:直接附加存储;例如ide,sata,scsi,sas等
NAS:网络附加存储;即文件级别共享存储;例如nfs等
SAN:存储区域网络;即块级别共享存储;例如ip-san,fc-san
共享存储选型比较:
SAN性能优良,价格昂贵;
NAS性能基于文件系统级别,性能低下;
因此,另一个DRBD诞生,全称为分布式复制块设备,Distributed Replicated Block Device(DRBD)是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。
DRBD工作模式分为2种:
单主模式:典型的高可靠性集群方案。
复主模式:需要采用共享cluster文件系统,如GFS和OCFS2。用于需要从2个节点并发访问数据的场合,需要特别配置。
复制模式:3种模式:
协议A:异步复制协议。本地写成功后立即返回,数据放在发送buffer中,可能丢失。
协议B:内存同步(半同步)复制协议。本地写成功并将数据发送到对方后立即返回,如果双机掉电,数据可能丢失。
协议C:同步复制协议。本地和对方写成功确认后返回。如果双机掉电或磁盘同时损坏,则数据可能丢失。 一般用协议C。选择协议将影响流量,从而影响网络时延。
DRBD工具:
drbdadmin
drbdsetup
drbdmeta
DRBD的配置文件:
/etc/drbd.conf
/etc/drbd.d/global_common.conf:提供全局配置,及多个drbd设备相同的配置;
/etc/drbd.d/*.res:资源定义;
配置DRBD的前提:
1、时间同步
2、基于主机名访问
案例:安装配置DRBD
1、提供drbd所需的磁盘或分区,要求大小一致;
#fdisk /dev/sda
# partx -av /dev/sda
2、安装drbd ELRepo源中提供kmod-drbd和drbd-utils的rpm包
# rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
# yum install kmod-drbd84 drbd84-utils -y
# modprobe drbd
# echo drbd > /etc/modules-load.d/drbd.conf
设置drbd配置文件
# vi /etc/drbd.d/global_common.conf
global {
usage-count no;
}
common {
handlers { }
startup { }
options { }
disk { on-io-error detach; }
net { cram-hmac-alg “sha1”; shared-secret “mydrbdtest”; }
syncer { rate 100M; }
}
定义drbd资源的文件
# vi /etc/drbd.d/mydrbd.res
resource mydrbd {
device /dev/drbd0;
disk /dev/sda3;
meta-disk internal;
on node1.lewis.com {
address 192.168.71.41:7789;
}
on node2.lewis.com {
address 192.168.71.42:7789;
}
}
# scp -p /etc/drbd.d/{global_common.conf,mydrbd.res} node2:/etc/drbd.d/
# drbdadm create-md mydrbd
# systemct start drbd
查看drbd状态
# cat /proc/drbd
# drbd-overview
NOTE: drbd-overview will be deprecated soon.
Please consider using drbdtop.
0:mydrbd/0 Connected Secondary/Secondary UpToDate/UpToDate
drbd双节点都处于secondary,因此需要提升一个为主节点
# drbdadm primary –force mydrbd
将drbd作为集群资源,首先定义为primitive资源,其次定义ms资源
crm(live)configure# primitive mystor ocf:linbit:drbd
params drbd_resource=”mydrbd” op monitor role=”Master” interval=10s timeout=20s op monitor role=”Slave” interval=20s timeout=20s op start timeout=240s op stop timeout=100s
crm(live)configure# ms ms_mystor mystor meta clone-m
ax=”2″ clone-node-max=”1″ master-max=”1″ master-node-max=”1″ notify=”true”
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88330