美文网首页
Linux-C-高级-第3章-RAID提升速度及冗余

Linux-C-高级-第3章-RAID提升速度及冗余

作者: sky92archangel | 来源:发表于2018-10-03 19:09 被阅读0次

    目录(持续更新)


    基础-第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
    

    相关文章

      网友评论

          本文标题:Linux-C-高级-第3章-RAID提升速度及冗余

          本文链接:https://www.haomeiwen.com/subject/sgqtaftx.html