服务器硬件和RAID设置

一、RAID磁盘阵列介绍

RAID,是Redundant Array of Independent Disks的缩写,中文简称为独立冗余磁盘阵列。
把多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。
组成磁盘阵列的不同方式称为RAID级别(RAID Levels)。
存储性能和数据备份技术,相较于LVM
主要级别:RAID0,1,5,6,1+0等(raid0+1,raid5+0)。

RAID 0

RAID 0,即等量模式,性能最佳,不安全。
特点:
需要相同磁盘容量,不然影响性能
切割chunk(4kb-1mb)进行存储,默认512KB。
越多块磁盘组成的RAID 0性能越好,每块负责得数据量更低了。
只要有一块磁盘损坏,所有数据都会遗失无法读取。
正常不会单独应用raid0。
最少2块硬盘。

RAID 1

RAID 1,即镜像模式,安全性高(数据备份),性能差。
特点:
让同一份数据,完整的保存在2块磁盘上。
也需要相同磁盘容量,不同容量将会以小的容量为主。
2块磁盘互为备份(偶数2,4,6)。
整体RAID容量少了50%。

RAID 5*

RAID 5,均衡模式。
特点:
需要3块以上磁盘。
每次写入,都会产生奇偶校验值,每次都记录在不同的盘里。
总容量,整体磁盘数量-1块。N-1
默认仅能支持1块磁盘损坏的情况下,保证数据的正常存储。例如:Ap=A1+A2+A3,A3丢失,可以通过Ap-A1-A2来算出A3。但是损失2块就没法存储了。
读取性能尚可,写入性能一般。

RAID 6

跟RAID5不同的是,会产生2种不同算法的奇偶校验值。
需要4块以上,但是允许出错的磁盘变为了2块。

RAID 10(1+0)*

RAID 1+0

特点:

即先让4块磁盘组成raid 1,再将2组raid1设置成1组raid 0。

raid设置 bios_磁盘阵列


高成本RAID 10 总和RAID 5

二、实现RIAD

硬raid
需要raid卡,磁盘接在raid卡上,有自己的cpu,处理速度快,从硬件的层面上处理
然后开机进行raid配置,然后装系统
但是不同厂商的raid卡配置会不一样

软raid
mdadm是multiple devices admin的简称,它是Linux下的一款标准的软件 RAID 管理工具
mdadm管理工具,最小化默认不安装,需要yum安装
mdadm是一个用于创建、管理、监控RAID设备的工具,它使用linux中的md驱动。
mdadm程序是一个独立的程序,能完成所有软件RAID的管理功能,主要有7中使用模式。

阵列卡介绍

阵列卡是用来实现RAID功能的板卡
通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列组件构成的
不同的RAID卡支持的RAID功能不同
例如支持RAIDO、RAID1、RAID5、RAID10等RAID卡的接口类型
lDE接口、scSI接口、SATA接口和SAS接口

阵列卡的缓存

缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。
缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素。
不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等。

配置

rpm -q mdadm
madam -C(创建)-v(显示详情) /dev/md0 -l 0(级别) -n2(数量) /dev/sdb /dev/sdc(/dev/sd[b,c])
ls /dev/md0
mdadm -D(查询详细信息) /dev/md0
/etc/mdadm.conf 配置文件需要写入,在格式化之前
mdadm -Ds(扫描)v /dev/md0
mdadm -Dsv /dev/md0 > /etc/mdadm.conf 写入重定向
如果多个RAID,得追加,不能重定向
cat /proc/mdstat 查看实时RAID状态
mkfs.xfs /dev/md0
mkdir/raid0
mount /dev/md0 /raid0/
df -hT

破坏:

cp -p /etc/passwd /raid0/

mdadm /dev/md0 -f(破坏) /dev/sdb

raid设置 bios_磁盘阵列_02


删除sdb,结果sdb还有,sdc没有了。

raid设置 bios_磁盘阵列_03


其实是原来的sdc变成了sdb,UUID没变

RAID1
umount /dev/md0
 mdadm -S /dev/md0 停止
 rm -rf /etc/mdadm.conf 删除配置文件
 [root@localhost md0]# mdadm -C -v /dev/md11 -l 1 -n 2 /dev/sdg /dev/sdh //不带热备盘
 [root@localhost md0]# mkfs.xfs /dev/md11
 [root@localhost md0]# mkdir /md11
 [root@localhost md0]#
 [root@localhost md0]# mount /dev/md11 /md11
 [root@localhost md0]# df -h
 [root@localhost md11]# mdadm -D /dev/md11
 [root@localhost md11]# mdadm /dev/md11 -f /dev/sdg
 mdadm -r /dev/md11 /dev/sdg //将坏的硬盘从raid1中移除
 [root@localhost ~]# mdadm -a /dev/md11 /dev/sdi //将raid1中加入一块新的硬盘sdi,现在又变成2块了
 mdadm -D /dev/md11 //查看状态会发现需要一点时间同步
 mdadm -Dvs /dev/md11 > /etc/mdadm.conf //最后同步配置文件
 为防止这种情况,可以在一开始创建Raid1的时候就指定热备盘
 [root@localhost md0]# mdadm -C -v /dev/md1 -l 1 -n 2 -x 1 /dev/sdd /dev/sde /dev/sdf创建raid1(带热备盘)
RAID 5
[root@localhost ~]# mdadm -C -v /dev/md5 -l5 -n3 -x1 /dev/sd[b,c,d,e] //3块盘做raid5,1块盘做热备
 [root@localhost ~]# mdadm -D /dev/md5 //查看状态
 [root@localhost ~]# mdadm -Dvs > /etc/mdadm.conf //写入配置
 [root@localhost ~]# mkfs.xfs /dev/md5
 [root@localhost ~]# mkdir /raid5
 [root@localhost ~]# mount /dev/md5 /raid5/
 [root@localhost ~]# df -hT
 [root@localhost ~]# mdadm /dev/md5 -f /dev/sdb -r /dev/sdb停止阵列:
 umount /dev/md5
 mdadm -S /dev/md5
 [root@localhost ~]# cat /etc/mdadm.conf //配置文件还有便于恢复
 [root@localhost ~]# cat /proc/mdstat //内存中已经读不到了
 [root@localhost ~]# mdadm -As //s表示恢复的时候会去配置文件中扫描
 [root@localhost ~]# cat /proc/mdstat
 [root@localhost ~]#mdadm -G /dev/md5 -n 4 //原来3块现在变成4块
创建raid10(用4块硬盘)

两种方法
1、可以先做raid1再做raid0
2、mdadm -C -v /dev/md10 -l 10 -n 4 /dev/sd[k,l,m,n]

删除raid不用了,磁盘做其他用(也要先卸载)
[root@localhost ~]# umount /dev/md5
[root@localhost ~]# mdadm -S /dev/md5

删除配置文件
[root@localhost ~]# rm -rf /etc/mdadm.conf

清除磁盘中raid标识
[root@localhost ~]# mdadm --zero-superblock /dev/sdb
[root@localhost ~]# mdadm --zero-superblock /dev/sdc
[root@localhost ~]# mdadm --zero-superblock /dev/sdd
[root@localhost ~]# mdadm --zero-superblock /dev/sde
–zero-superblock 擦除设备中的MD超级块

注意:raid1可以添加也可以减少磁盘
raid5只可以添加不可以减少磁盘