RAID整理

RAID級別介紹

RAID的定義

RAID:獨立硬盤冗余陣列 (Redundant Arrays of Inexpensive Disks)

把多個硬盤組合起來,成為一個硬盤陣列組,將其作為一個磁盤。

RAID的作用

  • 增強數據集成度

  • 增強容錯功能,即耐用性

  • 增加處理量或容量,即提高IO能力

實現RAID的方式

  • 外接磁盤陣列:通過擴展卡提高適配能力

  • 內接式RAID:主板集成RAID控制器

  • Software RAID

我們在使用中比較常用的RAID的級別分別有:

  • RAID-0:

  • RAID-1:

  • RAID-2:

  • RAID-3:

  • RAID-4:

  • RAID-5:

  • RAID-6:

其組合形式主要有:

  • RAID-10

  • RAID-50

  • RAID-60

我們主要介紹RAID-0,RAID-1,RAID-5,RAID-10,RAID-5這四種方式。

1.RAID-0

條帶卷,即將數據流分成塊(chunk)輪流存儲到兩個即兩個以上的磁盤中。 因為讀寫都可并行處理,所以在所有的級別中,RAID-0的速度是最快的,但不具備容錯能力。即如果一個磁盤損壞,則所有數據都會丟失。它的可用空間為N*min(S1,S2,…)。

2.RAID-1

鏡像卷(mirror),即將數據各向兩個及兩個以上的磁盤存一份。讀性能提升,但寫性能略有下降,因為寫性能是以最慢的寫速度作為標準。有容錯能力,如果主硬盤損壞時,鏡像硬盤則替代主硬盤工作??傮w來說,RAID-1的數據安全性是最高的,但磁盤利用率是最低的。它的可用空間為min(S1,S2,…)。

3.RAID-5

RAID-5是RAID-0和RAID-1之間的這種方法,它的數據安全性比RAID-0高,磁盤利用率比RAID-1高。

RAID的工作方式是:在RAID-0的基礎上在增加一個磁盤,即最少使用3個磁盤,除了需要存放數據,還需存放對應的多位數據的異或值,即利用奇偶校驗法,要注意的是,數據塊(chunks)和校驗位必須要按順序即默認為左對稱的方式排放。

RAID-5有容錯能力,但只能允許一個磁盤損害,出現損害后可利用校驗位可求出損害磁盤中所對應的數據來進行讀操作。 可用空間(N-1)*min(S1,S2…)

4.RAID-10

RAID 10是先像射再分區數據,再將所有硬盤分為兩組,視為是RAID 0的最低組合,然后將這兩組各自視為RAID 1運作。讀寫性能提升,有容錯能力,只要一組鏡像不同時損害,數據就是安全的。最少需要4塊磁盤。可用空間是N*min(S1,S2…)/2

5.JBOD: Just a Bunch Of Disks

將多塊磁盤的空間合并一個大的連續空間使用,任意一塊磁盤損壞,數據及損壞。 可用空間:sum(S1,S2,…)

RAID的創建

創建RAID的前提是要創建好足夠多的分區,并將分區設置為 Linux raid形式。

下面我們來講講具體的操作:

[root@localhost ~]# mdadm -C /dev/md0 -l 1 -a yes -c 256 -n 2 -x 1 /dev/sda{5,6,7}

-C: 創建模式
/dev/md0: RAID設備文件
-l #:指明要創建的RAID的級別
-a {yes|no}:自動創建目標RAID設備的設備文件
-c CHUNK_SIZE: 指明塊大小
-n #: 使用#個塊設備來創建此RAID;
-x #: 指明空閑盤的個數

下面來創建文件系統,我們選擇ext4, [root@localhost ~]# mkfs.ext4 -L 'mydata' /dev/md0 #指明卷標為mydata,還有一些其他的選項見上一篇文件系統整理。

下面掛載設備文件

 mount /dev/md0 /testing/ #將剛創建的RAID掛載到/testing目錄上。

以上RAID就全部完成了

下面是一些測試

[root@localhost ~]# mdadm  /dev/md0 -f /dev/sda5
mdadm: set /dev/sda5 faulty in /dev/md0
# 將/dev/sda5標記為損壞


