drbd+corosync+pacemaker

存储分类:

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

赞 (1)
N26-深圳-城市蜗牛N26-深圳-城市蜗牛
上一篇 2017-11-12 23:47
下一篇 2017-11-13 10:51

相关推荐

  • CentOS7内核编译

    一.centos7内核编译(支持ntfs文件系统) 1.下载内核源代码内核文件(https://www.kernel.org/) 2.解压缩源代码文件到指定目录 tar xvf linux-4.8.10.tar.xz -C /usr/src 3.创建软链接解压后的文件 cd /usr/src ln -s linux-4.8.10/ linux 4.复制当前系…

    Linux干货 2016-11-28
  • btrfs文件系统介绍

    btrfs文件系统介绍 简介        Btrfs(B-tree,ButterFS ,Better FS通常念成Butter FS),由Oracle于2007年宣布并进行中的COW(copy-on-write式)文件系统。继ext3/4文件系统之后linux又有了比较强大的文件系统(btrfs文件系统),btrfs…

    系统运维 2016-04-27
  • Ansible playbook

    目录 1.1        playbook简介… 1 1.2        Playbook使用场景… 1 1.3      &nbs…

    Linux干货 2015-12-06
  • 字符串处理

      一.字符串处理 v bash 的字符串处理工具: (一)字符串切片: ${#var}: 返回字符串变量var 的长度 例: [root@lxc ~]# a="     " [root@lxc ~]# echo ${#a} 5 [root@lxc ~]# ${var:offse…

    Linux干货 2016-11-24
  • 那些年我们一起追过的缓存写法(二)

    原文出处: 蘑菇先生   上次主要讨论缓存读写这块各种代码实现。本篇是就上次的问题接着来,继续看那些年我们各种缓存用法。 一:缓存预热 上次有同学问过。在第一次加载时,我们的缓存都为空,怎么进行预热。 单机Web情况下,一般我们使用RunTimeCache。相对于这种情况下: 1:我们可以在启动事件里面刷新 1 2 3 4 vo…

    Linux干货 2015-03-04
  • 马哥教育网络班21期第11周课程练习

    1、详细描述一次加密通讯的过程,结合图示最佳。 发送方Bob:自上至下 1、生成数据 2、Bob用单向加密算法对数据提取特征码 3、Bob用自己的私钥加密特征码,并附加在数据后面 4、Bob使用对称加密算法生成临时会话密钥加密特征码和数据 5、Bob用Alice的公钥加密临时会话密钥,并附加在数据后 接收方Alice:自下至上 1、Alice收到Bob数据,…

    Linux干货 2016-10-31