drbd原理

分布式复制块设备(Distributed Replicated Block Device,drbd)

通过网络实现块设备数据实时镜像,可以简单地理解为一种基于网络的raid1;drbd工作在内核空间,它镜像复制的是二进制数据 ,按位bit对应,数据同时存在于本地主机和远程主机上,在遇到需要切换的时候,远程主机只需要使用它上面的那份备份数据,就可以继续提供服务了;作为高可用性的集群的资源,可以代替作为共享设备



工作原理

  • 进行数据的写操作时,数据到达drbd管理模块后,分为两份,一份正常地写入本地磁盘,另一份通过网络备份到从设备,如图

图片来自官网

进行复制时有以下三个协议(标准)

A协议:异步复制协议Async

  • 一旦本地磁盘写入已经完成,数据包已在本地TCP/IP发送队列中,则认为是完成的
  • 缺点:主节点发生故障时,可能发生数据丢失,因为写入到远程节点上的数据可能仍在发送队列,速率高但数据最易丢失

B协议:半同步复制协议Semi Sync

  • 一旦本地磁盘写入已完成且复制的数据包到达了对等节点peer,即使还没写入磁盘,则认为写在主节点上被认为是完成的
  • 缺点:主节点发生故障时,虽然数据到达了从节点,但有可能还没有写入磁盘

C协议:同步复制协议sync

  • 只有在本地和远程节点的数据都全部写入了磁盘,才是完成的
  • 优点:没有数据丢失,所以一般使用这种协议模式,虽然数据安全性高但效率最低


集群模式

主从模式

  • primary:可读写
  • secondary:文件系统不能挂载,不能读写,只用于备份

全为主模式

  • 基于DLM:Distributed Lock Manager和GFS2/OCFS2集群文件系统实现全为主节点的模型

模式转换

主先卸载变成从,从变成主挂载使用即可



DRBD Source:和高可用集群资源概念不同(应事先做好规划,比如:mydrbd、dev/drbd0、/dev/sda5)

  • Resource name:空格字符外的任意ASCII码
  • DRBD drvice:和raid设备类似/dev/md0、1、...,在双方节点上一般为/dev/drbd1、2、...,主设备号为147
  • disk:在双方节点上的存储设备
  • 网络配置:数据同步时使用的网络配置,带宽速率限制等


相关文件:

/etc/drbd.conf

  • 对以下两个配置文件的包含

/etc/drbd.d/global_common.conf

global_common.conf

  • 定义全局配置 #默认参数即可

common:

  • protocol:协议ABC
  • handlers:处理策略、脑裂策略等
  • startup:同步属性定义启动超时等
  • disk:磁盘设置,I/O等
  • net:网络配置,带宽定义、超时设置、传输加密设置等
  • syncer:速率定义等

