Raid 原理及创建软raid
传统磁盘的劣势:
影响计算机性能的组件一般包括:cpu,主板总线IO,内存IO,磁盘IO,网卡IO。
现代处理器的性能已经很高了,但是计算机整体IO性能较弱,严重影响了计算机的性能。
现代计算机总线,内存速度可以达到5G每秒,甚至更高,但是磁盘的IO性能总体来说是较低的。
磁盘类型 |
速度 |
SATA |
<150M/s |
SCSI |
<200M/s |
SAS |
200M/s每秒左右 |
SSD |
500M/s每秒左右 |
但是硬盘绝大多数是计算机的性能瓶颈。
RAID简述:
1、现代磁盘性能的缺陷:IO性能极弱,稳定性差;
2、RAID(Redundant Arrays of Independent Disks,RAID),廉价磁盘冗余阵列的技术是通过多磁 盘 , 并行运行来提高计算机存储IO性能。
3、RAID分为很多种类,称之为RAID级别,现代RAID共有7类,常用的有以下4类。
RAID 0:读写性能
RAID 1:读写性能、冗余性
RAID 5:读写性能、冗余性(1块硬盘)
RAID 6:读写性能、冗余性(2块硬盘)
RAID 0
RAID 0最少使用两块磁盘,在读写时,将数据分开读写到多磁盘的方式来提高读写性能。
空间利用率:所有磁盘空间之和;
性 能:所有磁盘速度之和;
冗余 能力:无
RAID 1
RAID 1最少使用2块磁盘,在读写时,将数据复制到多块磁盘,在读数据的时候,已提供冗余性。同时从多块硬盘中读取数据,以提高读性能。
空间利用率:所有磁盘空间最小那块;
性 能:读性能为磁盘速度之和,写性能有所减弱;
冗余 能力:只要一块磁盘正常,数据就正常;
RAID 5
RAID 5最少使用3块磁盘,raid5与Raid0相似,读写数据的时候会将数据分布式的读写在所有硬盘上,但是在写数据的时候会对数据进行奇偶校验运算,将奇偶校验信息同时保存在硬盘上,校验信息可以进行数据恢复时使用。
空间利用率:1-1/n;
性 能:读性能接近RAID0,写性能较RAID0弱一些;
冗余 能力:可以接受1块磁盘损坏;
RAID 6
RAID 6最少使用4块磁盘,raid6与Raid5相似,读写数据的时候会将数据分布式的读写在所有硬盘上,并保存奇偶校验信息,但是会比RAID5多保存一份校验信息,所以冗余性较RAID5有所提升。
空间利用率:1-2/n;
性 能:读性能接近RAID5,写性能较RAID5弱一些;
冗余 能力:可以接受2块磁盘损坏;
RAID实现
1、RAID机制通过使用多硬盘并行运行的方式来提高硬盘的IO性能。
2、RAID分为多种,称之为RAID level ,RAID共有7级:RAID0-RAID6.
3、RAID常用级别:RAID0,RAID1,RAID5,RAID6;
RAID级别 |
速度 |
冗余性 |
磁盘利用率 |
RAID0 |
读写性能有所提升 | 0 |
所有磁盘之和 |
RAID1 |
读性能提升 |
N |
一个磁盘大小 |
RAID5 |
读写性能有所提升 |
1 |
1-1/n |
RAID6 |
读写性能有所提升 |
2 |
1-2/n |
RAID的实现分为:硬件RAID、软件RAID。
MDADM(多磁盘管理)
1、每种操作系统都有软件RAID的实现
2、在Linux中软件RAID通过mdadm这个程序实现
3、Mdadm支持的的RAID级别有RAID0,RAID1,RAID5,RAID6;
4、Mdadm可以基于多块硬盘、分区或逻辑卷创建软件RAID
5、创建好的软件RAID对应的/dev/mdn,n为第几个RAID,如创建第一个RAID为/dev/md0,第二个 为/dev/md1
6、RAID的信息保存在/proc/mdstat文件中,或者通过mdadm命名查看。
创建软件RAID
关于mdadm命令创建软件RAID的几个参数:
-c: | 创建一个新的RAID |
-a: | 自动创建对应的设备 |
-l: | 指定要创建的RAID级别 |
-n: | 指定硬盘的数量 |
创建软RAID示例及基本步骤:
1、创建RAID 0
Mdadm –C /dev/md0 –a yes –l 0 –n 2 /dev/sdb /dev/sdc
2、创建RAID 1
Mdadm –C /dev/md0 –a yes –l 1 –n 2 /dev/sdb /dev/sdc
3、创建RAID 5
Mdadm –C /dev/md0 –a yes –l 5 –n 3 /dev/sdb /dev/sdc /dev/sdd
4、创建RAID 6
Mdadm –C /dev/md0 –a yes –l 6 –n 4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
5、我们也可以使用-x 参数指定一个备份磁盘,备份磁盘一般不使用,当出现故障磁盘时,指定的备
份磁盘可以自动上线工作:
Mdadm –C /dev/md0 –a yes –l 5 –n 3 –x /dev/sdb /dev/sdc /dev/sdd /dev/sde
6、创建好RAID之后,我们需要创建一个配置文件:
Mdadm –D –scan >/etc/mdadm.conf
7、创建文件系统之后挂载使用
Mkfs.ext4 /dev/md0 Mount /dev/md0 /mnt
查看RAID信息:
1、我们可以使用mdadm命令查看相关信息
Mdadm –D /dev/md0
2、/proc中的文件也包含RAID相关信息:
Cat /etc/mdstat
控制RAID:
1、可以通过以下命令关闭一个RAID,关闭前先卸载:
Mdadm –s /dev/md0
2、通过以下命令可以启用指定的RAID:
Mdadm –R /dev/md0
3、清除RAID 信息
Mdadm –zero-superblock /dev/md0
模拟故障:
1、实验环境下,我们可以通过以下命令模拟一个磁盘的故障
Mdadm /dev/md0 -f /dev/sdb
2、之后,我们可以将故障磁盘移除
Mdadm /dev/md0 -r /dev/sdb
3、换上新硬盘后,我们可以将新硬盘添加到RAID中:
Mdadm /dev/md0 –a /dev/sdb
转载于:https://blog.51cto.com/liulihuan/1693436
Raid 原理及创建软raid相关推荐
- linux命令:watch 、lsmod、mdadm 创建软RAID
lsmod 列出模块: [root@xuelinux mnt]# lsmod Module Size Used by ext2 ...
- centos6中创建软raid方法
raid概述: 组建raid阵列命令: mdadm:模式化的工具 /etc/mdadm.conf -A Assemble 装配模式 -C Create 创建模式 -C:专用选项 ...
- linux自学笔记——RAID级别特性以及软RAID的实现
RAID,Redundant Arrays of Inexpensive Disks 廉价冗余磁盘阵列,又称为Redundant Arrays of Independent Disks,独立冗余磁盘阵 ...
- linux trim raid,CentOS7下组建软Raid磁盘阵列并开启Trim|延长SSD寿命
给自己24核24G内存的独服买了个120G的SSD作OS盘,然后两个1.5T的SSD组raid1作数据库盘,加上原有的3个2THDD组raid5作仓库盘.不多说了直接上干货: 先fdisk -l看看磁 ...
- linux软raid阅读笔记,linux自学笔记——RAID级别特性以及软RAID的实现
RAID,Redundant Arrays of Inexpensive Disks廉价冗余磁盘阵列,又称为Redundant Arrays of Independent Disks,独立冗余磁盘阵列 ...
- linux软raid 修复,Linux下软RAID维护 | 聂扬帆博客
上一篇文章配置软RAID中配置好Raid之后,还需要进行日常的维护操作,比如其中一块物理硬盘损坏,我们需要进行更换故障磁盘的操作,下面我们将模拟raid1中磁盘损坏来讲解软RAID的维护操作. 一.硬 ...
- linux软raid阅读笔记,linux_软RAID阅读笔记.pdf
linux_软RAID阅读笔记.pdf RAID 读笔记 前言 1 1 RAID 概述 1 1.1 RAID 在linux 内核中的位置 2 1.2 mdadm 3 1.3 参考文献 3 2 RAID ...
- linux增加阵列磁盘空间,Linux Ubuntu系统下通过LVM创建软raid来实现硬盘合并大小
将两块空硬盘合并为"一块",挂载到指定目录下,达到在一个目录使用3块硬盘所有空间的效果. 条件: 硬盘1 /dev/sda 硬盘2 /dev/sdb 硬盘3 /dev/sdc 方法 ...
- RAID及软RAID的实现,包括各级别RAID的原理及各级别RAID的实现
计算机内部的核心部件 对于计算机来讲,核心部件有cpu 内存其中:cpu从内存中取得数据从而进行运算,由于内存是易失性设备,若是做成非易失性设备,代价是非常高昂的.但是由于cpu内部具有各级缓存,寄存 ...
最新文章
- 将BST转换为有序的双向链表!
- 机器视觉:mvs相机调试
- 计算机网络总结:第二章 应用层
- 漫画:什么是ConcurrentHashMap
- python中import os_Python常用模块os--与操作系统交互
- JS中实现replaceAll的方法
- AVR单片机计算器C语言源程序,一个基于AVR单片机的计算器程序.doc
- python3类的继承详解_python3 多重继承机制
- CVPR 2020 | 序列化的三维形状生成网络PQ-NET
- URAL 2081 Faulty dial
- java比对文本文件_Java编程实现比对两个文本文件并标记相同与不同之处的方法...
- 技术分享 | 一文带你了解测试流程体系
- 优化理论09-----线性等式约束问题的投影方法、投影最速下降算法、解决方向查找问题(DFP)、牛顿法的修正在线性等式约束、变度量法
- 20191112每日一句
- php7 电子书 下载,php7.3.8中文电子手册
- JDY-24M主机使用手册
- Linux服务与管理-step1
- 微信小程序发布正式版规则,累的教训(小程序审核常见驳回类型-可用性和完整性问题)
- 【视频加水印】Video Watermark Pro视频添加动态水印(附工具下载地址)
- 听说你想了解微服务架构
热门文章
- java 方法 链路 trace_arthas命令trace追踪方法链路
- Modown收费资源下载 WordPress 1.7主题+Erphpdown插件
- 香港买thinkpad大陆使用,大陆可以享受售后服务吗
- 使用 jQuery Mobile 与 HTML5 开发 Web App (二) —— jQuery Mobile 基础
- 更简洁的方式修改Chrome的User Agent,轻松体验移动版网络
- 有关UIView、subview的几个基础知识点-IOS开发 (实例)
- php 检测domain信息
- 确保PHP安全 不能违反的四条安全规则
- 全排列及相关扩展算法(四)——原始中介数通过逆推求原排列算法
- 《C和指针》——字符串常量实际上是个指针,你真的懂了么?