常用磁盤陣列說明

一.什么是磁盤陣列

    磁盤陣列英文全名為RedundantArrays of Inexpensive Disks(RAID),即容錯廉價磁盤陣列。

    RAID可以將一些容量較小的磁盤通技術手段組成一個容量較大的磁盤設備,而且不只是容量上的提升,RAID還可以提供數據保護的功能。

    RAID可以選擇不同等級來實現不同的功能,常見的等級有以下幾種:

    1.RAID-0

        此模式可以需要使用相同型號和相同容量的磁盤組成時效果最佳,在進行文件寫入時,會將文件進行分割分別存儲在不同的磁盤上,這樣就提高了讀寫的速度,但由于文件分別存儲在不同的磁盤上,一旦有一塊磁盤損壞就會造成文件無法讀取,所以此模式不具備容錯性。

    2.RAID-1

        此模式最好使用兩塊一模一樣的磁盤,如果是兩塊不同容量的,則存儲時以容量小的那塊為主。這種模式是將數據在兩塊磁盤上都存儲一份,這樣即使有一塊硬塊損壞了,數據還可以恢復回來;不過由于數據在保存兩份,所以寫的性能會有所下降。

    3.RAID-4

        此模式最少要使用三塊磁盤才能組成;陳列會將一塊磁盤做為校驗盤,用來記錄同位檢查碼,數據則是循環寫在另外的磁盤上,如果有一塊數據磁盤損壞了,可以根據校驗盤里的同位碼來進行恢復,但如果校驗盤損壞,則數據將無法恢復。

    4.RAID-5

        此模式類似于RAID-4,但取消了專門的校驗盤,而是將校驗信息同數據一起循環記錄在各個磁盤上,這樣任意一塊磁盤出現問題,都可以將數據恢復回來,但是損壞的磁盤數量大于等于兩塊時,數據將無法恢復。

    5.RAID-10

        此模式是將磁盤先組合RAID-1,再將這些RAID1的陣列組成RAID-0;這種陣列兼備了RAID-1的安全性和RAID-0的高效,每組RAID-1都允許損壞一塊磁盤;缺點是磁盤的空間則浪費的50%。

    各種RAID級別的特點見下表:

RAID級別 所需磁盤數 讀寫能力 容錯能力 磁盤空間利用率
RAID-0 不限 提升 不具備 磁盤數*單塊磁盤空間
RAID-1 兩塊 下降 具備 單塊磁盤空間
RAID-4 最少三塊 提升 具備 (磁盤數-1)*單塊磁盤空間
RAID-5 最少三塊 提升 具備 (磁盤數-1)*單塊磁盤空間
RAID-10 最少四塊 提升 具備 磁盤數*單塊磁盤空間/2

    在生產環境中,可以預備一塊空的磁盤做為預備磁盤。這塊空盤并不加入磁盤陣列當中,一旦陣列中的磁盤出現故障,可以將這塊空塊直接拉入磁盤陣列中,并將壞盤移除,避免了更換磁盤時的停機要求,以及熱插拔陣列中的磁盤可能造成的數據風險。

