RAID6是RAID5的升级版,它有两个分布式奇偶校验,即使两个磁盘都发生故障,它仍然具有容错能力。在两个磁盘同时发生故障的情况下,系统的关键任务操作仍然可以执行。它类似于RAID5,但更强大,因为它使用额外的磁盘进行奇偶校验。在之前的文章中,我们研究了RAID5中的分布式奇偶校验,但在本文中,我们将研究具有双分布式奇偶校验的RAID6。除非您还安装了专用的RAID控制器,否则不要指望性能会比其他RAID更好。在RAID6中,即使我们丢失了2个磁盘,我们仍然可以通过更换磁盘、从奇偶校验构建数据来取回数据。在Linux中安装RAID6要创建RAID6,一个组至少需要4个磁盘。RAID6甚至有些组的盘数更多,所以多个硬盘捆绑在一起,读取数据时同时从所有磁盘读取,所以读取速度会更快,写入数据时,因为跨多个磁盘写入数据,有条纹,性能会很差。现在,很多人都在讨论为什么要用RAID6,它的性能和其他RAID相比没有那么好。问这个问题首先要知道的是,如果你需要高容错就去RAID6。在每个对数据库有高可用性要求的环境中,他们都需要RAID6,因为数据库是最重要的,需要保护无论花费多少,它在视频流环境中也非常有用。RAID6的优点和缺点良好的性能。RAID6更昂贵,因为它需要两个独立的磁盘来实现奇偶校验功能。两个磁盘的容量将丢失以保存奇偶校验信息(双重奇偶校验)。即使两块磁盘损坏,数据也不会丢失。更换损坏的磁盘后,我们可以根据校验和重建数据。读取性能优于RAID5,因为它从多个磁盘读取,但对于没有专用RAID控制器的设备,写入性能会很差。要求创建RAID6至少需要4个磁盘。您也可以添加更多磁盘,但必须有专用的RAID控制器。使用软件RAID,我们不会在RAID6中获得更好的性能,因此我们需要一个物理RAID控制器。如果您不熟悉RAID设置,我们建议您先阅读以下RAID文章。介绍RAID级别和概念使用mdadm工具创建软件RAID0(条带化)使用两个磁盘创建RAID1(镜像)创建RAID5(带分布式奇偶校验的条带化)我的服务器设置操作系统:CentOS6.5FinalIP地址:192.168.0.228主机名:rd6.tecmintlocal.com磁盘1[20GB]:/dev/sdb磁盘2[20GB]:/dev/sdc磁盘3[20GB]:/dev/sdd磁盘4[20GB]:/dev/sde这是第5部分在一个由9部分组成的系列中,我们将看到如何使用四个20GB磁盘(名为/dev/sdb、/dev/sdc、/dev/sdd和/dev/sde)来创建和设置软件RAID6(条带双分布平价)。第1步:安装mdadm工具并检查磁盘1.如果您关注了我们最近的两篇RAID文章(第2部分和第3部分),我们已经展示了如何安装mdadm工具。如果你直接看这篇文章,我们先来介绍一下在Linux系统中如何使用mdadm工具来创建和管理RAID。首先,根据您的Linux发行版使用以下命令进行安装。#yuminstallmdadm[RedHat系统]#apt-getinstallmdadm[Debain系统]2.安装工具后,然后验证所需的四个磁盘,我们将使用以下fdisk命令检查是否创建RAID磁盘。#fdisk-l|grepsd在Linux中查看磁盘3、创建RAID磁盘之前,首先查看我们的磁盘是否创建了RAID分区。#mdadm-E/dev/sd[b-e]#mdadm--examine/dev/sdb/dev/sdc/dev/sdd/dev/sde#或者查看磁盘上的RAID分区注意:上图中,有nodetection对任何super-block或说四个磁盘上不存在RAID。现在我们开始创建RAID6。#p#步骤2:为RAID6创建磁盘分区4.现在使用下面的fdisk命令在/dev/sdb、/dev/sdc、/dev/sdd和/dev/sde上为RAID创建分区。这里我们将展示如何在sdb磁盘上创建分区,相同的步骤也可以应用于其他分区。创建/dev/sdb分区#fdisk/dev/sdb按照说明创建分区,如下图所示。按n创建一个新分区。然后按P选择主分区。接下来选择分区号1。只需按两次Enter键选择默认值。然后,按P打印创建的分区。按L列出所有可用类型。按t修改分区。键入fd为Linux设置RAID类型,然后按Enter确认。然后再次使用p查看我们所做的更改。使用w保存更改。创建/dev/sdb分区创建/dev/sdc分区#fdisk/dev/sdc创建/dev/sdc分区创建/dev/sdd分区#fdisk/dev/sdd创建/dev/sdd分区#p#创建/dev/sdePartition#fdisk/dev/sde创建/dev/sde分区5.创建分区后,检查磁盘的超级块是一个好习惯。如果超级块不存在,我们可以像上面那样创建一个新的RAID。#mdadm-E/dev/sd[b-e]1#mdadm--examine/dev/sdb1/dev/sdc1/dev/sdd1/dev/sde1#或检查新分区上的Raid*检查新分区上的RAID*第3部分步骤:创建md设备(RAID)6.现在您可以使用以下命令创建RAID设备md0(即/dev/md0),并将RAID级别应用于所有新创建的分区,然后确认RAID设置。#mdadm--create/dev/md0--level=6--raid-devices=4/dev/sdb1/dev/sdc1/dev/sdd1/dev/sde1#cat/proc/mdstatcreateRaid6device7.你也可以使用watch命令查看当前创建RAID的进程,如下图所示。#watch-n1cat/proc/mdstat检查RAID6创建过程8.使用以下命令验证RAID设备。#mdadm-E/dev/sd[b-e]1注意:上面的命令会显示四个磁盘的信息,比较长,所以没有截取它的完整输出。9.接下来,验证RAID阵列以确认重新同步过程已开始。#mdadm--detail/dev/md0检查Raid6阵列#p#步骤4:在RAID设备上创建文件系统10.使用ext4为/dev/md0创建文件系统并将其挂载到/mnt/raid6。这里我们使用ext4,但您可以使用您选择的任何类型的文件系统。#mkfs.ext4/dev/md0在RAID6上创建文件系统11.将创建的文件系统挂载到/mnt/raid6,验证挂载点下的文件,可以看到lost+found目录。#mkdir/mnt/raid6#mount/dev/md0/mnt/raid6/#ls-l/mnt/raid6/12.在挂载点下创建一些文件,向任何文件添加一些文本并验证其内容。#touch/mnt/raid6/raid6_test.txt#ls-l/mnt/raid6/#echo"tecmintraidsetups">/mnt/raid6/raid6_test.txt#cat/mnt/raid6/raid6_test.txt验证RAID内容13.在/etc/fstab中添加如下条目,系统启动时自动挂载设备,不同的操作系统环境挂载点可能不同。#vim/etc/fstab/dev/md0/mnt/raid6ext4defaults00自动挂载RAID6设备14.接下来执行mount-a命令验证fstab中的条目是否正确。#mount-av验证RAID是否自动挂载步骤5:保存RAID6的配置15.请注意默认情况下RAID没有配置文件。我们需要使用以下命令手动保存它,然后检查设备/dev/md0的状态。#mdadm--detail--scan--verbose>>/etc/mdadm.conf#cat/etc/mdadm.conf#mdadm--detail/dev/md0保存RAID6配置检查RAID6状态#p#Step6:增加一块备用盘16.现在,4块盘已经用了,其中2块作为校验信息。在某些情况下,如果其中任何一个磁盘发生故障,我们仍然可以获取数据,因为RAID6中使用了双重奇偶校验。如果第二个磁盘也发生故障,我们可以在第三个磁盘发生故障之前添加一个新的磁盘。创建RAID组时可以添加备用盘,但我在创建RAID组前并没有定义备用盘。但是,我们可以在磁盘故障后或创建RAID组时添加备用磁盘。现在我们已经创建了RAID,让我向您展示如何添加备用磁盘。出于演示目的,我热插入了一个新的HDD磁盘(即/dev/sdf),让我们验证磁盘是否已连接。#ls-l/开发/|grepsd检查新磁盘17.现在再次确认新连接的磁盘没有配置RAID,使用mdadm检查。#mdadm--examine/dev/sdf检查新磁盘中的RAID注意:和往常一样,我们前面已经为四个磁盘创建了分区,同样,我们使用fdisk命令为新插入的磁盘创建了新分区。#fdisk/dev/sdf为/dev/sdf创建一个分区18.在/dev/sdf中创建一个新分区后,确认新分区上没有RAID,然后将备用磁盘添加到RAID设备/dev/md0,并验证添加的设备。#mdadm--examine/dev/sdf#mdadm--examine/dev/sdf1#mdadm--add/dev/md0/dev/sdf1#mdadm--detail/dev/md0在sdf分区上验证Raid添加sdf分区到Raid*添加sdf分区到RAID*验证sdf分区信息第7步:检查RAID6容错19.现在,让我们检查当阵列中的任何一个磁盘发生故障时备用驱动器是否会自动工作。为了测试,我手动将磁盘标记为故障设备。这里我们将/dev/sdd1标记为故障磁盘。#mdadm--manage--fail/dev/md0/dev/sdd1检查RAID6FaultTolerance20.让我们查看RAID详细信息并检查备用磁盘是否开始同步。#mdadm--detail/dev/md0检查RAIDAutosync哇!在这里我们看到备用磁盘被激活并开始重建过程。在底部,我们可以看到故障磁盘/dev/sdd1被标记为故障。您可以使用以下命令查看进程重建。#cat/proc/mdstatRAID6Autosync结论:这里我们看到了如何使用四个磁盘设置RAID6。此RAID级别是那些具有高冗余度的昂贵设置之一。在接下来的文章中,我们将了解如何设置嵌套RAID10等。敬请关注。