[root@localhost ~]# mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Wed Jul 13 08:59:42 2016
     Raid Level : raid1
     Array Size : 5243712 (5.00 GiB 5.37 GB)
  Used Dev Size : 5243712 (5.00 GiB 5.37 GB)
   Raid Devices : 2
  Total Devices : 3
    Persistence : Superblock is persistent

    Update Time : Wed Jul 13 09:12:55 2016
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 1
  Spare Devices : 0

           Name : localhost.localdomain:0  (local to host localhost.localdomain)
           UUID : 5200617c:c8fb16ca:3b7de280:0d56f967
         Events : 36

    Number   Major   Minor   RaidDevice State
       2       8        7        0      active sync   /dev/sda7
       1       8        6        1      active sync   /dev/sda6

       0       8        5        -      faulty   /dev/sda5
#顯示raid的詳細信息,可以看到此時備用磁盤/dev/sda7已自動成為主磁盤里。數據未遭到損壞。


[root@localhost ~]# mdadm  /dev/md0 -r /dev/sda5

# 移除磁盤/dev/sda5

此時raid的信息是

 Number   Major   Minor   RaidDevice State
   2       8        7        0      active sync   /dev/sda7
   1       8        6        1      active sync   /dev/sda6

下面我們再來添加/dev/sda5

 mdadm  /dev/md0 -a /dev/sda5
 #添加磁盤/dev/sda5

可看到信息:

 Number   Major   Minor   RaidDevice State
   2       8        7        0      active sync   /dev/sda7
   1       8        6        1      active sync   /dev/sda6

   3       8        5        -      spare   /dev/sda5

如果想停止md設備

[root@localhost ~]# umount /testing/
[root@localhost ~]# mdadm -S /dev/md0
mdadm: stopped /dev/md0
 #注意:一定要先卸載設備,才能停止

原創文章,作者:21期-揚州-藍,如若轉載,請注明出處:http://www.www58058.com/24176

(0)
21期-揚州-藍21期-揚州-藍
上一篇 2016-07-16 22:25
下一篇 2016-07-16 22:25

相關推薦

  • 第六周 網絡進程管理

    1、簡述osi七層模型和TCP/IP五層模型 2、簡述iproute家族命令 3、詳細說明進程管理工具htop、vmstat等相關命令,并舉例 4、使用until和while分別實現192.168.0.0/24 網段內,地址是否能夠ping通,弱ping通則輸出”success!”,若ping不通則輸出”fail!&#82…

    2018-01-12
  • lvs——高可用集群

    技術簡介: LVS集群采用IP負載均衡技術和基于內容請求分發技術。調度器具有很好的吞吐率,將請求均衡地轉移到不同的服務器上執行,且調度器自動屏蔽掉服務器的故障,從而將一組服務器構成一個高性能的、高可用的虛擬服務器。整個服務器集群的結構對客戶是透明的,而且無需修改客戶端和服務器端的程序。為此,在設計時需要考慮系統的透明性、可伸縮性、高可用性和易管理性 集群采用…

    Linux干貨 2016-10-26
  • 馬哥教育網絡班21期-第一周課程練習

    前言: 作者很懶,從小到大基本沒有完成過作業,這種習慣深入骨髓(準備保持下去)。但是想到銀子已經花出去了,必須有所得才行。所以會把課程中學習到的東西以自身理解完成作業,錯誤之處,望老師指正。[ 注:錯別字什么的就當沒有看見 ] 另:在下就讀網絡21班(全部是男人,以后簡稱“馬網寺”),發現寺內高手都非常低調,也許3個豆子、某助手就是"寺內隱世的掃地…

    2016-06-29
  • 推薦-內核虛擬化技術——LXC初體驗

    一、Cgroups 1.1 介紹 Cgroup是Control group的簡稱。最初由由Google的工程師(主要是Paul Menage和Rohit Seth)在2006年以“process containers(進程容器)”的名字開始的, 在2007年的晚些時候被重命名為“控制組”并被合并到了2.6.24版的內核中,現已成為Linux內核中的一個功能,…

    Linux干貨 2016-03-31
  • rpm包管理

    rpm包管理 rpm(RedHat Package Manager) 是RedHat公司發展的一種將軟件安裝到Linux系統的管理機制,也是一種數據庫記錄方法。 Linux系統上軟件的安裝主要分兩種方式,從廠商發布的tarball通過編譯來安裝;或者使用廠商已經在相應平臺上編譯好的二進制文件。 從源碼編譯安裝的程序,在漏洞修補以及軟件功能升級時太過麻煩,并且…

    Linux干貨 2016-11-18
  • python寫一個通訊錄之step by step

    編寫過程:     第一步:手動代碼堆積         第二步:函數復用         第三步:數據持久化之數據保存         第四步:數據持久化之數據讀取       &nbsp…

    Linux干貨 2015-03-26

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-17 20:28

    寫的很好,排版也很漂亮,加油

欧美性久久久久