二.軟件磁盤陣列

    由于條件所限,只能通過軟件磁盤陣列來說明演示磁盤的工作效果。

    使用mdadm命令來創建軟件磁盤陣列。

    命令參數:

       -D:顯示詳細信息;

       -A:裝配模式,重新識別此前實現的RAID;

       -C:創建模式,創建RAID;

       -F:監控模式;

       管理模式:-f,-r,-a

       -C:創建模式中專用選項

              -n #:用于創建RAID設備的磁盤個數

              -l #:級別

              -a yes:自動為創建的RAID生成設備文件;

              -c Chunk_size

    1.RAID-0

        使用三個2G的分區創建一個RAID-0;

        1.png

            查看/dev/md0狀態;

        2.png

            查看/dev/md0的詳細信息;

        5.png

            格式化/dev/md0;

        3.png

            掛載/dev/md0到/mnt/md0,可以看到空間是三塊磁盤的總和;

        4.png

    2.RAID-1

         使用兩個1G的分區創建RAID1;

        7.png

            格式化并掛載,復制文件到掛載目錄下;

        8.png

        9.png

            磁盤空間為1G左右;

        1.png

            查看md1的狀態

        10.png

            模擬磁盤損壞;

        11.png

            查看md1的狀態;

        12.png

            查看md1詳細信息;

        13.png

            查看/mnt/md1下的文件,依然可以正常訪問;

        1.png

        移除損壞的磁盤,并加添加一塊好的磁盤到陣列中;

            移除磁盤;

        2.png

            添加新盤;

        3.png

            查看狀態;

        4.png

        5.png

    3.RAID-5

        將三塊1G的磁盤組成RAID-5;  

        1.png

            查看md5狀態;

        4.png

            格式化并掛載;

        2.png

        3.png      

        測試容錯;

            復制/etc/issue到/mnt/md5目錄中;移除/dev/sdb10;

        5.png

            mdadm -D /dev/md5查看信息;

     2.png

            依然可以讀取目錄中的文件;

        1.png

            修復步驟與RAID1相同,此處不再演示。

     mdadm命令補充:

        -f/–fail DEVICE:手動設置磁盤為損壞;

        -r/–remove DEVICE:移除磁盤;

        -a/–add DEVICE:加入磁盤;

        mdadm -S DEVICE: 停止磁盤陣列;

     watch命令:階段性地執行指定的命令;

            watch -n# 命令

        eg:watch -n.5 ifconfig  每0.5秒更新一次顯示結果。

        1.png

                 

原創文章,作者:petmaster,如若轉載,請注明出處:http://www.www58058.com/1987

(0)
petmasterpetmaster
上一篇 2015-04-02 22:12
下一篇 2015-04-02 22:21

相關推薦

  • RHCE系列之磁盤加密—-LUKS加密

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1436460        LUKS (Linux Unified Key Setup)為 Linux 硬盤…

    Linux干貨 2016-08-15
  • 實現CA和證書申請,

    接下來講的是在centos7.3和centos6.8中實現CA和證書申請,centos7.3作為主機,centos6.8作為客戶端 首先你授權客戶端CA證書,必須本身主機也具有CA,自己證明自己,先CA自簽證書,然后在7.3創建私鑰 為了方便以后的操作CD進入 cd /etc/pki/CA   生成自簽名證書 -new:  生成…

    2017-04-11
  • ?計算機網絡{ 基礎知識;網卡bonding;網關路由; }

      計算機網絡{ 基礎知識;網卡bonding;網關路由; }        網絡是指“三網”,即電信網絡、有線電視網絡和計算機網絡。計算機網絡最早起源于美蘇冷戰時期ARPANET網絡,如今已經發展成為Internet2和NGI等具有多層次結構的網絡。不同作用范圍的網絡可分為:廣域網WAN 、局域網LAN 、…

    Linux干貨 2016-09-06
  • Linux sed命令詳則

    sed命令 sed是一種流編輯器,它是文本處理中非常好的工具,能夠完美的配合正則表達式使用,功能不同凡響。處理時,把當前的行儲存在臨時緩存區中,稱為“模式空間”(pattern space),接著用sed命令處理緩存區中的內容,處理完成后,把緩存區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出。Sed…

    2017-08-11
  • 設計模式 ( 十六 ) 觀察者模式Observer(對象行為型)

    1.概述 一些面向對象的編程方式,提供了一種構建對象間復雜網絡互連的能力。當對象們連接在一起時,它們就可以相互提供服務和信息。 通常來說,當某個對象的狀態發生改變時,你仍然需要對象之間能互相通信。但是出于各種原因,你也許并不愿意因為代碼環境的改變而對代碼做大的修改。也許,你只想根據你的具體應用環境而改進通信代碼?;蛘?,你只想簡單的重新構造通信代碼來避免類和類…

    Linux干貨 2015-07-24
  • 如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果

    命令別名使用alias命令; ~]#alias NAME='COMMAND' 在一個命令中引用另一個命令的執行結果也是bash的特性之一,引用。 方法:$(COMMAND)

    Linux干貨 2016-11-06

評論列表(2條)

  • stanley
    stanley 2015-04-02 22:18

    還是前面的建議,xshell底調整成黑色的。另外,字體大小調整成12或14博文效果會更好

    • petmaster
      petmaster 2015-04-03 00:09

      @stanley謝謝,下一篇一定不一樣了 :lol:

欧美性久久久久