DRBD的安装与配置
DRBD安装与配置
1.什么是DRBD?
DRBD是由内核模块和相关脚本构成,用以构建高可用性的集群。其实现方式是通过网络来镜像整个设备。它允许用户在远程机器上建立一个本地块设备的实时镜像。也可以把它看成一个网络RAID1。
工作原理:
DRBD负责接收数据,把数据写到本地磁盘,然后发送给另一个主机。另一个主机再将数据存到自己的磁盘中。目前,DRBD每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群已经够了。
DRBD协议:
A:数据一旦写入磁盘并发送到网络中就认为完成了写入操作
B:收到接受确认就认为完成了写入操作
C:收到写入确认就完成了写入操作
目前运用最多的就是C协议
下面就开始安装配置DRBD
1.前提
1)本环境共有两个测试节点,分别ha1.fpj.com和ha2.fpj.com,相的IP地址分别为192.168.3.100和192.168.3.101
2) ha1.fpj.com和ha2.fpj.com两个节点上各提供了一个大小相同的分区作为drbd设备;我们这里为在两个节点上均为/dev/sdb1,大小为10GB;
3) 系统一台为Centos6.3.i686,一台为Centos6.5.i686(先前因安装了)
4)内核分别为2.6.32-279.el6.i686;2.6.32-431.el6.i686
2.准备工作
配置双方hostname、hosts并建立ssh无密码互通
2/1.下载软件包
wget http://oss.linbit.com/drbd/8.4/drbd-8.4.3.tar.gz
drbd共有两部分组成:内核模块和用户空间的管理工具。
2/2.安装kernel-devel与kernel-headers最好用本地源安装
3.安装DRBD
我这边用编译安装,两个节点上都需要安装。
tar zxvf drbd-8.4.3.tar.gz
cd drbd-8.4.3
./configure --prefix=/usr/local/drbd --with-km #--!prefix是制定安装路径。--with-km是启用内核模块
make KDIR=/usr/src/kernels/2.6.32-431.el6.i686/ #--!KDIR指的是自己的内核路径
make install
mkdir -p /usr/local/drbd/var/run/drbd #--!这里需创建这个目录,不然启动服务会报错
cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d/
chkconfig --add drbd
chkconfig drbd on
安装DRBD模块
cd drbd
make clean
make KDIR=/usr/src/kernels/2.6.32-431.el6.i686/
cp drbd.ko /lib/modules/2.6.32-431.el6.i686/kernel/lib/
moprobe drbd #加载内核模块
lsmod | grep drbd
drbd 292339 0
libcrc32c 841 1 drbd
4.配置DRBD
通常/etc/drbd.d目录中的配置文件为global_common.conf和所有以.res结尾的文件。其中global_common.conf中主要定义global段和common段。每一个.res的文件用于定义一个资源。resource段则用于定义drbd资源,每个资源通常定义在一个单独的位于/etc/drbd.d目录中的以.res结尾的文件中。资源在定义时必须为其命名,名字可以由非空白的ASCII字符组成。每一个资源段的定义中至少要包含两个host子段,以定义此资源关联至的节点,其它参数均可以从common段或drbd的默认中进行继承而无须定义。
下面,先在ha1主机上配置global_common.conf与定义fpj.res资源,配置定义完以后拷贝到ha2一份。
1.配置global-common.conf
global {
usage-count no;#是否参加drbd的使用者统计,默认为yes
# minor-count dialog-refresh disable-ip-verification
}
common {
protocol C;#使用drbd的同步协议
handlers {
pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
}
startup {
#wfc-timeout 120;
#degr-wfc-timeout 120;
}
disk {
on-io-error detach;#配置I/O错误处理策略为分离
rate 200M;#设置主备节点同步时的网络速率
}
net {
cram-hmac-alg "sha1";
shared-secret "123456";
}
}
2.定义一个资源fpj.res,内容如下:
resource fpj { #fpj是定义资源的名字
on ha1 { #on后面是主机名称
address 192.168.3.100:7789;#设置DRBD的监听端口,用于与另一台主机通信。
device /dev/drbd0; #drbd设备名称
disk /dev/sdb1; #drbd使用的磁盘分区为sdb1
meta-disk internal;
}
on ha2 {
address 192.168.3.101:7789;
device /dev/drbd0;
disk /dev/sdb1;
meta-disk internal;
}
}
3.在两个节点上初始化已定义完的资源并启动drbd服务
drbdadm create-md fpj:
再启动drbd服务:
查看下启动状态:
从上面的图片中可以看出此时两个节点均处于Secondary状态。我们接下来需要将其中一个节点设置为Primary。在要设置为Primary的节点上执行如下命令:
drbdadm-- --overwrite-data-of-peer primary fpj也可以用 drbdadmn primary --force fpj
4.格式化文件系统;注意:文件系统的挂载只能在Primary节点进行。因此,也只有在设置了主节点后才能对drbd设备进行格式化:
mkfs.ext4 /dev/drbd0
mkdir /mydata #创建挂载目录
mount /dev/drbd0 /mydata#挂载文件系统
df -h #查看挂载
转载于:https://blog.51cto.com/fupj1/1631787
DRBD的安装与配置相关推荐
- drbd配置文件_Linux数据安全工具:数据镜像软件DRBD的安装与配置
本文授权转载自微信公众号:计算机与网络安全,转载请联系授权. 微信公众号:计算机与网络安全 ID:Computer-network 1.安装环境说明 操作系统统一采用CentOS5.5-x86-64, ...
- Maven安装与配置(最实用!!!)eclipse中配置maven
Maven安装与配置 一.需要准备的东西 JDK Eclipse(本章主要是在eclipse中进行配置maven) Maven程序包 二.下载与安装 1. 前往maven下载最新版的Maven程序: ...
- Portainer 安装与配置
文章目录 Portainer 安装与配置 一.介绍 二.安装使用 1.单机运行 2.基于swarm集群方式运行 Portainer 安装与配置 一.介绍 Portainer 是一个开源.轻量级Do ...
- Myeclipse安装、配置、测试
Myeclipse安装.配置.测试(win7_64bit) 目录 1.概述 2.本文用到的工具 3.安装与激活 4.JavaSE开发测试(确保JDK已正确安装) 5.JavaEE开发测试(确保服务器和 ...
- [网摘学习]在Ubuntu上安装和配置OpenStack Nova之二
再收藏一份Openstack的文章,这两天的操作与此相同.但其中出现的问题还需要查找原因.待个人继续学习研究. 原文参考:http://www.linuxde.net/2011/11/1599.htm ...
- centos6.5 php5.2,Linux中PHP安装与配置(CentOS-6.5:php-5.2.13)
1 PHP简介 PHP(PHP: Hypertext Preprocessor的缩写,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Per ...
- java jdk 1.8 安装_下载、安装、配置 java jdk1.8
近期配置react native的开发环境,所以就从配置环境开始.rn的环境配置有那么几项,其中重要的一个就是java jdk(Java Development Kit 的缩写),那么以下就是下载.安 ...
- mysql安装好需要优化配置一下_Mysql的安装、配置、优化
Mysql的安装.配置.优化 安装步骤 1.先单击中的安装文件,如果是win7系统,请选择以管理员的方式运行. 2.大概需要30秒的时间,开始进入安装界面.请先把标红的打勾,好进行下一步的动作. 3. ...
- windows下opencv安装及配置(vs2010环境)
opecv下载 前往官方下载地址 https://opencv.org/releases/ opencv安装及配置 解压,会得到一个opencv文件夹,可将提取出的文件移动到任意位置,我将其放在F盘. ...
最新文章
- C++中模块(Dll)对外暴露接口的方式
- 有人实践过 Phabricator 以及 Arcanist 作为 code review 的工具么?(转)
- Tomaso A.Poggio教授丨人工智能的下一个突破点在何处?
- Hadoop集群部署权限总结
- 北京市将持续扩大5G网络建设规模 超前布局6G
- 苹果终于迷途知返?还是指纹识别更香...
- MYSQL中取当前周/月/季/年的第一天与最后一天
- eclipse 使用问题
- 基于Netty手写RPC框架
- 计算机网络毕业设计汇报ppt,计算机ppt毕业设计模板
- 【论文精读】Grounded Language-Image Pre-training(GLIP)
- 数字ic设计自学ing
- 天津大学计算机学院考研复试名单,天津大学各学院2019考研复试办法及复试名单...
- 依赖、关联、聚合、组合
- ETS官方Issue主题范文36篇
- python情感分析步骤_使用python+机器学习方法进行情感分析(详细步骤)
- c语言pow函数精度差,pow()函数结果强制转化为int造成误差的分析
- Windos 系统安装 Themebeta Chrome主题
- 什么是等级保护2.0,北京等保2.0测评机构有哪些?
- thinkjs连接mysql_ThinkJS入门+实例(实现认证权限等基本功能)