狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

一文全懂:獨立冗余磁盤陣列(RAID)

freeflydom
2024年7月22日 10:0 本文熱度 1038

獨立冗余磁盤陣列,也就是大家常說的RAID,英文全稱是:Redundant Array of Independent Disks,使用該技術(shù),可以大幅提高硬盤設備的 IO 讀寫速度,還存在數(shù)種數(shù)據(jù)冗余備份機制提供用戶選擇,能夠降低用戶數(shù)據(jù)盤損壞帶來的數(shù)據(jù)丟失的風險。

RAID技術(shù)通過把多個硬盤設備組合成一個容量更大、安全性更好的磁盤陣列,并把數(shù)據(jù)切割成多個區(qū)段后分別存放在各個不同的物理硬盤設備上,然后利用分散讀寫技術(shù)來提升磁盤陣列整體的性能,同時把多個重要數(shù)據(jù)的副本同步到不同的物理硬盤設備上,從而起到了非常好的數(shù)據(jù)冗余備份效果。

常用的幾種RAID模式有RAID0、RAID1、RAID5和RAID10(RAID 一零)。

一、RAID的幾種模式

1、RAID0

RAID 0 技術(shù)把多塊物理硬盤設備(至少兩塊)通過硬件或軟件的方式串聯(lián)在一起,組成一個大的卷組,并將數(shù)據(jù)依次寫入各個物理硬盤中。這樣一來,在最理想的狀態(tài)下,硬盤設備的讀寫性能會提升數(shù)倍,但是若任意一塊硬盤發(fā)生故障,將導致整個系統(tǒng)的數(shù)據(jù)都受到破
壞。通俗來說,RAID 0 技術(shù)能夠有效地提升硬盤數(shù)據(jù)的吞吐速度,但是不具備數(shù)據(jù)誤修復能力。

如圖 所示,數(shù)據(jù)被分別寫入到不同的硬盤設備中,兩塊硬盤會分別保存數(shù)據(jù)資料,最終實現(xiàn)提升讀取、寫入速度的效果。

  • 最少需要的硬盤數(shù):2

  • 優(yōu)點:更快的數(shù)據(jù)訪問。

  • 缺點:沒有硬盤冗余,所以數(shù)據(jù)丟失的風險會增加。未針對不同容量大小的硬盤進行優(yōu)化。

2、RAID1

RAID1模式的磁盤陣列的模式就是“N+1”,無論有多少個磁盤,它只用一個存儲數(shù)據(jù),其它每個磁盤都是它的鏡像,舉個例子:有兩個磁盤,那磁盤利用率就是50%,有N個磁盤,那磁盤利用率就是1/N。

這個模式是最沒用的模式了,因為太浪費空間了,基本也沒人用,除非是小型文件存儲,而且對空間大小沒有什么要求,但是對安全性有比較高的要求,那這時候就可以用到這個。相對于RAID0模式來說,它寫入速度要稍微慢一些,但是讀取速度要更快。

  • 最少需要的硬盤數(shù):2

  • 優(yōu)點:N 個硬盤冗余。

  • 缺點:存儲池可用空間被限制為一個硬盤的容量。未針對不同容量大小的硬盤進行優(yōu)化。

3、RAID5

RAID5 技術(shù)是把硬盤設備的數(shù)據(jù)奇偶校驗信息保存到其他硬盤設備中。RAID 5 磁盤陣列中數(shù)據(jù)的奇偶校驗信息并不是單獨保存到某一塊硬盤設備中,而是存儲到除自身以外的其他每一塊硬盤設備上。這樣的好處是,其中任何一設備損壞后都可以依賴其它幾塊設備重建丟失的這塊硬盤數(shù)據(jù)。

好吧,以上說法太迷糊,那到底RAID5是如何實現(xiàn)一塊硬盤的數(shù)據(jù)冗余,并在一塊硬盤損壞以后實現(xiàn)數(shù)據(jù)重建的呢?

