# 强制重读分区表 [root@centos68 ~]# partx -a /dev/sdb 4 创建RAID-5 [root@centos68 ~]# mdadm -C /dev/md0 -a yes sync /dev/sdb7 0 8 21 - faulty /dev/sdb5 7 模拟坏盘并观察数据是否正常访问 拷贝测试数据到RAID
RAID-5 第三种:RAID-5,也称“分布式奇偶校验”,它必须是≥3的倍数块磁盘组成。 在实际的生产环境中,随后相继又推出RAID-2、RAID-3、RAID-4,但是现在只有RAID-3还在用,由于它们各自有不同的缺陷,渐渐就被放弃了,所以又出现了RAID-5,其实RAID-3和RAID RAID-5可以理解为是RAID-0和RAID-1的折中方案。RAID-5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。 而RAID-5是随机分布的,压力也是分散的。所以,RAID-5和RAID-0相比,有容错功能,最多可以坏一个盘,在企业中也是运用比较多的一种RAID。 这种RAID级别是在RAID-5的基础上发展而成,因此它的工作模式与raid 5有异曲同工之妙,不同的是RAID-5将校验码写入到一个驱动器里面,而raid 6将校验码写入到两个驱动器里面,这样就增强了磁盘的容错能力
更多信息 RAID-5 Write Penalty的例子: 存储方案规划的过程中,最基本的考虑因素有两个,性能和容量。性能上的计算看可以分为IOPS和带宽需求。 比如对于RAID-5,条带上的任意磁盘上的数据改变,都会重新计算校验位。如下图所示,一个7+1的RAID-5的条带中,七个磁盘存储数据,最后一个磁盘存储校验位。 由上述几个步骤可见,对于任何一次写入,在存储端,需要分别进行两次读+两次写,所以说RAID-5的Write Penalty的值是4。 RAID-5:RAID-5由于要计算校验位的机制存在,需要读数据、读校验位、写数据、写校验位四个步骤,所以RAID-5的写惩罚值是4。 RAID-6:RAID-6由于有两个校验位的存在,与RAID-5相比,需要读取两次校验位和写入两次校验位,所以RAID-6的写惩罚值是6。
本次小编分享的案例是HP P2000的存储vmware exsi虚拟化平台,由RAID-5由10块lT硬盘组成,其中6号盘是热备盘,由于故障导致RAID-5磁盘阵列的两块盘掉线,表现为两块硬盘亮黄灯。 RAID-5的1个条带组中有1个校验区,1个校验区的大小等于1个条带的大小,根据这一点,针对这个RAID-5案例做分析。如果对VMFS的文件系统不熟悉,可以通过比较法确定条带大小。 当9块盘都定位到同一位置时,通过对比可以判断校验区的走向,继而判断整个RAID-5的走向。 【重组RAID-5】 使用专业恢复工具按照确定的盘序组好,添加进去,如图6所示。选择RAID-5,Stripe size 512KB,左异步。 图片6.png 图6 点击Build进行重组。 整个RAID-5重建好后可以进行验证,如没有问题,本次恢复成功。
RAID-5:一份数据会被分割成固定大小的区块,并分别存储到每个硬盘中。 4 Linux支持的磁盘阵列 目前Linux支持Linear、 RAID-0、RAID-1、RAID-4、RAID-5五种磁盘阵列模式。在五种模式中,RAID-4和RAID-5运行方式相近。 3、 创建RAID-5磁盘阵列 在此介绍RAID-5,是在RAID-0和RAID-1中取一个平衡点,同时具有容错能力,也不会浪费太多硬盘空间,并有助于提高磁盘的I/O性能。 硬件需求: 由于RAID-5需要存储同位校验码,因此要创建此模式的磁盘阵列,至少需要3块或以上的硬盘。 RAID-5将利用一个磁盘来存储同位校验码。因此磁盘容量为n-1个 磁盘的容量。
目录 动态磁盘 基本磁盘和动态磁盘的转换 简单卷 跨区卷 带区卷 镜像卷 RAID-5卷 相关文章:硬盘分区形式(MBR、GPT)、系统引导、文件系统、Inode 下面是你可以在一个动态磁盘中创建的各种不同卷类型: 简单卷 跨区卷 带区卷 镜像卷 RAID-5卷 基本磁盘和动态磁盘的转换 基本磁盘转换为动态磁盘:在转换磁盘之前,必须先关闭该磁盘运行的所有程序,然后右键磁盘 由两块或两块以上硬盘上的存储空间组成,每块硬盘所提供的空间大小必须相同、读写效率高、连续分割数据,并行读/写到多个磁盘 镜像卷 由两块硬盘上的存储空间组成吗,每块磁盘提供相同大小的空间,支持容错,磁盘空间利用率50% RAID
6、单CPU,IO调度器性能比较:AS\Deadline\Noop\CFQ image.png 8CPU,RAID-5的性能比较:AS\DEADLINE\NOOP\CFQ image.png 8CPU ,RAID-5,nr_requests=2560的性能比较:AS\DEADLINE\NOOP\CFQ image.png 16CPU,raid 0 image.png image.png image.png
因此,工程师们发明了RAID-5和RAID-6。RAID-5和RAID-6的实现方式是,对一整块数据,切分成M块,根据这些数据计算出N块冗余校验数据。 对于RAID-5,N=1,对于RAID-6,N=2。这样一来,任意一块磁盘损坏,由于有多块磁盘分担重构的读操作(想一想,为什么),对整个系统IO的影响相对有限。 然而,我们也知道,RAID-5和RAID-6的写操作对IO能力的损耗,由于写惩罚的存在,会成倍消耗磁盘的IO能力。
RAID-5: RAID-6 RAID10 RAID01 RAID-0: 以条带形式将数据均匀分布在阵列的各个磁盘上; 金融等高可用、高安全的数据存储环境 RAID-4:数据交叉存储在2块硬盘中,再由第3块硬盘存储数据的校验码; 1101, 0110, 1011 RAID 常用级别: RAID-0 性能最好 RAID-1 冗余度最高,开销高 RAID-5
当时比较奇怪怎么有这种配置,难道这块300GB的用来装系统、另3块600GB的做RAID-5存数据? 当时我和客户说,图1中这种坏了2块硬盘的可能需要做数据恢复了,因为3块硬盘的RAID-5中同时坏2块,此时换盘是不行了。当时这台服务器已经不能启动了(图2中的服务器还在使用,能进入系统)。 当时这台服务器买的时候是1块300GB的硬盘,财务软件公司的人说一块硬盘不安全,又买了3块600GB的硬盘做的RAID-5,是软件公司的人给配置的。
要为9个磁盘(其中数字9不包括RAID-5或RAID-6奇偶校验磁盘的数量)和64KB的块大小创建一个新的XFS文件系统,使用。 $ mkfs.xfs -d su=64k,sw=9 -l version=2,su=64k /dev/sdc 注意:如果你的数据存储在一个RAID-5或RAID-6卷上,你可能要考虑把文件系统日志放在一个单独的 RAID-1卷上,因为RAID-5和RAID-6的读-改-写开销很大。
RAID-3减少了用于检验的磁盘存储器的个数,从而提高了磁盘列阵的有效容量,一般只有一个检验盘, RAID-4 RAID-4是一种可以独立的对组内各磁盘进行读/写的磁盘列阵,该列阵也只用一个检验盘 RAID -5 RAID-5是RAID-4的一种改进,它不设置专门的检验盘,同一个磁盘上既记录数据,又记录检验信息。
RAID-5 RAID-5对性能和数据备份进行了均衡考虑,实现方式是使用3块或3块以上磁盘组成磁盘阵列。 RAID-5对读性能有较好的提升,由于写入时需要对数据进行同位校验码计算,所以写性能的提升较低于读性能的提升。磁盘空用为:(磁盘数-1)*最小磁盘的大小。
节点配置实例 2.4硬件配置经验总结 1、磁盘故障时Greenplum集群最常见的故障 1.1分析性查询: SAS盘 > SATA盘 1.2高并发小IO查询: 优先SSD或NVMe 2、RAID级别 2.1 RAID 4、硬件监控 5、预留灾备机 RAID-5 VS RAID-10的区别: RAID-5:在容量上会比较大,储存会达到90%的利用率,在读写的性能上比RAID10会好一点,RAID5的可靠性会差很多。
EC可以认为是分布式系统发展起来后, RAID算法在多机系统上的重新实现: RAID-0 相当于单副本; RAID-1 相当于2副本; RAID-5 相当于EC的k+1模式, k个数据块+1个校验块; 上面这个k+1的例子是和我们平时使用的 [RAID-5] 是类似的. [RAID-5] 通过对k个(可能是11个左右)数据块求出1份校验和的数据块. 但在工程上, [RAID-5] 的计算并不是自然数的求和, 而是用bit-AND操作代替加法的. 后面细聊. 现实中使用的[RAID-5]和[RAID-6]都是 EC 算法的子集. EC 是更具通用性的算法. 但因为实现的成本(主要是恢复数据时的计算开销), [RAID-5] 和 [RAID-6]在单机的可靠性实现中还是占主流地位. 但随着存储量的不断增大, 百PB的存储已经不算是很极端场景了.
GP存储对标基本都是百TB,相对来说和我们所说的大数据体系的PB还是有很大差异的,GP里面计算的数据总体都是比较重要,而且总体的存储容量不会特别大,磁盘现在有8T的规格,如果放12块盘,则RAID-5会有近 70多T的存储空间,而RAID-10则有48T左右的空间,如果RAID-5同时坏了2块盘就尴尬了,但是对于RAID-10来说还是有转机的,这个情况之前碰到过一次,在替换一块坏盘的时候,工程师发现另外一块盘也快坏了 ,RAID-5要一块一块的换,当时还因为这个熬了个通宵,想了很多预案,说了这么多是想表达,GP存储的容量不用那么大,如果在损失一定存储容量的基础上能够最大程度降低隐患是很划算的,所以在存储容量和性能的综合之上
RAID-Z 实际上是 RAID-5 的变体,为了克服 RAID-5 的 WriteHole 问题,即“意外重启后数据和奇偶校验信息变得不一致”。
笔者平时比较喜欢采用Linear或者RAID-5这两种磁盘阵列类型。 为此就给大家分析一下这两个磁盘类型的特点。 Linear磁盘阵列模式比较简单,它只是起到一个磁盘的整和作用。 RAID-5磁盘阵列模式是现在主流的磁盘阵列模式。在这种模式下,Linux操作系统会将数据切割成固定大小的小区块,并同时分别保存到不同的硬盘中。
常用的RAID技术等级有RAID-0、RAID-1、RAID-10、RAID-5、RAID-6,RAID-0是数据在从内存缓冲区写入磁盘时,并发写入N块磁盘,显然具有极快的数据读写速度,但是数据备份能力极差 RAID-5和RAID-6则分别可以允许损坏一块、两块磁盘,当磁盘损坏时可以通过其他磁盘上的数据和校验数据进行恢复。 总结一下RAID技术等级的区别,访问速度:RAID-0>RAID-5>RAID-6>RAID-10>RAID-1,数据可靠性:RAID-1>RAID-10>RAID-6>RAID-5>RAID-0,磁盘利用率 :RAID-0>RAID-1>=RAID-0>RAID-5>RAID-6 然而RAID技术不是银弹,磁盘故障导致服务实例不可用的概率远比实例本身崩溃死亡的要高,此时人工进行流量切换操作的话相当繁琐,VIP
整体对比下区别 [img] RAID-5 Write Penalty的例子: 存储方案规划的过程中,最基本的考虑因素有两个,性能和容量。性能上的计算看可以分为IOPS和带宽需求。 比如对于RAID-5,条带上的任意磁盘上的数据改变,都会重新计算校验位。如下图所示,一个7+1的RAID-5的条带中,七个磁盘存储数据,最后一个磁盘存储校验位。 由上述几个步骤可见,对于任何一次写入,在存储端,需要分别进行两次读+两次写,所以说RAID-5的Write Penalty的值是4。 RAID-5:RAID-5由于要计算校验位的机制存在,需要读数据、读校验位、写数据、写校验位四个步骤,所以RAID-5的写惩罚值是4。 RAID-6:RAID-6由于有两个校验位的存在,与RAID-5相比,需要读取两次校验位和写入两次校验位,所以RAID-6的写惩罚值是6。