DRBD 网络RAID1

DRBD 是内核模块方式实现的块级别同步复制技术,利用网卡进行块复制、可以有效处理高并发。

Yum方式安装:
yum -y install epel-release
yum -y install drbd83* kmod-drbd83 ; modprobe  drbd
源码安装方式:
http://oss.linbit.com/drbd/8.4/drbd-8.4.4.tar.gz
./configure --prefix=/usr/local/drbd --with-km 
make KDIR=/usr/src/kernels/2.6.32-504.el6.x86_64/
make install
cp drbd/drbd.ko /lib/modules/`uname -r`/kernel/lib/
Yum方式和源码方式都需要执行:modprobe drbd 加载DRBD模块。

安装完成并加载drbd模块后,vi修改/etc/drbd.conf配置文件,本文内容如下:
node1为主机 hostname 名
global {
    usage-count yes;
}
common {
syncer { rate 100M; }
}
resource r0 {
 protocol C;
 startup {                                                                          
 }
 disk {
 on-io-error detach;
 #size 1G;
 }
 net {
 }

on node1 {
 device /dev/drbd0;
 disk /dev/sdb;
 address 192.168.1.12:7898;
 meta-disk internal;
 }

on node2 {
 device /dev/drbd0;
 disk /dev/sdb;
 address 192.168.1.13:7898;
 meta-disk internal;
 }
}

配置修改完毕后执行如下命令初始化:
drbdadm create-md  r0  ;
/etc/init.d/drbd restart ;
/etc/init.d/drbd status
如下图:
 以上步骤,需要在两台服务器都执行,两台都配置完毕后,在node2从上面执行如下命令:/etc/init.d/drbd status 看到如下信息,表示目前两台都为从,我们在node1上设置node1为master,命令如下:
drbdadm  --  --overwrite-data-of-peer primary all
mkfs.ext4  /dev/drbd0
mkdir  /app  ;mount /dev/drbd0  /app
(node2无法格式化和挂载的)

停掉node2的drbd服务,挂载 mount -t ext4 /dev/sdb /app 可以看到主上的文件。
自此,DRBD配置完毕,我们可以往/app目录写入任何东西,当master出现宕机或者其他故障,手动切换到backup,数据没有任何丢失,相当于两台服务器做网络RAID1。

很多人谈 DRBD 脑裂而色变、用过就知道了、脑裂不是那么容易就发生的
DRBD 注意不设置自动启动、重启时候手动启动、脑裂的情况发生非常的少
工作中基本不重启 DRBD、更不会重启服务器了、基本上没遇到脑裂的问题

㈠ 优缺点比较

转自 http://www.linuxidc.com/Linux/2013-06/85235.htm

优点

① 没有单点故障的风险暴露

② 没有集群软件通病、如 脑裂

缺点

⑴ 浪费资源

DRBD 的备机目前还不能提供读、所以浪费了资源

大家都知道、生产环境下的 MySQL 服务器都是顶配的、这样在线上浪费一台机器、感觉很可惜的

⑵ DRBD 无法代替备份

DRBD 可能会造成坏数据、不管啥HA、数据备份一定要有、没备份、整个HA瘫痪掉、你也嗝屁了、闪人吧

⑶ 故障转移无法做到秒级以内

⑷ 对于MyISAM 表用处不大

事实上、任何期望高可用的系统、MyISAM 都不会是个选择、因为

MyISAM 的崩溃恢复后需要很多时间修复、并且、会丢失数据

⑸ 增加写操作负担

主要是InnoDB 设置为 innodb_flush_log_at_trx_commit=1

导致许多小的写入和fsync()调用、那么、DRBD同步将会比较缓慢

㈡ 注意事项

① DRBD 和 Linux-HA 版本选择

② DRBD 专门使用一块网卡

③ 心跳网络与vip服务网络分离

④ iptables针对心跳网络放开DRBD、Linux-HA 的端口、VIP可根据自己的应用开启对应端口

⑤ 监控DRBD、Linux-HA 状态、最好做成脚本、自动检测、出问题报警

⑥ 通常都有流量监控系统(mrtg,cacti等)、定期检查机器的负载、流量情况

㈢ 最佳实践

DRBD 只选择复制存放 binlog 的设备、如果、

主动节点失效、可以在被动节点上开启一个日志服务器

然后、对失效主库的所有设备应用这些 binlog 、接下来

可以选择其中一个备库提升为主库、以代替失效的系统

时间: 2024-12-29 16:25:25

DRBD 网络RAID1的相关文章

DRBD磁盘镜像技术详细配置

磁盘镜像技术DRBD 什么是DRBDDRBD是由内核模块和相关脚本构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.它允许用户在远程机器上建立一个本地块设备的实时镜像.也可以把它看成一个网络RAID1 工作原理:DRBD负责接收数据,把数据写到本地磁盘,然后发送给另一个主机.另一个主机再将数据存到自己的磁盘中.目前,DRBD每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群已经够了. DRBD协议:A:数据一旦写入磁盘并发送到网络中就认为完成了写入操作B:收到接受

