安装配置DRBD

定义:

DRBD(Distributed Replicated Block Device) 分布式块设备复制:是linux内核存储层中的一个分布式存储系统,可利用DRBD在两台linux服务器之间共享块设备,文件系统和数据,类似于一个网络RAID1的功能

两台服务器间就算某台服务器出现断电或者宕机也不会对数据有任何影响

当将数据写入到本地主节点的文件系统时,这些数据会通过网络发送到远端另一台从节点上;本地节点和远端从节点数据通过TCP/IP协议保持同步,主节点发生故障时,远端从节点保存着相同的数据,可以接替主节点继续对外提供服务;两节点之间使用Heartbeat来检测对方是否存活,且自动切换可以通过Heartbeat方案解决,不需要人工干预(Heartbeat方案这里先忽略)

用途:

DRBD+Heartbeat+Mysql:进行主从(这里的主从并不是mysql的单向或双向复制)结构分离,且实现自动切换

DRBD+HeartBeat+NFS:配置NFS的高可用,作为集群中的底端共享存储

环境:

[[email protected] ~]# cat /etc/issue
CentOS release 6.4 (Final)
Kernel \r on an \m

[[email protected] ~]# uname -r
2.6.32-358.el6.i686
dbm135 192.168.186.135 dbm135.51.com
dbm134 192.168.186.134 dbm134.51.com

准备:

关闭iptables和SELINUX:(dbm135,dbm134)

[[email protected] ~]#service iptables stop
[[email protected] ~]#setenforce 0
[[email protected] ~]#vi /etc/sysconfig/selinux
---------------
SELINUX=disabled
---------------

修改主机名:

dbm135
[[email protected] ~]#hostname dbm135.51.com
[[email protected] ~]#cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=dbm135.51.com
dbm134
[[email protected] ~]#hostname dbm134.51.com
[[email protected] ~]#cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=dbm134.51.com

修改/etc/hosts文件:(dbm135,dbm134)

192.168.186.135 dbm135.51.com dbm135
192.168.186.134 dbm134.51.com dbm134

时间同步:(dbm135,dbm134)

[[email protected] ~]#/usr/sbin/ntpdate pool.ntp.org
#可以创建一个计划任务

网络:(dbm135,dbm134)

DRBD同步操作对网络环境要求很高,特别是在写入数据量特别大,同步数据很多时尤为重要;建议将两台dbm服务器放在同一个机房,使用内网进行数据同步

磁盘规划:

两台主机节点的(磁盘)分区大小要一致:

考虑到数据库的大小和未来的增长,这里采用lvm逻辑卷进行分区:

分区:(dbm135)

[[email protected] ~]# fdisk -l 

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00051b9f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        2611    20458496   8e  Linux LVM

Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/mapper/VolGroup-lv_root: 19.9 GB, 19872612352 bytes
255 heads, 63 sectors/track, 2416 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/mapper/VolGroup-lv_swap: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

由fdisk -l可以看出有一块大小为10.7G的设备/dev/sdb,对/dev/sdb来创建逻辑卷:

[[email protected] ~]# pvcreate /dev/sdb             #创建pv
  Physical volume "/dev/sdb" successfully created
[[email protected] ~]# pvs
  PV         VG       Fmt  Attr PSize  PFree 
  /dev/sda2  VolGroup lvm2 a--  19.51g     0 
  /dev/sdb            lvm2 a--  10.00g 10.00g
[[email protected] ~]# vgcreate drbd /dev/sdb        #创建卷组drbd,将pv加到卷组中
  Volume group "drbd" successfully created
[[email protected] ~]# vgs
  VG       #PV #LV #SN Attr   VSize  VFree 
  VolGroup   1   2   0 wz--n- 19.51g     0 
  drbd       1   0   0 wz--n- 10.00g 10.00g
[[email protected] ~]# lvcreate -n dbm -L 9G drbd     #在卷组drbd中创建lvm逻辑卷
  Logical volume "dbm" created
[[email protected] ~]# lvs
  LV      VG       Attr      LSize  Pool Origin Data%  Move Log Cpy%Sync Convert
  lv_root VolGroup -wi-ao--- 18.51g                                             
  lv_swap VolGroup -wi-ao---  1.00g                                             
  dbm     drbd     -wi-a----  9.00g 
[[email protected] ~]# ls /dev/drbd/dbm               #查看创建的逻辑卷
/dev/drbd/dbm

挂载逻辑卷:

[[email protected] ~]# mkdir /data           #创建数据库存放目录
[[email protected] ~]# mkfs.ext4 /dev/drbd/dbm     #格式化逻辑卷
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
589824 inodes, 2359296 blocks
117964 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2415919104
72 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[[email protected] ~]# mount /dev/drbd/dbm /data/      #挂载逻辑卷
[[email protected] ~]# df -h              #查看是否挂载
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       19G  1.1G   17G   7% /
tmpfs                  58M     0   58M   0% /dev/shm
/dev/sda1             485M   30M  430M   7% /boot
/dev/mapper/drbd-dbm  8.9G  149M  8.3G   2% /data

    注意:dbm134采用上面相同的方法对磁盘进行规划操作

安装DRBD:

通过yum安装DRBD(推荐):(dbm135,dbm134)

