码迷,mamicode.com
首页 > 其他好文 > 详细

17 RAID与mdadm管理命令

时间:2019-02-28 18:42:31      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:无法读取   raid   缓解   世纪   目录   数据存储   mic   企业   计算机   

  在"14 磁盘及文件系统管理详解"中,我们详细介绍了磁盘的工作原理,但是,有一点我们一定要明白,作为现在存储数据的主要设备,机械磁盘早就是上个世纪的产品,而它的读写速度与内存、CPU比起来已经不在一个级别上,但是当前“大数据”背景下,我们有大量的数据需要进行存储,这样对磁盘的要求更加高了。

  为了解决,或者是缓解磁盘读写存储速度慢,以及保证数据的冗余性,我们创建了RADI技术,同时,通过mdadm命令来管理软RAID。这一节内容,我们就来详细了解RAID技术和mdadm管理命令。

硬盘的分类(接口)

  我们说电脑的核心部件为CPU、内存和I/O总线;他们之间的大概工作过程如下图:

技术图片

 

    1、我们要知道,系统要实现某一个应用的功能,就需要对应的启动这个应用的进程。而这个进程的运行与否,则取决于内核进程。所以,第一步,我们需要将内核进程调用CPU上,让内核进程调用你要实现的那个应用的进程内容。而这些进程内容默认都是存储在内存中的;

    所以,我们说内存的大小直接决定了进程运行的快慢;

    【这里要注意的是,我们的内存将进程分为一个一个的“页面”,而“页面”的大小正好就是2^n,所以,我们的磁盘上的数据块(block)的大小,也是以2^n来进行存储的,就是为了方便内存调用】

    2、内核进程决定调用的哪个普通进程,比如,我要运行“mkdir”创建目录,则这个时候,“mkdir”的进程就会被调用到CPU上来运行;这个过程就是由内核进程来决定的;

    3、“mkdir”的进程决定了调用磁盘的那些数据,而这个过程则由CPU通过控制总线来向磁盘发起控制指令;例如:运行 “mkdir /test” 则此时,CPU就会控制在 / 目录对应的磁盘来创建 test 目录;

    4、如果是数据调用,则这个数据会通过数据总线,从磁盘上调用到内存中,方便应用进程来对该数据进行处理;

  明白这个过程后,我们需要明白一个问题;不管是在数据传输、还是指令传输的时候,我们的CPU、磁盘、内存都来自于不同的厂家,而这些厂家之间的指令都是不同的。就好像一个说英语的和一个说汉语的之间无法沟通。这时候,我就需要两个东西来解决这个问题:1、驱动;2、控制器(接口)

  驱动我们不多研究,这里我们重点说磁盘控制器:

  主板上不同的接口,就是不同设备的控制器,他们都担任着控制指令转换的任务,也就是将CPU的控制指令装换为各个设备能够识别的控制指令。在保证指令能够读懂的情况下,来进行数据传输;

  在硬盘设备上,我们根据不同的接口来区分不同的硬盘:

    1、IDE并行总线:133Mbps

    2、SATA串行总线:300Mbps、600Mbps

    3、USB3.0串行接口:480Mbps

    4、SCSI(small computer system interface 小型计算机系统接口)并行总线

    5、SAS将SCSI并行总线接口作为串行总线接口

  此时,我们回到我们最初提出的问题,在一台繁忙的服务器上面,单块磁盘没办法满足内存对于数据读取速度的要求了。这是候,就出现了RAID技术;

RAID的工作原理

  RAID原理说白了,就是将多个磁盘同时为服务器提供数据读取与写入的服务;

  原来磁盘用来连接服务器的那个接口,不再用来直接连接硬盘,而是连接一个特定的设备,而这个设备能将一个接口模拟成多个接口,用来连接硬盘,而接主机的那个口依然只有一个,这样,在CPU看来,后面接的硬盘依然是一个,而实际上已经接上了多个磁盘;

  而这个中间设备,我们就叫做RAID(可以是硬件,也可以由软件模拟,模拟的叫软RAID,而硬件搭建的叫硬RAID,这内容我们之后再提),Redundant arrays of dependent disks 独立的磁盘冗余阵列。现在,它已经成为了一个企业级存储的标准解决方案;

条带与镜像

  RAID如何进行数据存储呢?

  100M的数据,将其存储于两个磁盘上,如果按照block单位来存储,则会被切分为过小的数据,不太适合,为了方便将数据存储,我们使用条带技术,将数据均匀的切分为多个“条带”;如下图,将100M的数据分为两个50M的条带分别存储于两块磁盘上;

  在数据进行读取的时候,也是从来块次磁盘上面同时读取;

技术图片

  但是这样来存储数据也有一个问题,如果任何一个磁盘上的数据出现问题,则整个数据就无法读取了;

  RAID如何进行数据冗余呢?(镜像)

技术图片

 

RAID级别

硬RAID与软RAID

mdadm管理命令(软RAID)

 

17 RAID与mdadm管理命令

标签:无法读取   raid   缓解   世纪   目录   数据存储   mic   企业   计算机   

原文地址:https://www.cnblogs.com/BurnovBlog/p/10451852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!