RAID磁盘阵列

RAID 独立冗余磁盘阵列
RAID 将一组硬盘连结成来,组成一个阵列,以避免单个硬盘损坏而带来的数据损失,同时亦提供了比单个硬盘高的可用性及容错性。

条带化技术,分散存储在多个盘上。(做切割数据的,存在盘上的对应位置,在外观看来就是条带状的)

raid级别:从读写速度,可靠性来考虑,代表raid的组成方式是不一样的,没有上下级之分。

RAID级别:

  1. RAID0
    RAID0 俗称“条带”,它将两个或多个硬盘组成一个逻辑硬盘,容量是所有硬盘之和,因为是多个硬盘组合成一个,故可并行写操作,写入速度提高,但此方式硬盘数据没有冗余,没有容错,一旦一个物理硬盘损坏,则所有数据均丢失。因而, RAID0 适合于对数据量大,但安全性要求不高的场景,比如音像、视频文件的存储等。
    RAID磁盘阵列
  2. RAID1
    RAID1 俗称“镜像”,它最少由两个硬盘组成,且两个硬盘上存储的数据均相同,以实现数据冗余。 RAID1 读操作速度有所提高,写操作理论上与单硬盘速度一样,但由于数据需要同时写入所有硬盘,实际上稍为下降。容错性是所有组合方式里最好的,只要有一块硬盘正常,则能保持正常工作。但它对硬盘容量的利用率则是最低,只有 50%,因而成本也是最高。 RAID1 适合对数据安全性要求非常高的场景,比如存储数据库数据文件之类。
    RAID磁盘阵列
  3. RAID 1+0
    RAID1+0 是先将数据进行镜像操作,然后再对数据进行分组, RAID 1 在这里就是一个冗余的备份阵列,而 RAID 0 则负责数据的读写阵列。至少要四块盘,两块做 raid1,另两块做raid0, RAID 10 对存储容量的利用率和 RAID 1 一样低,只有 50%.Raid1+0 方案造成了50%的磁盘浪费,但是它提供了 200%的速度和单磁盘损坏的数据安全性,并且当同时损坏的磁盘不在同一 Raid1 中,就能保证数据安全性、 RAID 10 能提供比RAID 5 更好的性能。这种新结构的可扩充性不好,使用此方案比较昂贵,RAID1+0 (同组不能都坏掉) 用的不多。
    RAID磁盘阵列
  4. RAID 5
    RAID5 最少由三个硬盘组成,它将数据分散存储于阵列中的每个硬盘,并且还伴有一个数据校验位,数据位与校验位通过算法能相互验证,当丢失其中的一位时, RAID 控制器能通过算法,利用其它两位数据将丢失的数据进行计算还原。因而 RAID5 最多能允许一个硬盘损坏,有容错性。 RAID5 相对于其它的组合方式,在容错与成本方面有一个平衡,因而受到大多数使用者的欢迎。一般的磁盘阵列,最常使用的就是 RAID5 这种方式。
    RAID磁盘阵列
  5. RAID 6
    RAID6 是在 RAID5 的基础上改良而成的, RAID6 再将数据校验位增加一位,所以允许损坏的硬盘数量也由 RAID5 的一个增加到二个。由于同一阵列中两个硬盘同时损坏的概率非常少,所以, RAID6 用增加一块硬盘的代价,换来了比 RAID5 更高的数据安全性。RAID磁盘阵列

以上是当前主流的 RAID 组合方式,至于如何选择,则是结合到使用者对数据安全性、数据冗余、数据可用性、投入成本等各方面的综合衡量。

硬件raid:

1、阵列卡就是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列零组件构成的。
2、不同的RAID卡支持的RAID功能不同,例如支持RAlD0、RAID1、RAID5、RAID10等。
3、RAID卡的接口类型
  IDE接口、SCSI接口、SATA接口和SAS接口
4、缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据,缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等。

制作硬件RAID案例
博主手头没有硬件,已经爬了
未来有机会随缘更新吧
制作软件RAID案例
实验环境准备:
使用gdisk对硬盘进行分区
RAID磁盘阵列

MD:multi disks 多磁盘,内核中的模块,可以读取配置文件,来实现软件RAID,MD要模拟一个假的RAID设备(逻辑raid)/dev/md #(metadevice)
mdadm
    创建模式 -C
    专业选项:
         -l:指定级别
         -n:设备个数
         -a:{yes|no} 自动为其创建设备文件
         -c:chunk大小,默认为64k,(数据块)
         -x:指定空闲盘的个数
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}   #创建raid0
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sdb{3,4}   #创建raid1
mdadm -C /dev/md1 -a yes -l 5 -n 3 /dev/sdb{5,6,7} #创建raid5

RAID磁盘阵列
RAID磁盘阵列
RAID磁盘阵列
增加热备磁盘: mdadm /dev/md2 -a /dev/sdb8
RAID磁盘阵列
查看指定RAID设备的详细信息:mdadm -D /dev/md
RAID磁盘阵列
查看raid状态: cat /proc/mdstat
RAID磁盘阵列
管理模式 : 选项:-a(--add)-d(--del),-r(--remove),-f(--fail)

模拟损坏:mdadm /dev/md1 -f /dev/sdb3
RAID磁盘阵列
移除损坏磁盘:mdadm /dev/md1 -r /dev/sdb3
RAID磁盘阵列
添加新的硬盘到已有阵列:mdadm /dev/md1 -a /dev/sdb9
RAID磁盘阵列
注意:
1、新增加的硬盘需要与原硬盘大小一致
2、如果原有阵列缺少工作磁盘(如raid1只有一块在工作,raid5只有
2块在工作),这时新增加的磁盘直接变为工作磁盘,如果原有阵列工作正常,则新增加的磁盘为热备磁盘。

停止阵列:mdadm -S /dev/md1
RAID磁盘阵列
监控模式 -F 不常用:mdadm -F /dev/md0
RAID磁盘阵列
增长模式 -G 用于增加磁盘,为阵列扩容:mdadm -G /dev/md2 -n 4
将raid5的热备磁盘增加到阵列工作磁盘中。
RAID磁盘阵列
装配模式 -A 软RAID是基于系统的,当原系统损坏了,需要重新装配RAID。
将停止的阵列重新装配:mdadm -A /dev/md1 /dev/sdb3 /dev/sdb4
--force表示强制执行
RAID磁盘阵列
自动装配:mdadm运行时会自动检查/etc/mdadm.conf 文件并尝试自动装配,因此第一次配置raid后可以将信息导入到/etc/mdadm.conf 中,命令如下:

echo ' DEVICE /dev/hd[a-z] /dev/sd*[a-z]' > /etc/mdadm.conf
mdadm --examine --scan --config=mdadm.conf >> /etc/mdadm.conf

RAID磁盘阵列

上一篇:敖丙跟你聊聊MySQL安全的那些事


下一篇:Linux:raid技术及软raid管理命令mdadm详解