zoukankan      html  css  js  c++  java
  • RAID磁盘阵列的原理与搭建

    RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)可以提供较普通磁盘更高的速度、安全性,所以服务器在安装时都会选择创建RAID。

           RAID的创建有两种方式:软RAID(通过操作系统软件来实现)和硬RAID(使用硬件阵列卡);在企业中用的最多的是:raid1、raid10和raid5。不过随着云的高速发展,供应商一般可以把硬件问题解决掉。

    RAID-0

    条带(strping)

    需磁盘数量:2块以上(大小最好相同)

    是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可.

    特点:

    成本低,可以提高整个磁盘的性能和吞吐量。
    RAID 0没有提供冗余或错误修复能力,速度快.

    任何一个磁盘的损坏将损坏全部数据;磁盘利用率为100%。

    在组建RAID0时,需要将虚拟机在原有一块硬盘的基础上,再添加两块硬盘(前提:虚拟机一定要处于关机状态,硬盘添加完成后再开机)

    在添加完两块硬盘后,将虚拟机开机,用此命令查看硬盘

    创建新分区(一路回车)

    如果没有安装mdadm命令,需要安装。首先需要挂载:

    在这里,我是将光盘挂载到/opt/dvd下

    #mkdir /opt/dvd

    #mount /dev/sr0 /opt/dvd

    #cd /etc/yum.repos.d/

    #vi dvd.repo------------->baseurl=file:///opt/dvd

    #yum clean all

    #yum list

    #yum install mdadm

    在/dev/sdb1 /dev/sdc1下创建一个规格为0 数量为2的磁盘

    ll查看一下

    具体显示

    继续创建新分区

    查看

    将/dev/md0p1格式化,此后挂载,并查看挂载

    以下命令是自动挂载

    RAID-1

    mirroring(镜像卷)

    需要磁盘两块以上   2块   or  3块

    原理:是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,(同步)

    RAID 1 mirroring(镜像卷),至少需要两块硬盘,raid大小等于两个raid分区中最小的容量(最好将分区大小分为一样),数据有冗余,在存储时同时写入两块硬盘,实现了数据备份;

    磁盘利用率为50%,即2块100G的磁盘构成RAID1只能提供100G的可用空间。如下图

    wKiom1idM9TS4XNLAAB4c5NEPo4636.png-wh_50

    wKioL1idM9WT3LXFAACHQf4tRNk114.png-wh_50

    (其实RAID1与RAID1差不多,在此我就不放图了,做法请参考RAID0做法)

    RAID-5

    需要三块或以上硬盘,可以提供热备盘实现故障的恢复;只损坏一块,没有问题。但如果同时损坏两块磁盘,则数据将都会损坏。空间利用率: (n-1)/n  2/3  如下图所示

    wKiom1idM_XzGTodAACdSbhK6Rk984.png-wh_50

    RAID5雷同以上做法

    RAID10

    镜像+条带

           RAID10是将镜像和条带进行两级组合的RAID级别,第一级是RAID1镜像对,第二级为RAID 0。RAID10也是一种应用比较广泛的RAID级别。

           RAID1+0的特点使其特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。

    先创建raid1,再使用创建的raid1设备创建raid0

    wKioL1idNCigwrevAACnx3amJds976.png-wh_50

    2.5 RAID的比较

    wKiom1idNFLjfjemAAD9ZGIc__k413.png-wh_50

    2.5 RAID的选择

    wKiom1idNIewBkyYAACh5N6B7pI647.png-wh_50

    RAID10的前期做法与RAID0相似,接下来就是不同了,首先RAID10需要添加四块新磁盘,添加成功后,ll命令查看

     

    在/dev/sdb1 /dev/sdc1下创建RAID

    在/dev/md10 /dev/md20下创建RAID

    将/dev/md1格式化

    挂载磁盘,并查看挂载

    卸载,停掉mdadm    启动mdadm     并生成配置文件,再次查看挂载

    用rm -rf命令删除mdadm

  • 相关阅读:
    【手机网络游戏 编程】C#异步socketAPI调用 处理数据的流程
    【已解决】unity4.2.0f4 导出Android工程报错:Error building Player: ArgumentException: Illegal characters in path. [unity导出android工程 报错,路径含有非法字符]
    【已解决】Android微信开放平台,申请移动应用的 应用签名 如何获取
    【keytool jarsigner工具的使用】Android 使用JDK1.7的工具 进行APK文件的签名,以及keystore文件的使用
    JavaScript闭包浅谈
    C#接口和抽象类的区别
    .NET中的垃圾回收
    访问修饰符(public,private,protected,internal,sealed,abstract)
    C#.NET里面抽象类和接口有什么区别?
    在 ASP.NET 中执行 URL 重写的方法
  • 原文地址:https://www.cnblogs.com/zm121196/p/9682863.html
Copyright © 2011-2022 走看看