Linux-C-高级-第3章-RAID提升速度及冗余
2018-10-03 本文已影响0人
sky92archangel
目录(持续更新)
基础-第0章-安装
基础-第1章-基本操作
基础-第2章-磁盘及文件系统管理
基础-第3章-获得帮助
基础-第4章-用户及权限基础
基础-第5章-网络基本配置
基础-第6章-管道,重定向及文本处理
基础-第7章-系统启动详解
进阶-第1章-日志服务
进阶-第2章-DNS域名服务器
进阶-第3章-FTP文件共享服务
进阶-第4章-NFS文件共享服务
进阶-第5章-SMB文件共享服务
进阶-第6章-WEB服务Apache篇
进阶-第7章-电子邮件服务
进阶-第8章-Linux服务基础及管理
高级-第1章-LVM逻辑卷
高级-第2章-高级权限ACL
高级-第3章-RAID提升速度及冗余
高级-第4章-高级网络-网卡绑定,子端口
高级-第5章-SELinux安全系统基础
高级-第6章-IPTable防火墙基础
高级-第7章-Linux远程管理-SSH、VNC
第3章-RAID提升速度及冗余
第一节 RAID原理
传统磁盘劣势
影响性能的组件 CPU IO 内存 硬盘 网卡
计算机整体IO较低
现代计算机总线,内存速度达到5G/s 但是硬盘IO较低
SATA--- <150M/s
SCSI--- <200M/s
SAS --- 200M/s
SSD --- 500M/s
RAID
现代硬盘缺陷IO性能弱 稳定性非常差
RAID (Redundant Array of Independent Disks) 廉价磁盘冗余整列技术
通过多次盘并行,提高计算机储存IO性能
RAID 分为很多类型成为RAID级别 共7类 常用4类:
RAID 0 读写性能
RAID 1 读取性能 冗余性
RAID 5 读取性能 冗余性 最多损坏1块硬盘
RAID 6 读取性能 冗余性 最多损坏2块硬盘
磁盘大小与规格尽量一样
RAID 0
RAID 0最少使用2块磁盘,读写是分开读写到多块盘,来提高读写性能
空间利用率: 所有硬盘空间和
性能: 所有硬盘速度和 理论值
冗余: 无
RAID 1
RAID 1最少使用2块磁盘,写数据是,将数据复制到多块硬盘
读数据时提升读性能
空间利用率: 所有硬盘空间最小那个
性能: 读性能:所有硬盘速度和 写性能下降
冗余: 只要有1块正常 数据正常
RAID 5
RAID 5 至少使用3块硬盘,RAID5 与 RAID0 类似,读写数据会将数据分布式读写
写数据是会进行奇偶校验,将校验信息保存在硬盘上,校验信息进行数据恢复使用
空间利用率: 1-1/n
性能: 读性能:接近RAID 0 写性能:较RAID0 差一点
冗余: 可接受1块硬盘损坏
RAID 6
RAID 6 最少使用4块硬盘,和RAID5 类似,读写数据分布式读写
相较RAID5 会多保存一个奇偶校验信息,所以容易性交RIAD5有提升
空间利用率: 1-2/n
性能: 读性能:接近RAID 5 写性能: 较RAID5 差一点
冗余: 可接受2块硬盘损坏
RAID 实现
实现方法两种
软件实现
通过系统功能或者RAID软件实现,没有独立硬件接口
需要一定的系统资源,(CPU 硬盘接口速度),受操作系统稳定性影响
硬件实现
通过独立的RAID卡实现,有些主板会集成,有些需要购买独立的RAID卡
硬件实现不需要占用其他硬件资源,稳定性和速度都比软件RAID强
第二节
MDADM 软件实现RAID
在linux中通过mdadm这个程序实现RAID
支持RAID : 0 1 4 5 6
基于多块硬盘 分区 或逻辑卷创建RAID
创建好的软件RAID对应/dev/mdn,n为第几个RAID
第一个创建的RIAD为/dev/md0,第二个为/dev/md1
RAID 的信息保存在/proc/mdstat文件中,或通过mdadm命令查看
MDADM命令
创建RAID0
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb /dev/sdc
-C 创建
-a 自动创建对应设备
-l 制定创建RAID级别
-n 磁盘数量
创建好RAID后,需要创建配置文件
mdadm -D --scan > /etc/mdadm.conf
创建文件系统挂载
mkfs.ext4 /dev/md0
mount /dev/md0 /mnt
查看RAID信息
直接mdadm查看信息
mdadm -D /dev/md0
/proc文件也包含RAID相关信息
cat /proc/mdstat
其他创建
RAID 1
mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sdb /dev/sdc
RAID 5
mdadm -C /dev/md0 -a yes -l 5 -n 3 /dev/sdb /dev/sdc /dev/sdd
RAID 6
mdadm -C /dev/md0 -a yes -l 6 -n 4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
备份磁盘
我们也可以使用-x制定一个备份磁盘,备份磁盘一般不用
当出现故障时制定备份磁盘可以自动上线工作
mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
控制RAID
通过命令关闭RAID 关闭之前需要卸载
mdadm -S /dev/md0
启用RAID 需要先挂载
mdadm -R /dev/md0
清除设备
先停用RAID 清空磁盘内RAID所有信息
mdadm --zero-superblock /dev/sdb
模拟RAID故障
实验环境下,可以模拟一个磁盘故障
mdadm /dev/md0 -f /dev/sdb
移除模拟的磁盘故障
mdadm /dev/md0 -f /dev/sdb
换上新硬盘后 添加如RIAD中
mdadm /dev/md0 -a /dev/sdb