阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

DRBD快速安装及部署

106次阅读
没有评论

共计 5385 个字符,预计需要花费 14 分钟才能阅读完成。

DRBD 以其开源,简单,高效,性能不俗为广大运维者们所青睐。主要功能是在不同节点上两个相同大小的设备块级别之间的数据同步镜像。drbd 是由内核模块和相关脚本而构成,用以构建高可用性的集群。本文主要描述其安装方式,供大家参考。

有关 DRBD 的特性,功能及其相关基础知识,大家可以参考:DRBD 原理及特性概述

一、演示环境
OS 版本:CentOS release 6.5 (Final)
orasrv1: 192.168.21.10
orasrv2: 192.168.21.13
DRBD 版本 Version: 8.3.15 (api:88)

二、yum 方式安装 drbd(两节点)
1、以下通过 yum 方式安装
配置 epel 源,可以从这里下载,或者直接用 wget 方式获取
http://download.Fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm -Uvh epel-release-6-8.noarch.rpm
# yum -y install drbd83 kmod-drbd83
# modprobe drbd
# lsmod |grep drbd
drbd                  345363  0
2、配置部分,请参考第三点编译方式安装 drbd 之第 4 小点后续部分
### 注,通过 yum 方式安装时,drbd 配置文件目录有所不同
###drbd.conf 文件放置到 /etc 目录下,其余的 2 个配置文件存放到 /etc/drbd.d 目录下 1
三、编译方式安装 drbd
1、安装用户空间工具(两节点)
# yum -y install kernel-devel kernel-headers flex gcc
# pwd
usr/local/src    ###drbd 压缩文件存放位置
# tar -xvf drbd-8.3.15.tar.gz
# cd drbd-8.3.15
# ./configure –prefix=/usr/local/drbd –with-km
# make KDIR=/usr/src/kernels/2.6.32-431.el6.x86_64/
# make install
# ls /usr/local/drbd/  ## 查看安装后的文件
etc  lib  sbin  share  var

# cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/init.d/drbd
# chkconfig –add drbd
# chkconfig drbd on1
2、安装 drbd 模块 (两节点)
# cd /usr/local/src/drbd-8.3.15/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
# modprobe drbd    ### 加载 drbd 模块到 Linux 内核
注:/usr/src/kernels/2.6.18-274.18.1.el5-i686/ 这个内核源码树路径需要根据自己的系统修改。
3、验证 drbd 内核加载(两节点)
# lsmod |grep drbd
drbd                  345363  0

4、配置系统磁盘(两节点)
### Author : Leshami
### Blog:http://www.linuxidc.com
### 本示例种为当前 2 节点单独分配了 /dev/sdb 磁盘,以下操作在 2 节点完成
# fdisk /dev/sdb    ### 依次输入 n,p,1,回车(enter),回车(enter),w
# partprobe        ### 如果依旧无法看到分区,请 reboot 以及查找原因
# fdisk -l /dev/sdb1
5、配置 drbd.conf 及 global_common.conf(两节点)
# mv /usr/local/drbd/etc/drbd.conf /usr/local/drbd/etc/drbd.conf.bk
# cp /usr/local/src/drbd-8.3.15/scripts/drbd.conf /usr/local/drbd/etc/drbd.conf

