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最少使用兩塊磁盤,在讀寫時,將數據分開讀寫到多磁盤的方式來提高讀寫性能。

wKioL1XxIGuz7leoAABrGcrojRE912.jpg

空間利用率:所有磁盤空間之和;

性     能:所有磁盤速度之和;

冗餘 能力:無


RAID 1

RAID 1最少使用2塊磁盤,在讀寫時,將數據複製到多塊磁盤,在讀數據的時候,已提供冗餘性。同時從多塊硬盤中讀取數據,以提高讀性能。

wKioL1XxILjSfty1AAB8sp6mPDw892.jpg

空間利用率:所有磁盤空間最小那塊;

性     能:讀性能爲磁盤速度之和,寫性能有所減弱;

冗餘 能力:只要一塊磁盤正常,數據就正常;


RAID 5

RAID 5最少使用3塊磁盤,raid5與Raid0相似,讀寫數據的時候會將數據分佈式的讀寫在所有硬盤上,但是在寫數據的時候會對數據進行奇偶校驗運算,將奇偶校驗信息同時保存在硬盤上,校驗信息可以進行數據恢復時使用。

wKioL1XxINihpkn3AACcDDzuzuM933.jpg

空間利用率:1-1/n;

性     能:讀性能接近RAID0,寫性能較RAID0弱一些;

冗餘 能力:可以接受1塊磁盤損壞;


RAID 6

RAID 6最少使用4塊磁盤,raid6與Raid5相似,讀寫數據的時候會將數據分佈式的讀寫在所有硬盤上,並保存奇偶校驗信息,但是會比RAID5多保存一份校驗信息,所以冗餘性較RAID5有所提升。

wKiom1XxHsqgZyryAACk0p5vIGw983.jpg

空間利用率: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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章