项目:一次测试环境下的高可用NFS文件服务器(DRBD+heartbeat+NFS)

什么是DRBD? 分布式复制块设备.当你将数据写入本地的DRBD设备上的文件系统时,数据同时会被发送到远程端的另一边的DRBD设备文件系统里,保障数据实时同步,当本地的DRBD设备突然故障,远程节点还保留一份一模一样的数据,根据这个特性,可以结合heatbeat的ha开源软件,实现高可用! 我们都把DRBD理解是网络raid1磁盘阵列. DRBD底层设备可以是 1)一块磁盘,或者一个分区. 2)raid设备. 3)逻辑卷lvm. 4)任何块设备. DRBD支持三种不同的复制协议.协议A,协议B,

drbd 配置

DRBD(Distributed Replicated Block Device),DRBD 号称是 "网络 RAID",开源软件,由 LINBIT 公司开发.DRBD实际上是一种块设备的实现,主要被用于Linux平台下的高可用(HA)方案之中.他有内核模块和相关程序而组成,通过网络通信来同步镜像整个设备,有点类似于一个网络RAID-1的功能.也就是说当你将数据写入本地的DRBD设备上的文件系统时,数据会同时被发送到网络中的另外一台主机之上,并以完全相同的形式记录在文件系统中.本地节点

drbd总结

DRBD(Distributed Replicated BlockDevice),DRBD 号称是 "网络 RAID",开源软件,由 LINBIT 公司开发.DRBD实际上是一种块设备的实现,主要被用于Linux平台下的高可用(HA)方案之中.他有内核模块和相关程序而组成,通过网络通信来同步镜像整个设备,有点类似于一个网络RAID-1的功能.也就是说当你将数据写入本地的DRBD设备上的文件系统时,数据会同时被发送到网络中的另外一台主机之上,并以完全相同的形式记录在文件系统中.本地节点与

DRBD介绍

一. DRBD介绍 DRBD是一种块设备,可以被用于高可用(HA)之中.它类似于一个网络RAID-1功能.当你将数据写入本地 文件系统时,数据还将会被发送到网络中另一台主机上.以相同的形式记录在一个文件系统中. 本地(主节点)与远程主机(备节点)的数据可以保证实时同步.当本地系统出现故障时,远程主机上还会 保留有一份相同的数据,可以继续使用. 在高可用(HA)中使用DRBD功能,可以代替使用一个共享盘阵.因为数据同时存在于本地主机和远程主机上,切换时,远程主机只要使用它上面的那份备份数据,就可以

HA集群之DRBD浅析及实现DRBD高可用

一.DRBD概述 DRBD (Distributed Replicated Block Device) 是 Linux 平台上的分散式储存系统. 由内核模组.用户空间工具组成,通常用于高可用性(high availability, HA)集群.其实现方式是通过网络在服务器之间的对块设备(硬盘,分区,逻辑卷等)进行镜像.你可以把它看作是一种网络RAID1. DRBD的工作模式如下图: DRBD工作的位置在文件系统的buffer cache和磁盘调度器之间,数据进入Buffer Cache后,DRB

DRBD介绍及安装测试

http://freeloda.blog.51cto.com/2033581/1275384 升级内核: http://88fly.blog.163.com/blog/static/1226803902013111345347479/ 常见错误 http://blog.csdn.net/t1anyuan/article/details/52143789 大纲 一.前言 二.DRBD 是什么 三.DRBD 主要功能 四.DRBD 工作原理 五.DRBD与HA 集群 六.DRBD 复制模式 七.DR

Drbd的基本概念及简单的Drbd安装配置

Drbd(Distributed Replicated Block Device)为分布式复制块设备 是内核中的一个模块,要想让其工作起来要借助drbdadm等命令工具 Drbd类似于Raid1(mirror模式),但是Raid1的磁盘位于同一个主机上,通过总线直接连接主机,且两块磁盘必须一样大,因为所谓的镜像是按位对应同步存储的,Raid有控制芯片叫控制器(Controller),直接内置在在主板上:而通过PCI插槽提供的叫适配器(adaptor) Drbd将位于两个主机上的不同磁盘或分区做成

安装配置DRBD

定义: DRBD(Distributed Replicated Block Device) 分布式块设备复制:是linux内核存储层中的一个分布式存储系统,可利用DRBD在两台linux服务器之间共享块设备,文件系统和数据,类似于一个网络RAID1的功能 两台服务器间就算某台服务器出现断电或者宕机也不会对数据有任何影响 当将数据写入到本地主节点的文件系统时,这些数据会通过网络发送到远端另一台从节点上:本地节点和远端从节点数据通过TCP/IP协议保持同步,主节点发生故障时,远端从节点保存着相同的数