文档章节

DRBD基本安装

ONLY_xu
 ONLY_xu
发布于 2017/08/29 16:19
字数 885
阅读 1
收藏 0
点赞 0
评论 0

主机:192.168.1.227   hostname:masterNode

备机:192.168.1.205  hostname: slaveNode

DRBD版本8.4.1(本文操作)

http://www.linbit.com/en/drbd-community/old-releases/

新版本:

https://www.linbit.com/en/drbd-community/drbd-download/

以下1、2、3步骤都是master和slave两台主机同样操作

1. 基本环境准备

1.1 主机名

#vim /etc/sysconfig/network

#vim /etc/hosts

#hostname  masterNode   #操作完了退出(当前终端)重新登录即可

1.2 格式化硬盘分区

#fdisk -l  #查看没有被格式化的分区

#fdisk  /dev/sdb   #这里是/dev/sdb还没被分配

#mkfs.ext4  /dev/sdb1 #格式化分区

 

后面的操作视自己想要分配的空间大小而定,我这里是使用sdb磁盘所有的空间,后面都选默认回车,最后w,写入保存退出

 

2. DRBD安装

2.1 安装依赖关系

#yum install gcc kernel-devel kernel-headers flex  -y

2.2 源码包安装

#wget ttp://www.drbd.org/download/drbd/8.4/archive/drbd-8.4.1.tar.gz

#tar  xf  drbd-8.4.1.tar.gz

#cd   drbd-8.4.1

#./configure --prefix=/usr/local/drbd  --with-km

#make KDIR=/usr/src/kernels/2.6.32-431.el6.x86_64/

#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   #添加drbd启动脚本

#chkconfig --add drbd

#chkconfig drbd on

KDIR=中指定的系统内核源码路径,根据实际情况设置,如果系统找不到,可以在其他相同的系统中拷贝过来。通常linux系统内核源码路径:/usr/src/kernels/

#uname -r   #查看内核版本(参数)

2.3 安装drbd模块

#cd drbd     #这是源码包里面的路径

#make  clean

#make  KDIR=/usr/src/kernels/2.6.32-431.el6.x86_64/

#cp drbd.ko  /lib/modules/`uname -r`/kernel/lib/

#depmod

 

3. DRBD配置

3.1 全局配置文件

#vim /usr/local/drbd/etc/drbd.d/global_common.conf

基础配置如下,详细配置可以在此基础上进行配置

global {  

    usage-count yes;  

  }  

common {  

    net {  

      protocol C;  

    }  

  } 

3.2 配置r1资源

创建

#vim /usr/local/drbd/etc/drbd.d/r1.res

resource r1{

            on masterNode{                      #on  hostname

                    device          /dev/drbd1; #逻辑设备的路径

                    disk            /dev/sdb1;  #物理设备

                    address         192.168.1.227:7788;

                    meta-disk       internal;

            }

            on slaveNode{              

                    device          /dev/drbd1;

                    disk            /dev/sdb1;

                    address         192.168.1.205:7788;

                    meta-disk       internal;

            }

    }

参数说明:

on 后面配置主机名

device 是自定义的物理设备的逻辑路径(本身不存在)

disk   是磁盘设备,或者逻辑分区,也就是刚刚我们自己格式化创建的磁盘或分区名

address  master和slave监听的ip和port

iptables 策略:

#iptables -A INPUT -p tcp --dport 7788 -j ACCEPT

#iptables -A OUTPUT -P  tcp --sport 7788 -j ACCEPT

# vim /etc/sysconfig/iptables

如果是长期有效,还需写入防火墙配置文件中,上述第三条语句,配置文件:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 7788 -j ACCEPT

-A OUTPUT -m state --state NEW -m tcp -p tcp --sport 7788 -j ACCEPT

3.3 建立resource

#modprobe  drbd   #载入drbd模块

#lsmod  | grep drbd  #确认drbd模块载入

#dd if=/dev/zero of=/dev/sdb1 bs=1M count=100

#drbdadm create-md r1

#drbdadm up r1

 

error: 所有的on模块后面必须是主机名,由于之前配置部署主机导致报错

3.4 设置primary Node

#drbdadm  primary --force r1

#cat /proc/drbd    #查看drbd状态

 

3.5 创建DRMD文件系统