/etc/drbd.d/*.res

  • 具体资源配置文件
时间: 2024-08-13 15:13:21

drbd原理的相关文章

DRBD原理知识

DRBD(Distributed Relicated Block Device 分布式复制块设备), 可以解决磁盘单点故障.一般情况下只支持2个节点. 大致工作原理如下图: 一般情况下文件写入磁盘的步骤是: 写操作 --> 文件系统 --> 内存缓存中 --> 磁盘调度器 --> 磁盘驱动器 --> 写入磁盘.而DRBD的工作机制如上图所示,数据经过buffer cache后有内核中的DRBD模块通过tcp/ip协议栈经过网卡和对方建立数据同步. 一.DRBD的工作模式 1.

DRBD原理及特性概述

Distributed Replicated Block Device(DRBD)是一个用软件实现的.无共享的.服务器之间镜像块设备内容的存储复制解决方案.其核心功能通过Linux的内核实现,比文件系统更加靠近操作系统内核及IO栈.DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.你可以把它看作是一种网络RAID.它允许用户在远程机器上建立一个本地块设备的实时镜像. 一.DRBD镜像特性及其工作原理 1.特性 实时性: 当应用对磁盘的数据进行修改时

drbd原理详述

DistributedReplicated Block Device (DRBD) 通过分布式复制块设备,可以为位于IP网络上的两个不同站点的两个块设备创建镜像.和corosync一起使用时,DRBD支持分布式高可用Linux集群,主节点和次节点通过TCP/IP协议保持同步,主节点故障,远程节点保持着相同的数据,可以接替主节点继续工作.两个节点使用heartbeat来检测对方是否存活. DRBD确保数据的两个副本保持相同的方式将主设备上的数据复制到次设备上.可以将其视为联网的RAID1.实时对数

mysql高可用集群——heartbeat+drbd

heartbeat+drbd+mysql是一种早期的mysql高可用技术. 资料来源:http://www.drbd.org DRBD原理:DRBD是对磁盘块操作的复制,可看做网络raid1.不复制磁盘内容,只复制操作.原理可见下图 架构描述 服务器列表 192.168.1.82 192.168.1.1 3306 主 /dev/drbd0 192.168.1.82 192.168.1.2 3306 备 /dev/drbd0 架构图 安装配置: 配置drbd 1.检查机器名解析: 1.查看解析 s

Linux集群之corosync+pacemaker+drbd实现MySQL高可用

一.drbd简介 drbd即Distributed Replicated Block Device(分布式磁盘块设备),drbd一个基于软件实现的,不共享任何东西,通过复制的方式在存储之间构建所谓镜像模式机制的磁盘,从而使得一个数据可以存储为多份, drbd的核心功能是在内核中实现. 二.drbd原理 每一个主机都提供一个块设备,块的大小是一模一样的,当主机上的进程需要存储数据时,需要向内核申请,任何用户空间的进程都没有直接操作硬件的权限,事实上驱动磁盘是在内核靠驱动程序来实现的,任何一个进程存

centos7.5部署heartbeat+DRBD+mysql高可用方案

做双机热备方案需要用到Hearbeat和存储设备(如果没存储设备,可以用DRBD代替,但是最好用存储设备). Heartbeat:如果热备服务器在规定的时间内没有收到主服务器心跳消息那么热备服务器会认为主服务器宕机了,热备服务器就开始工作启动IP.服务等也就是启动故障转移程序.启动故障转移程序的同时并取得主服务器上相关资源服务的控制权,接替主服务器继续不间断的提供服务,从而达到资源及服务高可用性的目的. DRBD(代替存储设备):Distributed Replicated Block Devi

heartheartbeat+drbd+mysql主库热备

一 环境准备 1 环境 主机名 网卡 磁盘 master eth0 桥接模式 eth0(192.168.1.10) 自定义模式(VMnet2)(192.168.2.10)VIP 192.168.1.200/210 系统盘+20G外接磁盘 slave eth0 桥接模式(192.168.1.20) eth1 自定义模式(VMnet2)(192.168.2.20)VIP 192.168.1.200/210 系统盘+20G外接磁盘 server3 eth0 桥接模式 (192.168.1.30) 系统

分布式块设备drbd基础概念及、原理及其主从模式配置

一.drbd基础 1.drbd基础概念 drbd(全称为Distributed Replicated Block Device,简称drbd)分布式块设备复制,说白了就是在不同节点上两个相同大小的设备块级别之间的数据同步镜像.drbd是由内核模块和相关脚本而构成,用以构建高可用性的集群.在高可用(HA)解决方案中使用drbd的功能,可以代替使用一个共享盘阵存储设备.因为数据同时存在于本地主机和远程主机上,在遇到需要切换的时候,远程主机只需要使用它上面的那份备份数据,就可以继续提供服务了. 2.d

drbd 工作原理

1. 什么是DRBD DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实现方式是通过网络来镜像整个设备.它允许用户在远程机器上建立一个本地块设备的实时镜像.与心跳连接结合使用,也可以把它看作是一种网络RAID. 2.DRBD是如何工作的 Drbd 负责接收数据,把数据写到本地磁盘,然后发送给另一个主机.另一个主机再将数据存到自己的磁盘中.目前,drbd 每次只允许对一个节点进行读写访问,这对于通常的故障切换高可用性集群来讲已经足够用了.以后的版本将支持两个节点进行读写存取. 3.