DRBD 8.3使用Debian蚀刻的第三节点复制

DRBD 8.3使用Debian Etch进行的第三个节点复制

DRBD 8.3 + Debian Etch安装和设置指南

第三节点设置

作者:Brian Hellman

最近发布的DRBD 8.3现在将“第三节点”功能作为一个免费的组件。 本文档将介绍在标准Debian Etch安装中设置第三个节点的基础知识。 在本教程末尾,您将具有可用作SAN,iSCSI目标,文件服务器或数据库服务器的DRBD设备。

注意:LINBIT支持客户可以跳过第1节并利用软件包存储库。

LINBIT已经提供了第三个节点解决方案,请联系他们在salesbit的linbit.com获取更多信息。

前言:

设置如下:

  • 三个服务器: alphabravofoxtrot
  • alphabravo是主要和次要本地节点
  • foxtrot是远程网络上的第三个节点
  • alphabravo192.168.1.x网络( eth0 )上都有接口用于外部连接。
  • 使用172.16.6.10.20alphabravoeth1 )之间存在用于复制的交叉链接
  • Heartbeat提供了一个192.168.5.2的虚拟IP,与地理位置不同的灾难恢复节点进行通信

第1节:安装源

需要在3个节点中的每一个上完成这些步骤。

先决条件:

  • 使
  • gcc
  • glibc开发库
  • 柔性扫描仪发生器
  • 当前内核的头

在命令行中输入以下命令作为特权用户以满足这些依赖关系:

apt-get install make gcc libc6 flex linux-headers-`uname -r` libc6-dev linux-kernel-headers

一旦安装依赖关系,请下载DRBD。 最新版本始终可以在http://oss.linbit.com/drbd/获取 。 目前是8.3。

cd /usr/src/ 
wget http://oss.linbit.com/drbd/8.3/drbd-8.3.0.tar.gz

下载完成后:

  • 解压缩DRBD
  • 输入源目录
  • 编译源码
  • 安装DRBD
tar -xzvf drbd-8.3.0.tar.gz
cd /usr/src/drbd-8.3.0/
make clean all
make install

现在加载并验证模块:

modprobe drbd
cat /proc/drbd
version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by root@alpha, 2009-02-05 10:36:11

一旦这三个节点中的每一个完成,请继续下一节。

第2节:心跳配置

设置第三个节点需要在DRBD之上堆叠DRBD。 虚拟IP需要第三个节点连接,为此,我们将设置一个简单的Heartbeat v1配置。 这个部分只能在alphabravo上完成。

安装心跳:

apt-get install heartbeat

编辑authkeys文件:

vi /etc/ha.d/authkeys
auth 1
1 sha1 yoursupersecretpasswordhere

文件创建完成后,请更改文件的权限。 如果不遵循此步骤,心跳将不会启动。

chmod 600 /etc/ha.d/authkeys

authkeys文件复制到bravo中

scp /etc/ha.d/authkeys bravo:/etc/ha.d/

编辑ha.cf文件:

vi /etc/ha.d/ha.cf
debugfile /var/log/ha-debug
	logfile /var/log/ha-log
	logfacility     local0
	keepalive 1
	deadtime 10
	warntime 5
	initdead 60
	udpport 694
	ucast eth0 192.168.1.10
	ucast eth0 192.168.1.20
	auto_failback off
	node alpha
	node bravo

ha.cf文件复制到bravo中

scp /etc/ha.d/ha.cf bravo:/etc/ha.d/

编辑haresources文件,这里创建的IP将是我们第三个节点引用的IP。

vi /etc/ha.d/haresources
alpha IPaddr::192.168.5.2/24/eth0

haresources文件复制到bravo中

scp /etc/ha.d/haresources bravo:/etc/ha.d/

在两台服务器上启动心跳服务以启动虚拟IP:

alpha:/# /etc/init.d/heartbeat start
bravo:/# /etc/init.d/heartbeat start

Heartbeat会弹出新界面( eth0:0 )。

注意:可能需要一分钟的时间才能使界面起作用。

alpha:/# ifconfig eth0:0
eth0:0 Link encap:Ethernet HWaddr 00:08:C7:DB:01:CC
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

第3节:DRBD配置

DRBD的配置通过drbd.conf文件完成。 所有节点( alphabravofoxtrot )都需要相同。 请注意, usage-count设置为yes ,这意味着它将通知Linbit您已经安装了DRBD。 没有收集个人信息。 请参阅此页面了解更多信息:

