版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux数据安全运维Linux服务器安全管理高级运维项目3“十四五”高等教育网络空间安全产业人才培养系列丛书“互联网+”新形态立体化一体精品教材+数据镜像软件——DRBD01DRBD的基本功能04010203实时性当应用修改磁盘数据时,会立即进行数据复制。透明性应用程序的数据存储在镜像设备上时是透明和独立的。数据可以存储在基于网络的不同服务器上。异步镜像:当本地写操作完成时,开始对远程主机进行写操作。同步镜像当本地应用申请写操作时,同时在远程主机上进行写操作。DRBD(DistributedReplicatedBlockDevice,分布式复制块设备)是由内核模块和相关脚本构成的,用于构建高可用性的集群。它通过网络来镜像整个设备。DRBD可以被看作一种网络RAID1,允许用户在远程机器上建立一个本地块设备的实时镜像。DRBD的功能如下。DRBD的构成DRBD是Linux内核存储层中的一个分布式存储系统,具体由两部分构成,一部分是内核模板,主要用于虚拟一个块设备;另一部分是用户空间管理程序,主要用于与DRBD内核模块进行通信,以管理DRBD资源。在DRBD中,资源主要包含DRBD设备、磁盘配置、网络配置等。一个DRBD系统由两个以上的节点构成,分为主用节点和备用节点两个角色。在主用节点上,可以对DRBD设备进行无限制的读写操作,以初始化、创建、挂载文件系统。在备用节点上,DRBD设备无法挂载,只能接收主用节点发送的数据。也就是说,备用节点不能用于读写访问。这样做的目的是保证数据缓冲区的一致性。主用节点和备用节点不是固定不变的,可以通过手动方式来改变。备用节点可以升级为主用节点,而主用节点也可以降级为备用节点。DRBD与集群的关系大部分现行高可用集群使用的是共享存储器,因此存储器被连接到多个节点(使用共享的SCSI总线或光纤通道实现)。DRBD也可以作为一个共享的设备,但是它不需要任何不常见的硬件。DRBD可以在IP网络中运行,而IP网络在价格上比专用的存储网络经济得多。目前,DRBD每次只允许对一个节点进行读写访问,这对一般的故障切换高可用性集群来讲已经足够了。兼容性DRBD可以在IDE、SCSI分区和整个驱动器上运行,但不能在回路模块设备上运行(如果一定要这样做,则DRBD会发生死锁)。DRBD也不能在回送网络设备中运行。有时,接收线程正在从网络中提取数据块,并试图将其放入高速缓存器,而系统却需要将一些数据块从高速缓存器中写入磁盘。这种情况往往发生在接收器环境中,因为所有的请求都已被接收器的块占用。DRBD的主要特性单主模式是使用较为频繁的一种模式,主要用于高可用集群的数据存储方面,解决集群中数据共享的问题。在单主模式下,集群中只有一个主用节点可以对数据进行读写操作。可以用在单主模式下的文件系统有ext3、ext4、XFS等。01单主模式双主模式只能在DRBD8.0及之后的版本中使用,主要用于负载均衡集群,解决数据共享和一致性问题。在双主模式下,集群中存在两个主用节点。由于这两个主用节点都可能会对数据进行并发读写操作,因此单一的文件系统无法满足需求。此时,需要使用共享的集群文件系统来解决并发读写问题。常用在这个模式下的文件系统有GFS、OCFS2等,通过集群文件系统的分布式锁机制可以解决集群中两个主用节点同时操作数据的问题。02双主模式DRBD的主要特性DRBD提供了3种复制方式。协议A:只要本地磁盘写入已经完成,并且数据包已经进入发送队列,就认为一个写操作已经完成。这种方式在远程节点发生故障或网络发生故障时,可能会导致数据丢失,因为需要写入远程节点的数据可能仍然处于发送队列中。协议B:只要本地磁盘写入已经完成,并且数据包已经到达远程节点,就认为一个写操作已经完成。这种方式在远程节点发生故障时,可能会导致数据丢失。协议C:只有当本地和远程节点的磁盘都确认了写操作完成时,才能认为一个写操作已经完成。这种方式不会发生任何数据丢失。目前应用较为广泛的协议是协议C。但是,在这种方式下,磁盘的I/O吞吐量取决于网络带宽。建议在网络带宽较好的情况下使用这种方式。03复制模式DRBD的主要特性这个特性只能在DRBD8.2.0及之后的版本中使用。DRBD使用MD5、SHA-1或CRC-32C等加密算法对信息进行终端到终端的完整性验证。利用这个特性,DRBD会为每个复制到远程节点的数据生成信息摘要,同时远端节点也会采用同样的方式对复制的数据块进行完整性验证。如果验证信息不匹配,那么远端节点将请求主节点重新发送,从而保证镜像数据的完整性和一致性。04传输完整性校验由于集群节点间的网络连接临时故障、集群软件管理干预或人为错误,导致DRBD的两个节点都切换为主用节点而断开连接,这就是DRBD的脑裂问题。发生脑裂意味着数据不能从主用节点复制到备用节点上,这将导致DRBD两个节点的数据不一致,并且无法进行合并。05脑裂通知和自动修复+DRBD的安装与配置02安装环境说明DRBD安装的配置信息如表3-1所示。其中,主用节点和备用节点两块磁盘/dev/sdb1是未经格式化的物理磁盘分区,大小均为12GB。为了不浪费磁盘空间,建议主用节点和备用节点镜像磁盘的大小保持一致。DRBD的安装操作DRBD的安装非常简单,可以通过源码编译和yum源方式来实现。这里我们直接使用yum源方式进行安装,其他系统操作的安装方法基本类似。下面介绍详细安装过程。(1)通过yum源方式安装DRBD服务:(2)加载DRBD模块到内核中:(3)检查DRBD是否安装成功:(4)查看drbd.ko的安装路径:快速配置一个DRBD镜像系统DRBD的配置文件主要分为3部分:global、common和resource。在运行时,默认读取配置文件的路径是/etc/drbd.conf。drbd.conf配置文件描述了DRBD的一些配置参数及DRBD设备与磁盘分区的映射关系。在默认情况下,这个文件是空的,但在DRBD的源代码包中包含了配置文件的样例。如果DRBD是通过yum源方式安装的,则可以到对应的样例目录下复制一份drbd.conf配置文件到/etc目录下。在本书中,样例目录是/usr/share/doc/drbd83-8.3.13/。drbd.conf配置文件中的内容如下:+DRBD的安装与配置03启动DRBD01在两个分区节点执行操作在启动DRBD之前,需要分别在两台主机的hdb1分区上创建用于存储DRBD记录信息的数据块,具体操作是分别在两台主机上执行:02在两个节点上启动DRBD服务在两个drbd节点上启动DRBD服务:最好在两个节点上同时启动DRBD服务。启动DRBD03在任意节点上查看节点状态登录任意drbd节点,并执行“cat/proc/drbd”命令,输出结果如下:输出结果的含义如下。ro:表示角色信息。在第一次启动DRBD服务时,两个drbd节点默认都处于Secondary状态。ds:表示磁盘状态信息,其中“Inconsistent/Inconsistent”就是“不一致/不一致”,表示两个drbd节点的磁盘数据状态不一致。ns:表示网络发送的数据包信息。dw:表示磁盘写信息。dr:表示磁盘读信息。启动DRBD04设置主用节点由于默认没有主用节点和备用节点之分,因此需要设置两个主机的主次节点。选择需要设置为主用节点的主机,并执行以下命令:或者执行以下命令:在第一次执行完此命令后,如果需要设置哪个是主用节点,则可以使用另外一个命令:在执行此命令后,开始同步两台主机对应磁盘的数据,输出结果如下:启动DRBD05挂载DRBD设备由于mount操作只能在主用节点上进行,因此只有在设置主用节点后才能格式化磁盘分区。同时,在两个节点中,同一时刻只能有一台主机处于primary状态,而另一台主机处于secondary状态。处于secondary状态的节点上不能挂载DRBD设备。要在备用节点上挂载DRBD设备,必须停止备用节点的DRBD服务或将备用节点升级为主用节点。下面首先将DRBD设备格式化为ext3文件系统,然后在主用节点上挂载该设备,操作命令如下:在完成挂载后,就可以在/mnt目录下写数据了。/mnt目录下的数据会自动同步到备用节点中。测试DRBD数据镜像为了验证DRBD的数据镜像功能,我们做一个简单的测试。首先,在DRBD主用节点的/mnt目录下创建一个100MB的文件,操作命令如下:在完成操作后,在备用主机上查看文件是否已经同步过去。为了保证数据的一致性,需要首先停止备用节点的DRBD服务,操作命令如下:测试DRBD数据镜像在维护系统时,或者在高可用集群中,当主用节点出现故障时,需要切换主备节点的角色。切换主备节点有两种方式,分别是停止DRBD服务切换和正常切换。+DRBD实训案例04实训前的准备01实验拓扑在一次DRBD实训课上,老师为学生提供了如图3-2所示的设备、IP地址规划和网络拓扑结构,让学生安装和配置DRBD,从而使学生熟练掌握DRBD的应用。实训前的准备02实验环境(1)操作系统。CentOS6.4X86_64。(2)软件环境。kmod-drbd84-8.4.2-1.el6_3.elrepo.x86_64。drbd84-utils-8.4.2-1.el6.elrepo.x86_64。(3)EPEL源。实训前的准备03DRBD配置工具drbdadm:高级管理工具,用于管理/etc/drbd.conf配置文件,并向drbdsetup和drbdmeta发送指令。drbdsetup:配置载入kernel的DRBD模块,平时很少直接用。drbdmeta:管理META数据结构,平时很少直接用。04DRBD配置文件DRBD的主配置文件为/etc/drbd.conf。为了便于管理,通常会将/etc/drbd.conf主配置文件分成多份,并且这些配置文件都保存在/etc/drbd.d目录中。在主配置文件中使用“include”指令即可将这些配置文件片段整合起来。通常,/etc/drbd.d目录中的配置文件为global_common.conf和所有以.res结尾的文件。其中,global_common.conf配置文件中主要定义global段和common段,而一个以.res结尾的文件用于定义一个资源。实训前的准备05DRBD资源Resourcename:可以是除空白字符以外的任意的ACSII字符。DRBDdevice:在双方节点上,是此DRBD设备的设备文件,一般为/dev/drbdN,其主设备号为147。Diskconfiguration:在双方节点上,是各自提供的存储设备。Nerworkconfiguration:双方数据同步时所使用的网络属性。06DRBD支持的底层设备DRBD需要在底层设备上构建,并创建一个块设备。对用户来说,一个DRBD设备就像一块物理磁盘,可以在其中创建文件系统。DRBD支持的底层设备如下。(1)一个磁盘或磁盘的某个分区。(2)一个softraid设备。(3)一个LVM的逻辑卷。(4)一个EVMS(EnterpriseVolumeManagementSystem,企业卷管理系统)的卷。(5)其他任何块设备。实训前的准备07DRBD配置步骤(1)安装DRBD。(2)配置资源文件(定义资料名称、磁盘、节点信息和同步限制等)。(3)将DRBD加入系统服务chkconfig--adddrbd。(4)初始化资源组drbdadmcreate-mdresource_name。(5)启动服务servicedrbdstart。(6)设置Primary主机,并同步数据。(7)分区、格式化/dev/drbd*。(8)对一个节点进行挂载。(9)查看状态。DRBD配置实训安装DRBD配置DRBDDRBD双主模式配置示例+数据恢复工具——extundelete05如何使用“rm-rf”命令在Linux系统下,通过“rm-rf”命令可以直接从硬盘删除任何数据,并且不会有任何提示。与Windows系统不同的是,Linux系统中没有回收站的功能。这意味着,一旦数据被删除,就无法通过常规手段进行恢复。因此,在使用“rm-rf”命令时,必须非常慎重,比较稳妥的方法是把命令参数放到后面,这样可以起到提醒的作用。另外,还有一个方法,即通过mv命令将要删除的内容移动到系统的/tmp目录下,并编写一个定时执行脚本来清理这些内容。这种方法可以在一定程度上降低误删除数据的风险。保证数据安全的最佳方法是进行备份。虽然备份不是万能的,但是没有备份是万万不行的。任何数据恢复工具都有一定的局限性,不能保证完整地恢复所有数据。因此,将备份作为核心,将数据恢复工具作为辅助是运维人员必须坚持的一个准则。extundelete与ext3grep的异同在Linux系统下,基于开源的数据恢复工具有很多,常见的有debugfs、R-Linux、extundelete和ext3grep等,其中比较常用的是extundelete和ext3grep。这两个工具的恢复原理基本相同,但extundelete的功能更加强大。extundelete是一种基于Linux系统的数据恢复工具,它通过分析文件系统的日志和解析所有文件的inode信息来恢复Linux系统下主流的ext3、ext4文件系统中被误删除的文件。ext3grep仅支持ext3文件系统的恢复。在恢复速度方面,extundelete要比ext3grep快很多。因为extundelete的恢复机制是同时扫描inode和恢复数据,并且支持单个文件恢复、单个目录恢复、inode恢复、block恢复、完整磁盘恢复等。ext3grep显得有些笨拙,它需要首先扫描所有要恢复数据的inode信息,然后才能开始恢复数据,因此在恢复速度上相对较慢,并且在功能上也不支持目录恢复、时间段恢复等。extundelete的恢复原理在Linux系统下,可以通过“ls-id”命令来查看某个文件或目录的inode值。例如,查看根目录的inode值:根目录的inode值一般为2。extundelete在恢复文件时并不依赖特定的文件格式。首先,extundelete会通过文件系统的inode信息来获得当前文件系统下所有文件的信息,包括存在的和已经删除的文件。这些信息包括文件名称和inode。然后,extundelete利用inode信息并结合日志查询该inode所在的block位置,包括直接块和间接块等信息。最后,extundelete利用dd命令备份这些信息,从而恢复数据文件。安装extundelete目前extundelete的稳定版本是extundelete-0.2.4。在安装extundelete之前,需要安装e2fsprogs和e2fsprogs-libs这两个依赖包。e2fsprogs和e2fsprogs-libs的安装非常简单,这里不进行介绍。下面是extundelete的编译安装过程:extundelete的使用方法在安装完extundelete后,就可以执行数据恢复操作了。下面介绍extundelete中每个参数的含义。extundelete的使用方法如下。命令格式:其中,options(参数)的含义如下。--version、-[vV]:显示软件版本号。--help:显示软件帮助信息。--superblock:显示超级块信息。--journal:显示日志信息。--afterdtime:时间参数,表示在某段时间之后被删的文件或目录。--beforedtime:时间参数,表示在某段时间之前被删的文件或目录。action(动作)的含义如下。--inodeino:显示节点“ino”的信息。--blockblk:显示数据块“blk”的信息。extundelete的使用方法--restore-inodeino[,ino,...]:恢复命令参数,表示恢复节点“ino”的文件。恢复的文件会被放在当前目录下的RESTORED_FILES文件夹中,并且使用节点编号作为扩展名。--restore-file'path':恢复命令参数,表示将恢复指定路径的文件,并把恢复的文件放在当前目录下的RECOVERED_FILES目录中。--restore-files'path':恢复命令参数,表示恢复在路径中已列出的所有文件。--restore-all:恢复命令参数,表示尝试恢复所有目录和文件。-jjournal:从已经命名的文件中读取扩展日志。-bblocknumber:使用之前备份的超级块打开文件系统,一般用于查看现有超级块是不是当前所需的文件。-Bblocksize:指定数据块大小以打开文件系统,一般用于查看已知大小的文件。+实战:extundelete恢复数据的过程06通过extundelete恢复单个文件01模拟数据被误删除环境在通过extundelete恢复数据之前,首先需要模拟一个数据被误删除环境。这里以ext3文件系统为例,简单的模拟操作过程如下。ext4文件系统下的恢复方式与此相同。通过extundelete恢复单个文件02卸载磁盘分区在将数据误删除后,应立刻卸载这块磁盘分区:03查询可恢复的数据信息通过extundelete命令查询/dev/sdc1分区中可恢复的数据信息:根据输出信息可知,标记为Deleted状态的是已经删除的文件或目录。同时,可以看到每个已删除文件的inode值。接下来开始恢复文件。通过extundelete恢复单个文件04恢复单个文件执行如下命令开始恢复文件:extundelete中恢复单个文件的参数是--restore-file。这里需要注意的是,--restore-file参数后面指定的是恢复文件路径,这个路径是文件的相对路径。相对路径是相对于原来文件的存储路径而言的,如果原来文件的存储路径是/data/passwd,那么在--restore-file参数后面直接指定passwd文件即可;如果原来文件的存储路径是/data/test/mytest.txt,那么在--restore-file参数后面通过“test/mytest.txt”进行指定即可。在成功恢复文件后,extundelete命令默认
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 特殊技能执行绩效表
- 新能源汽车产品经理销售KPI考核表
- 自动控制原理(第3版)课件 第7章 控制系统的状态变量分析与设计
- 关于2026年出口许可证申请进度反馈函5篇范本
- 游戏设计师及策划者绩效考评表
- 系统维护及故障排查作业指导书
- 电力行业设备维护工程师设备运行维护情况绩效评定表
- 机械维修保养与故障排除指南
- 报销审批进度更新函8篇
- 关注心理健康促进全面发展,小学主题班会课件
- 2024-2025学年八年级下学期数学期中试题汇编《垂直平分线与角平分线》含答案解析
- 合同服务终止协议书范本
- 关于加强医药卫生领域廉政建设的意见(2025年版)解读
- 生产主管的转正述职报告
- 剧毒化学品、放射源存放场所治安防范要求内容
- 海南省海上搜救应急预案
- DL-T825-2021电能计量装置安装接线规则
- 零基础自学暖通设计教程
- 水平定向钻进管线铺设工程技术规范样本
- 《静脉血标本采集》课件
- 电路分析教程学习指导与题解
评论
0/150
提交评论