# more /usr/local/drbd/etc/drbd.conf  ### 查看 drbd.conf 应包含下列 include 内容
# You can find an example in  /usr/share/doc/drbd…/drbd.conf.example
include “drbd.d/global_common.conf”;
include “drbd.d/*.res”;

# mv /usr/local/drbd/etc/drbd.d/global_common.conf /usr/local/drbd/etc/drbd.d/global_common.conf.bk
# vi /usr/local/drbd/etc/drbd.d/global_common.conf  ###global_common.conf 可以参考 drbd.conf.example
global {
        usage-count yes;
        # minor-count dialog-refresh disable-ip-verification
}

common {
        protocol C;

        handlers {
        }

        startup {
                wfc-timeout 0; degr-wfc-timeout 120;
        }

        disk {
                on-io-error detach;
        }

        net {
                # sndbuf-size rcvbuf-size timeout connect-int ping-int ping-timeout max-buffers
                # max-epoch-size ko-count allow-two-primaries cram-hmac-alg shared-secret
                # after-sb-0pri after-sb-1pri after-sb-2pri data-integrity-alg no-tcp-cork
                cram-hmac-alg sha1;
                shared-secret “MySQL-HA”;     
        }

        syncer {
                # rate after al-extents use-rle cpu-mask verify-alg csums-alg
                rate 35M;
        }
}

### 配置资源文件 redisk.res
# vi /usr/local/drbd/etc/drbd.d/redisk.res             
resource redisk {
  on orasrv1.xlk.com {
    device    /dev/drbd0;
    disk      /dev/sdb1;
    address  192.168.21.10:7789;
    meta-disk internal;
  }
  on orasrv2.xlk.com {
    device    /dev/drbd0;
    disk      /dev/sdb1;
    address  192.168.21.13:7789;
    meta-disk internal;
  }
}

### 也可以通过 copy 方式直接将配置文件 copy 到节点 2,则无需单独配置 2 个配置文件,如下:
# scp /usr/local/drbd/etc/drbd.d/* 192.168.21.13:/usr/local/drbd/etc/drbd.d/
# scp /usr/local/drbd/etc/drbd.conf 192.168.21.13:/usr/local/drbd/etc/
6、创建 device metadata(两节点执行)
# drbdadm create-md redisk
Writing meta data…
initializing activity log
NOT initialized bitmap
New drbd meta data block successfully created.

[root@orasrv1 drbd.d]# drbdadm up redisk
[root@orasrv1 drbd.d]# /etc/init.d/drbd status
drbd driver loaded OK; device status:
version: 8.3.15 (api:88/proto:86-97)
GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by root@orasrv1.xlk.com, 2015-10-31 09:16:05
m:res    cs            ro                ds                    p  mounted  fstype
0:redisk  WFConnection  Secondary/Unknown  Inconsistent/DUnknown  C1
5、设置 Primary 节点 (主节点)
以下操作仅在节点 1(orasrv1)执行
# drbdadm primary –force redisk
0: State change failed: (-2) Need access to UpToDate data
Command ‘drbdsetup 0 primary’ terminated with exit code 17
# drbdadm — –overwrite-data-of-peer primary redisk
# mkfs.ext3 /dev/drbd0
# mkdir /data
# mount /dev/drbd0 /data
# df -h |grep data
/dev/drbd0      2.0G  36M  1.9G  2% /data

### 在第二个节点上创建 /data 目录
# mkdir /data
### 查看 drbd 状态信息:
#cat /proc/drbd

四、DRBD 数据镜像功能测试
### 首先在主节点完成如下操作
# cp -R /usr/local/drbd /data
# ls /data/drbd
etc  lib  sbin  share  var
# du -sh /data/drbd
324K    /data/drbd

# umount /data
# drbdadm secondary redisk
# cat /proc/drbd
version: 8.3.15 (api:88/proto:86-97)
GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by root@orasrv1.xlk.com, 2015-10-31 10:58:13
 0: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r—–
    ns:1044700 nr:0 dw:33780 dr:1045517 al:3 bm:64 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

### 在备用节点完成如下操作 
# drbdadm primary redisk
# cat /proc/drbd
version: 8.3.15 (api:88/proto:86-97)
GIT-hash: 0ce4d235fc02b5c53c1c52c53433d11a694eab8c build by root@orasrv2.xlk.com, 2015-10-31 10:59:26
 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r—–
    ns:0 nr:1044700 dw:1044700 dr:672 al:0 bm:64 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
# mount /dev/drbd0 /data
# du -sh /data/drbd    ### 两节点数据目录及大小完全一致
324K    /data/drbd

Linux 高可用(HA)集群之 DRBD 详解 http://www.linuxidc.com/Linux/2013-08/89035.htm

DRBD 中文应用指南 PDF http://www.linuxidc.com/Linux/2013-08/89034.htm

CentOS 6.3 下 DRBD 安装配置笔记 http://www.linuxidc.com/Linux/2013-06/85600.htm

基于 DRBD+Corosync 实现高可用 MySQL http://www.linuxidc.com/Linux/2013-05/84471.htm

CentOS 6.4 下 DRBD 安装配置 http://www.linuxidc.com/Linux/2013-09/90536.htm

DRBD 的详细介绍:请点这里
DRBD 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-11/124760.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计5385字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中