1、RAID是什么
RAID(Redundant arrays of Independent Drives),有“独立磁盘构成的具有冗余能力的阵列”。磁盘阵是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提供整个磁盘系统效能。利用这个技术,将数据切割成很多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检车(parity check)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
RAID有硬件实现RAID与软件实现RAID两种。
硬件RAID是通过硬件(RAID卡或板臷)实现。对OS来说,只看得到虚拟之后的设备。性能比较好,但需要额外的成本。硬件 RAID 的性能较高。他们采用 PCI Express 卡物理地提供有专用的 RAID 控制器。它不会使用主机资源。他们有 NVRAM 用于缓存的读取和写入。缓存用于 RAID 重建时,即使出现电源故障,它会使用后备的电池电源保持缓存。对于大规模使用是非常昂贵的投资。
软件RAID是通过软件来实现,可以在分区级别上实现,灵活性超过硬件RAID,但需要CPU实现RAID芯片的功能。以及只有部分OS支持。软件 RAID 的性能较低,因为其使用主机的资源。 需要加载 RAID 软件以从软件 RAID 卷中读取数据。在加载 RAID 软件前,操作系统需要引导起来才能加载 RAID 软件。在软件 RAID 中无需物理硬件。零成本投资。
2、RAID分级
RAID可以分为多种不同级别,每种级别有其自己的优点与缺点,常见的有以下几种级别:RAID0、RAID1、RAID5、RAID10。下面对这四种RAID分别介绍。
RAID0技术把多块物理硬盘设备通过硬件或者软件的方式串联在一起,zuch组成一个大的卷组,并将数据依次写入到各个物理硬盘中。这样一来,硬盘的读写性能将会提升数倍,但是任意一块硬盘发生故障将导致整个系统的数据都收到损坏,RAID0不具备数据备份和错误修复的能力。
RAID1技术把两块以上的硬盘设备进行绑定,在写入数据的时候,是将数据同时写入到多块硬盘设备上(进行镜像)。当其中某一块硬盘发生故障后,一般会立即自动以热交换的方式来恢复数据的正常使用。该技术非常注重数据的安全性,但是因为在多块磁盘中写入了相同的数据,因此磁盘设备的利用率得以下降。
RAID5技术是把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中。RAID5磁盘阵列组中数据的奇偶校验信息并不是单独保存在某一块硬盘设备中,而是存储到除自身以外的其他每一块硬盘设备上。RAID5技术实际上没有备份硬盘中的真实数据信息,而是当硬盘设备出现问题后通过奇偶校验信息来尝试重建损坏的数据。
RAID10技术是RAID1+RAID0技术的一个组合体,RAID10技术需要至少4块硬盘来组建,其中先分别两两制作成RAID1磁盘阵列,以保证数据的安全性;然后再对两个RAID1磁盘阵列实施RAID0技术,进一步提高硬盘设备的读写速度。
3、软件实现
mdadm 是一个允许我们在 Linux 下配置和管理 RAID 设备的包。如果没有,根据你的 Linux 发行版使用下面的命令安装。
# yum install mdadm (centos)
4、虚拟机(VMWARE14+CenOS7.4)实现RAID0
1)在关机状态下,虚拟机中添加两块硬盘
2)安装mdadm
3)确认新加的磁盘是否连接raid
4)创建RAID分区
5) 创建RAID设备
6)创建文件系统并挂载
7)挂载信息写入配置文件