首先,復習一下異或運算:

AB結(jié)果
000
011
101
110

0是偶數(shù),1是基數(shù),它們的異或結(jié)果就是奇偶校驗和。我們把上表中的A和B分別看做一個硬盤,0和1表示硬盤中存儲的數(shù)據(jù),結(jié)果也看做一個硬盤,也就是說,把A和B中的存儲數(shù)據(jù)做了異或運算以后,放到第三個硬盤中;假如還有硬盤C、D、E、F呢?那結(jié)果就是 A異或B異或C異或D異或E異或F 。

這就是RAID5的原理了,但是并不完整,因為根據(jù)校驗和存放的位置不一樣,它會是不同的RAID模式:如果將所有的校驗和都放到一個硬盤中,那這個RAID模式就是RAID3;如果將校驗和分塊存儲到每個硬盤中,那就是RAID5了,可以說RAID5是RAID3的升級版。因為如果校驗和都放到一個硬盤中,那只要存一條數(shù)據(jù),就都要寫一次校驗和到校驗和盤,那這個專門存放校驗和的硬盤肯定容易壞。

在上圖中,Parity就是校驗和塊,每個磁盤都有其余所有磁盤對應塊計算之后的校驗和,這樣就不怕任何一塊磁盤壞掉了,如果有一塊硬盤壞掉,只需要把所有其它盤對應塊的數(shù)據(jù)做一次校驗和,就知道缺失的這塊的數(shù)據(jù)是什么了。這也就解釋了為什么RAID5最少需要3塊硬盤,而且3塊硬盤的容量要一樣。

  • 需要的硬盤數(shù):3

  • 優(yōu)點:1 個硬盤的容錯機制并將存儲空間配置優(yōu)化。

  • 缺點:未針對不同容量大小的硬盤進行優(yōu)化。

  • 所有的校驗和塊加起來的大小正好是一塊硬盤的容量。

4、RAID10

首先,得說明,RAID10的叫法是“RAID一零",而非”RAID十“,RAID 10 技術(shù)是 RAID 1+RAID 0 技術(shù)的一個“組合體”。如下圖所示

RAID10 技術(shù)需要至少 4 塊硬盤來組建,其中先分別兩兩制作成 RAID 1 磁盤陣列,以保證數(shù)據(jù)的安全性;然后再對兩個 RAID 1 磁盤陣列實施 RAID 0 技術(shù),進一步提高硬盤設備的讀寫速度。

這樣從理論上來講,只要壞的不是同一陣列中的所有硬盤,那么最多可以損壞 50%的硬盤設備而不丟失數(shù)據(jù)。由于 RAID 10 技術(shù)繼承了 RAID 0 的高讀寫速度和 RAID 1 的數(shù)據(jù)安全性,在不考慮成本的情況下 RAID 10 的性能也超過了 RAID 5,因此當前成為廣泛使用的一種存儲技術(shù)。

RAID 10 是先對信息進行分割,然后再兩兩一組制作鏡像。也就是先將 RAID 1 作為最低級別的組合,然后再使用 RAID 0 技術(shù)將 RAID 1 磁盤陣列組合到一起,將它們視為“一整塊”硬盤。肯定會有人有疑問,是否可以先按照RAID0進行制作磁盤陣列,再利用RAID1技術(shù)將兩個磁盤陣列組合起來呢?這其實就是RAID01技術(shù)了。RAID01技術(shù)有很大缺陷,所以很少有人使用,原因如下:

  1. RAID10本質(zhì)上是RAID0,它的擴展性很好,可以再添加幾個RAID1磁盤陣列也沒問題;但是RAID01本質(zhì)上是RAID1磁盤陣列,它的缺點也正是RAID1磁盤陣列的缺點,那就是無論再增加幾個RAID0磁盤陣列,也只是增加了幾個鏡像而已,并不能真正的使用到新增加的磁盤陣列的容量。

  2. RAID10底層磁盤陣列是RAID1,它允許壞掉一塊磁盤而保證系統(tǒng)的正常運行;但是RAID01底層磁盤陣列是RAID0,一旦壞掉一塊磁盤,底層的RAID0磁盤陣列就會崩潰無法使用。