[[email protected] ~]# cd /usr/local/src/
[[email protected] src]# wget http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm
[[email protected] src]# rpm -ivh elrepo-release-6-6.el6.elrepo.noarch.rpm
[[email protected] src]# yum -y install drbd83-utils kmod-drbd83      #时间可能会比较长
[[email protected] ~]# modprobe drbd       #加载drbd模块
FATAL: Module drbd not found.

解决加载drbd模块失败:

因为在执行yum -y install drbd83-utils kmod-drbd83时,对内核kernel进行了update,要重新启动服务器,更新后的内核才会生效

重新启动服务器

检查DRBD是否安装成功:(dbm135,dbm134)

[[email protected] ~]# modprobe drbd       #加载drbd模块
[[email protected] ~]# modprobe -l | grep drbd
weak-updates/drbd83/drbd.ko
[[email protected] ~]# lsmod | grep drbd
drbd                  311209  0 
安装成功后,在/sbin目录下有drbdadm,drbdmeta,drbdsetup命令,以及/etc/init.d/drbd启动脚本

配置DRBD:

时间: 2024-08-04 03:08:11

安装配置DRBD的相关文章

centos7.0安装配置DRBD

首先确保两台机器时间同步,配置ssh. 方法一通过yum源安装:yum安装默认路径是/etc/drbd.d/下 # rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm# yum -y install drbd84-utils kmod-drbd84 方法二编译安装:默认路径是/usr/loca

基于CentOS6.7的DRBD安装配置过程详解

一.DRBD简介 DRBD的全称为:Distributed ReplicatedBlock Device(DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.你可以把它看作是一种网络RAID.它允许用户在远程机器上建立一个本地块设备的实时镜像. 二.DRBD是如何工作的呢? (DRBD Primary)负责接收数据,把数据写到本地磁盘并发送给另一台主机(DRBD Secondary).另一个主机再将数据存到自己的磁盘中.目

DRBD编译安装配置

一.简介 DRBD的全称为:Distributed ReplicatedBlock Device(DRBD)分布式块设备复制,DRBD 是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.它允许用户在远程机器上建立一个本地块设备的实时镜像.与心跳连接结合使用,也可以把它看作是一种网络RAID. DRBD是一个用软件实现的.无共享的.服务器之间镜像块设备内容的存储复制解决方案. DRBD Logo数据镜像:实时.透明.同步(所有服务器都成功后返回).异步(本地

DRBD源码安装配置

DRBD简介 DRBD实际上是一种块设备的实现,主要被用于Linux平台下的高可用(HA)方案之中.他是有内核模块和相关程序而组成,通过网络通信 来同步镜像整个设备,有点类似于一个网络RAID的功能.也就是说当你将数据写入本地的DRBD设备上的文件系统时,数据会同时被发送到网络中的另外一台 主机之上,并以完全相同的形式记录在一个文件系统中(实际上文件系统的创建也是由DRBD的同步来实现的).本地节点(主机)与远程节点(主机)的数据可 以保证实时的同步,并保证IO的一致性.所以当本地节点的主机出现

HA专题: 编译安装并配置DRBD

HA专题: 编译安装并配置DRBD 前言 上篇我们讲到使用corosync+pacemaker实现MySQL高可用, 但是NFS容易成为单点故障从而导致数据丢失等严重问题, 我们可以使用drbd来实现MySQL数据的高可用, 本文介绍如何编译安装drbd并配置drbd实现不同主机的分区镜像 实验环境 今天实验环境比较简单, 所以就不画图了 主机 IP 功用 node1.anyisalin.com 172.16.1.2 drbd节点 node2.anyisalin.com 172.16.1.3 d

DRBD安装配置

测试环境 [[email protected] ~]# uname -r 3.10.0-862.el7.x86_64 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) Host machime hostname IP Address Host1 Drbd1 192.168.85.71 Host2 Drbd2 192.168.85.72 安装DBBD 1.设置IP地址 #vi /e

DRBD 安装配置、工作原理及故障恢复

DRBD 安装配置.工作原理及故障恢复 一.DRBD 简介 DRBD的全称为:Distributed ReplicatedBlock Device(DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.你可以把它看作是一种网络RAID.它允许用户在远程机器上建立一个本地块设备的实时镜像. 1. DRBD是如何工作的呢? (DRBD Primary)负责接收数据,把数据写到本地磁盘并发送给另一台主机(DRBD Secondar

linux下配置DRBD

今天搭建了DRBD,为了以后查看方便,也希望帮到需要的人,所以整理了文档,分享给大家. 我的系统是CentOS6.7版本 DRBD 1.加硬盘后重启 cat /pro/parttions 分区 fdisk /dev/sdb partprobe /dev/sdb       重新加载文件系统 cat /pro/parttions       可以看到sdb1 2.加载yum源 yum clean all yum repolist 3.同步时间 ntpdate -u asia.pool.ntp.or

在Linux上配置DRBD部署

drbd 工作原理DRBD是一种块设备,能够被用于高可用(HA)之中.它相似于一个网络RAID-1功能.当你将数据写入本地 文件系统时,数据还将会被发送到网络中还有一台主机上.以同样的形式记录在一个文件系统中. 本地(主节点)与远程主机(备节点)的数据能够保证实时同步.当本地系统出现问题时,远程主机上还会 保留有一份同样的数据,能够继续使用.在高可用(HA)中使用DRBD功能,能够取代使用一个共享盘阵.由于数据同一时候存在于本地主机和远程主机上,切换时,远程主机仅仅要使用它上面的那份备份数据,就