RedHat Linux下磁盘阵列技术实现探讨

时间:2022-10-12 12:42:22

RedHat Linux下磁盘阵列技术实现探讨

摘要:目前企事业单位的数据存储量越来越大,对磁盘的存储空间和存储效率的要求也越来越高,因此磁盘阵列技术得到了广泛的应用,本文主要就在RedHat linux平台下磁盘阵列技术的实现进行研究和探讨,以提高磁盘的存储效率。

关键词:RedHat linux 磁盘阵列

中图分类号:TP311.51 文献标识码:A 文章编号:1672-3791(2012)09(b)-0023-01

1 磁盘阵列技术概述

磁盘阵列技术即RAID,原理是利用数组方式来做磁盘组,配合数据分散排列的设计,提升数据的安全性。磁盘阵列是由很多便宜、容量较小、稳定性较高、速度较慢磁盘,组合成一个大型的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。同时利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。

主要的磁盘阵列技术有这几种等级。

(1)RAID-0:等量模式,此模式由相同,型号与容量的磁盘组成,读写性能高,但无容错能力。

(2)RAID-1:映像模式,此模式具有容错能力,但读写性能较低,且比较浪费磁盘空间。

(3)RAID 0+1:RAID 10标准,实际是将RAID 0和RAID 1标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像进行冗余,它的优点是同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性,但是CPU占用率同样也更高,而且磁盘的利用率比较低。

(4)RAID 2:将数据条块化地分布于不同的硬盘上,条块单位为位或字节,并使用称为“加重平均纠错码(海明码)”的编码技术来提供错误检查及恢复.这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂,因此在商业环境中很少使用。

(5)RAID 3:它同RAID 2非常类似,都是将数据条块化分布于不同的硬盘上,区别在于RAID 3使用简单的奇偶校验,并用单块磁盘存放奇偶校验信息。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据;如果奇偶盘失效则不影响数据使用.RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据来说,奇偶盘会成为写操作的瓶颈。

(6)RAID-5:性能与数据备份的均衡考虑,具有容错性,读写效率较高,是目前市场上应用最为广泛的磁盘阵列方法。

2 RedHat linux环境下RAID的配置

这里主要介绍RAID-5的配置。首先我们重点介绍一下RAID-5技术,此技术通过引入数据校验技术来保证数据的安全,在RAID 5上,读/写指针可同时对阵列设备进行操作,提供了更高的数据流量。RAID 5更适合于小数据块和随机读写的数据,RAID 3与RAID 5相比,最主要的区别在于RAID 3每进行一次数据传输就需涉及到所有的阵列盘;而对于RAID 5来说,大部分数据传输只对一块磁盘操作,并可进行并行操作。在RAID 5中有“写损失”,即每一次写操作将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。RAID-5需要最少3块磁盘,磁盘利用率n-1。这种磁盘阵列的数据写入有的类似RAID-0,但它并不使用固定的某块磁盘存放校验数据,而是分散存放在每个磁盘中。因此,当一块磁盘出现了问题,也可以根据其他磁盘中的校验数据进行恢复。

RedHat中RAID-5的配置方法,这里主要使用RedHat本身提供的软件配置方式,由于实验环境的限制,可以使用多个分区模拟多块磁盘,在RedHat平台下允许分区模拟对立磁盘,此方法在实际应用中非常实用。

RAID-5配置基本策略如下。

(1)利用4个分区组成RAID5。

(2)每个分区约为1GB大小,需确定每个分区一样大较佳。

(3)利用一个分区设置为sparedisk,磁盘做数据校验使用。

(4)这个spare disk大小要与其它RAID所需分区一样大。

(5)将此RAID5挂载到/mnt/raid目录下。

在动手配置前首先介绍一下mdadm命令,这是非常实用的RAID创建工具。

mdadm Ccreate Cauto=yes /dev/md[0-9] Craid-devices=N \> --level=[015] Cspare-devices=N /dev/sdx dev/hdx…

具体配置过程如下。

(1)创建分区:fdisk /dev/had。

(2)创建RAID5:mdadm - -detail /dev/mdo。

(3)创建好后可以使用工具:cat /proc/mdstat来检查磁盘阵列的创建状况。

(4)格式化RAID5磁盘:mkfs - t ext4

/dev/md0。

(5)挂载RAID5磁盘:mount/dev/md0 /mnt/disk。

至此基本的RAID5磁盘阵列创建完成。

3 RAID-5的开机自动挂载

这里我们希望能每次开机时磁盘都能自动挂载到系统里,不需要每次开机后都去手动挂载,以节省工作量,在RedHat中设有开机自动挂载文件fstab,只要修改此文件即可。

具体方法如下。

vim /etc/fstab

/dev/md0 /mnt/disk ext4 defaults 1 2

4 RAID-5数据救援方法

在企业的工作环境中,磁盘运行过程中难免会出错,因此掌握磁盘阵列的数据恢复和救援方法是非常必要的,这里仍以在RedHat环境下,模拟出RAID-5的数据救援方法,此方法在实际的工作场景中一样适用。

(1)假设磁盘错误。

复制一些东西到/mnt/disk

cp Ca /install.log /mnt/disk

(2)假设磁盘出错。

mdam Cmanage /dev/md0 Cfail /dev/hda5

(3)通过数据校验盘重建RAID-5。

创建新分区,将其大小设为与其它磁盘阵列磁盘大小一致,用新的分区恢复出错分区。

mdadm Cdetail /dev/md0

fdisk /dev/had

mdadm Cmanage /dev/md0 Cadd /dev/hda9 Cremove /dev/hda5

5 节育

在本文中我们在RedHat Linux环境中实现了RAID-5磁盘阵列技术,他解决了工作人员在工作环境中磁盘容量不足的情况,同时也增强了数据的安全性,提高了工作效率,同时此中软件配置磁盘阵列方法对小型企业而言还能节约设备成本,使实用性很强的技术。

参考文献

[1] 鸟哥.鸟哥的Linux私房菜[M].人民邮电出版社,2010.

[2] 沈伟. Red Hat Linux Fedora Core系统管理与网络配置指南[M].人民邮电出版社,2007.

上一篇:给吉伍么日扎 的一封信(例文) 下一篇:晒一晒我们的幸福观