所以無論是從可擴展性上,還是數(shù)據(jù)安全性上,RAID10遠比RAID01磁盤陣列要好的多,以至于RAID01幾乎沒有人用。

二、使用mdadm命令管理RAID

linux中使用mdamd命令創(chuàng)建raid,mdadm英文全名為”multiple devices admin”,語法格式為“mdadm 參數(shù) 硬盤名稱”。

mdadm參數(shù)大全

參數(shù)功能
-a添加一塊設備到磁盤陣列
-n指定設備數(shù)量
-l指定 RAID 級別
-C創(chuàng)建
-v顯示過程
-f模擬設備損壞
-r移除設備
-Q查看摘要信息
-D查看詳細信息
-S停止 RAID 磁盤陣列
-x有幾塊備用盤

1、創(chuàng)建RAID10

以下操作均在在Vmware Workstation中進行

1.1 創(chuàng)建RAID10

一上來就創(chuàng)建RAID10,是不是難度有點高?其實不是,假設我們已經(jīng)有了/dev/sdb/dev/sdc/dev/sdd/dev/sde 四個硬盤,大小都為20G,創(chuàng)建名稱為/dev/md0的命令只是一條就搞定了

mdadm -Cv /dev/md0 -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde

-Cv:創(chuàng)建磁盤陣列并顯示過程

-n 4:該磁盤陣列有4個磁盤

-l 10:創(chuàng)建的磁盤陣列類型是RAID10

一條命令就創(chuàng)建好了RAID10,說真的,我還以為要手動創(chuàng)建若干個RAID1,然后將這些RAID1再用RAID0組合起來呢。

執(zhí)行完該命令后,會有個初始化的過程,大概得一分鐘左右能初始化完成,可以通過mdadm -D /dev/md0 命令查看該磁盤陣列的詳情

1.2 格式化磁盤陣列

創(chuàng)建完磁盤陣列完成后,需要將磁盤陣列格式化之后才能使用,格式化命令還是mkfs命令

mkfs.ext4 /dev/md0

1.3 掛載磁盤陣列

可以先創(chuàng)建一個文件夾/raid,然后掛載/dev/md0

 mount /dev/md0 /raid

這時候再用lsblk命令查看,可以發(fā)現(xiàn)和以前的普通分區(qū)有所不同

磁盤陣列中的四個磁盤下都有md0分區(qū),而且都是都是raid10類型。

為了永久掛載,還要寫配置文件/etc/fstab

/dev/md0                /raid                   ext4    defaults        0 0

1.4 其它RAID模式

其它RAID模式是一樣的,只需要改變使用的硬盤數(shù)量和raild類型即可,故不再贅述其它類型的磁盤陣列創(chuàng)建。

2、磁盤損壞和更換

在使用磁盤陣列的過程中,不可避免的,總有一天會有硬盤損壞,在RAID10磁盤陣列中,最多同時允許壞掉50%的硬盤,這個容錯率是相當大了,那如果有一塊硬盤損壞了,如何更換這塊壞掉的硬盤呢?

先查詢下我們這個磁盤陣列的詳情

mdadm -D /dev/md0

可以看到md0磁盤陣列中有四塊硬盤。

首先,我們假設/dev/sdb這塊硬盤壞了,需要先將這塊硬盤標志為不可用

mdadm /dev/md0 -f /dev/sdb

然后移除該硬盤

mdadm /dev/md0 -r /dev/sdb

然后看下這個磁盤陣列當前的狀態(tài)