上面的步骤中已经完成了/dev/drbd1的初始化,现在格式化/dev/drbd1为ext4并挂载到预期创建的目录/drbdData(自定义)

#mkfs.ext4  /dev/drbd1

#mount /dev/drbd1  /drbdData/

至此,所有在drbdData上保存的数据都会在192.168.1.205中的/dev/drbd1中保存一份,查看slave上磁盘的备份数据内容

3.6 测试效果

drbdData ]#touch file    #master

切换主备服务器:

master

#umount /dev/drbd1

#drbdadm secondary --force r1

slave

#drbdadm primary --force r1

#cat  /proc/drbd

#mount  /dev/drbd1  /drbdData/

#ls  /drbdData

file   lost+found

 

参考:

http://blog.csdn.net/greensurfer/article/details/7606951

http://blog.csdn.net/kkdelta/article/details/39737011

© 著作权归作者所有

共有 人打赏支持
ONLY_xu
粉丝 1
博文 10
码字总数 6198
作品 0
武汉
架构师
DRBD使用gfs2,cman实现双主集群文件存储方案

DRBD简介 DRBD (Distributed Replicated Block Device) 是 Linux 平台上的分散式储存系统。其中包含了核心模组,数个使用者 空间管理程式及 shell scripts,通常用于高可用性(high availabi...

My_King1
2014/04/23
0
0
DRBD基本(实现数据库高可用)

DRBD(实现数据库高可用) Distributed Replicated Block Device(DRBD)是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。 数据镜像:实时、透明、同步(所有服务...

xhk777
2017/10/23
0
0
centos7.5部署heartbeat+DRBD+mysql高可用方案

做双机热备方案需要用到Hearbeat和存储设备(如果没存储设备,可以用DRBD代替,但是最好用存储设备)。 Heartbeat:如果热备服务器在规定的时间内没有收到主服务器心跳消息那么热备服务器会认...

sailikung
05/18
0
0
yum -y install kmod-drbd83 drbd83 安装不了nopackage解决

yum -y install kmod-drbd83 drbd83 安装不了,由于centos6.4的iso并没有drbd的rpm包,采用互联网上的资源下载安装elrep,可以直接yum install drbd wget http://elrepo.reloumirrors.net/elre...

rock912
2014/10/18
155
1
DRBD数据同步部署-centos7

DRBD数据同步 DRBD安装:(ha高可用集群。:在7的版本下) 环境: 172.25.0.29 node1 172.25.0.30 node2 1.首先我们需要在node1和node2上添加一块硬盘,我这里就添加2G的硬盘来做演示: [roo...

听雨x
2017/10/23
0
0
DRBD安装与运维演练

1 概述 1.1 DRBD简介 DRBD,即Distributed Replicated Block Device分布式复制块设备。它是被设计成构建高可用集群(HA)的一个构建组件的块设备。它通过网络实现块设备数据实时镜像。DRBD可...

zsaisai
2015/05/19
0
0
DRBD环境搭建

http://git.linbit.com/drbd-9.0.git/ 一、配置环境需求 两个节点,一主一次:Host1、Host2 节点环境 Linux Distribution(含有make, gcc, kernel-devel等工具),本次使用 CentOS 7.1 DRBD ...

dhb_oschina
2016/04/01
210
0
Centos6下DRBD的安装配置

导读 Distributed Replicated Block Device(DRBD)是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。数据镜像:实时、透明、同步(所有服务器都成功后返回)、异步...

linuxprobe16
2016/11/14
9
0
drbd共享存储的简单配置-高可用存储

主机1:server5.example.com 172.25.254.5 主机2:server6.example.com 172.25.254.56 安装drbd yum install gcc flex rpm-build kernel-devel -yrpmbuild ~ #在家目录生成 rpmbuild 编译所需......

月黑风高杀人夜
2015/07/15
0
1
项目:一次测试环境下的高可用NFS文件服务器(DRBD+heartbeat+NFS)

什么是DRBD? 分布式复制块设备。当你将数据写入本地的DRBD设备上的文件系统时,数据同时会被发送到远程端的另一边的DRBD设备文件系统里,保障数据实时同步,当本地的DRBD设备突然故障,远程...

出VU时代
2016/09/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
2
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
1
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
1
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
2
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
1
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
1
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部