global { usage-count yes; }

resource data-lower {
  protocol C;
  net {
    shared-secret "LINBIT";
  }
syncer {
	rate 12M;
}

  on alpha {
    device     /dev/drbd1;
    disk       /dev/hdb1;
    address    172.16.6.10:7788;
    meta-disk  internal;
  }

  on bravo {
    device    /dev/drbd1;
    disk      /dev/hdd1;
    address   172.16.6.20:7788;
    meta-disk internal;
  }
}

  resource data-upper {
  protocol A;
  syncer {
    after data-lower;
    rate 12M;
    al-extents 513;
  }
  net {
        shared-secret "LINBIT";
  }
  stacked-on-top-of data-lower {
        device /dev/drbd3;
        address 192.168.5.2:7788; # IP provided by Heartbeat
        }

  on foxtrot {
    device     /dev/drbd3;
    disk       /dev/sdb1;
    address    192.168.5.3:7788; # Public IP of the backup node
    meta-disk  internal;
  }
}

第4节:准备DRBD设备

现在配置到位,创建alphabravo的元数据。

alpha:/usr/src/drbd-8.3.0# drbdadm create-md data-lower
Writing meta data...
initializing activity log
NOT initialized bitmap
New drbd meta data block successfully created.
bravo:/usr/src/drbd-8.3.0# drbdadm create-md data-lower
Writing meta data...
initialising activity log
NOT initialized bitmap
New drbd meta data block successfully created.

现在开始使用alphabravo的 DRBD:

alpha:/usr/src/drbd-8.3.0# /etc/init.d/drbd start
bravo:/usr/src/drbd-8.3.0# /etc/init.d/drbd start

验证下级DRBD设备是否连接:

cat /proc/drbd
version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by root@alpha, 2009-02-05 10:36:11
0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r---
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:19530844

告诉阿尔法成为主要节点:

注意:正如命令所述,这将覆盖bravo上的任何数据:现在是一个很好的时间去抓住你最喜欢的饮料。

alpha:/# drbdadm -- --overwrite-data-of-peer primary data-lower
alpha:/# cat /proc/drbd
version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by root@alpha, 2009-02-05 10:36:11
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r---
ns:3088464 nr:0 dw:0 dr:3089408 al:0 bm:188 lo:23 pe:6 ua:53 ap:0 ep:1 wo:b oos:16442556
[==>.................] sync'ed: 15.9% (16057/19073)M
finish: 0:16:30 speed: 16,512 (8,276) K/sec

数据同步完成后,在alpha数据上创建元数据,然后是foxtrot

注意资源是data-upper,而--stacked选项仅在alpha上。

alpha:~# drbdadm --stacked create-md data-upper
Writing meta data...
initialising activity log
NOT initialized bitmap
New drbd meta data block successfully created.
success
foxtrot:/usr/src/drbd-8.3.0# drbdadm create-md data-upper
Writing meta data...
initialising activity log
NOT initialized bitmap
New drbd meta data block sucessfully created.

打开堆叠资源,然后使alpha成为data-upper的主要:

alpha:/# drbdadm --stacked adjust data-upper
foxtrot:~# drbdadm adjust data-upper
foxtrot:~# cat /proc/drbd
version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by root@foxtrot, 2009-02-02 10:28:37
1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent A r---
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:19530208
alpha:~# drbdadm --stacked -- --overwrite-data-of-peer primary data-upper
alpha:~# cat /proc/drbd
version: 8.3.0 (api:88/proto:86-89)
GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by root@alpha, 2009-02-05 10:36:11
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---
ns:19532532 nr:0 dw:1688 dr:34046020 al:1 bm:1196 lo:156 pe:0 ua:0 ap:156 ep:1 wo:b oos:0
1: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent A r---
ns:14512132 nr:0 dw:0 dr:14512676 al:0 bm:885 lo:156 pe:32 ua:292 ap:0 ep:1 wo:b oos:5018200
[=============>......] sync'ed: 74.4% (4900/19072)M
finish: 0:07:06 speed: 11,776 (10,992) K/sec

再喝一次

同步完成后,通过/ dev / drbd3访问您的DRBD块设备。 这将写入本地节点和远程第三个节点。 在您的心跳配置中,您将使用“drbdupper”脚本启动/ dev / drbd3设备。 玩的开心!

DRBD®和LINBIT®是奥地利LINBIT的注册商标。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