可以看到磁盤陣列狀態(tài)多了個"degraded",表示磁盤陣列降級了,這意味著 RAID 陣列中至少有一個磁盤故障或處于離線狀態(tài),導致陣列無法以完全冗余的方式運行。因為我們移除了/dev/sdb硬盤,所以提示degraded狀態(tài)是正常的。

接下來我們添加一塊新硬盤/dev/sdf,替換掉壞掉的/dev/sdb,使用命令-a將其添加到磁盤陣列中

mdadm -D /dev/md0

然后看看當前磁盤陣列的狀態(tài)

可以看到狀態(tài)多了一個“recoverting”,表示磁盤陣列狀態(tài)正在恢復中,然后還有一個恢復進度,我們新增加的這塊硬盤被識別為“備用盤”,備用盤正在重建中。

耐心等一會兒,再看看磁盤陣列的狀態(tài),它就正常了。

3、使用備份盤實現(xiàn)熱恢復

上一節(jié)我們實現(xiàn)了硬盤損壞的時候手動移除壞掉的硬盤,然后換上了新硬盤,整個過程其實有兩個問題

  1. 硬盤壞掉立馬被發(fā)現(xiàn)的概率比較低,往往要一段時間之后才會被發(fā)現(xiàn)硬盤壞掉了,處理的可能不夠很及時

  2. 更換硬盤的過程都是手動,甚至要關(guān)機安裝新硬盤,整個過程有操作失誤的風險

實際上有一種方式,能夠不用關(guān)機,不用手動移除,只要有一塊閑置的硬盤,這塊硬盤平時處于閑置狀態(tài),一旦 RAID 磁盤陣列中有硬盤出現(xiàn)故障就會馬上自動頂替上去,并自動完成數(shù)據(jù)恢復,這功能豈不是很棒?

其實只需要初始化磁盤陣列的時候加上-x參數(shù)即可。

接下來用RAID5為例演示該功能。RAID5要求最少要3塊硬盤,所以我準備了3塊硬盤+1塊備份盤一共四塊硬盤。下圖中的sdb、sdc、sdd、sde一共四塊。

接下來使用這四塊硬盤組raid5

mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde

各項參數(shù)之前有過說明,不再贅述,主要是加了-x 1這個參數(shù),表示有一塊備份盤。

然后通過mdadm -D /dev/md0 查看組RAID詳情

可以看到正在初始化,等一會兒,等它初始化結(jié)束了再操作下一步

可以看到該RAID5磁盤陣列中有4個硬盤,但是只有3個是RAID的組成部分,還有一個Spare Device,也就是備份盤。

接下來進行格式化和掛載

使用df -h /raid命令查看/raid目錄的磁盤占用情況

可以看到3塊20G的硬盤組成的RAID5,掛載到/raid目錄后,可用存儲大小為40G,符合預期。

然后我們將一塊硬盤/dev/sdb標記為已損壞,看看效果如何

mdadm /dev/md0 -f /dev/sdb

接下來,馬上運行命令mdadm -D /dev/md0 查看當前磁盤陣列的詳情

可以看到備份硬盤/dev/sde已經(jīng)自動頂上去并開始初始化了,再過一會兒,在查詢下md0磁盤陣列

可以看到/dev/sde已經(jīng)完全取代了壞掉的/dev/sdb硬盤,并已經(jīng)在正常工作。

4、刪除RAID

4.1 取消掛載

首先,刪除掉/etc/fstab文件中相關(guān)的掛載內(nèi)容

之后,手動取消掛載

umount /dev/md0

4.2 停止磁盤陣列

mdadm -S /dev/md0

停止磁盤陣列之后,會發(fā)現(xiàn)/dev/md0設備已經(jīng)消失不見了。

接下來,系統(tǒng)關(guān)機,拔出硬盤即可。

轉(zhuǎn)自https://www.cnblogs.com/kuangdaoyizhimei/p/18314827 作者狂盜一枝梅



該文章在 2024/7/22 10:00:53 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關(guān)報表等業(yè)務管理,結(jié)合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved