在Linux下使用RAID(二):使用mdadm工具創(chuàng)建軟件RAID 0
RAID即廉價(jià)磁盤冗余陣列,其高可用性和可靠性適用于大規(guī)模環(huán)境中,相比正常使用,數(shù)據(jù)更需要被保護(hù)。RAID是一些磁盤的集合,是包含一個(gè)陣列的邏輯卷。驅(qū)動(dòng)器可以組合起來成為一個(gè)陣列或稱為(組的)集合。
創(chuàng)建 RAID 最少應(yīng)使用2個(gè)連接到 RAID 控制器的磁盤組成,來構(gòu)成邏輯卷,可以根據(jù)定義的 RAID 級(jí)別將更多的驅(qū)動(dòng)器添加到一個(gè)陣列中。不使用物理硬件創(chuàng)建的 RAID 被稱為軟件 RAID。軟件 RAID 也叫做窮人 RAID。
在 Linux 中創(chuàng)建 RAID0
使用 RAID 的主要目的是為了在發(fā)生單點(diǎn)故障時(shí)保存數(shù)據(jù),如果我們使用單個(gè)磁盤來存儲(chǔ)數(shù)據(jù),如果它損壞了,那么就沒有機(jī)會(huì)取回我們的數(shù)據(jù)了,為了防止數(shù)據(jù)丟失我們需要一個(gè)容錯(cuò)的方法。所以,我們可以使用多個(gè)磁盤組成 RAID 陣列。
在 RAID 0 中條帶是什么
條帶是通過將數(shù)據(jù)在同時(shí)分割到多個(gè)磁盤上。假設(shè)我們有兩個(gè)磁盤,如果我們將數(shù)據(jù)保存到該邏輯卷上,它會(huì)將數(shù)據(jù)保存在兩個(gè)磁盤上。使用 RAID 0 是為了獲得更好的性能,但是如果驅(qū)動(dòng)器中一個(gè)出現(xiàn)故障,我們將不能得到完整的數(shù)據(jù)。因此,使用 RAID 0 不是一種好的做法。唯一的解決辦法就是安裝有 RAID 0 邏輯卷的操作系統(tǒng)來提高重要文件的安全性。
- RAID 0 性能較高。
- 在 RAID 0 上,空間零浪費(fèi)。
- 零容錯(cuò)(如果硬盤中的任何一個(gè)發(fā)生故障,無法取回?cái)?shù)據(jù))。
- 寫和讀性能都很好。
要求
創(chuàng)建 RAID 0 允許的最小磁盤數(shù)目是2個(gè),但你可以添加更多的磁盤,不過數(shù)目應(yīng)該是2,4,6,8等的偶數(shù)。如果你有一個(gè)物理 RAID 卡并且有足夠的端口,你可以添加更多磁盤。
在這里,我們沒有使用硬件 RAID,此設(shè)置只需要軟件 RAID。如果我們有一個(gè)物理硬件 RAID 卡,我們可以從它的功能界面訪問它。有些主板默認(rèn)內(nèi)建 RAID 功能,還可以使用 Ctrl + I 鍵訪問它的界面。
如果你是剛開始設(shè)置 RAID,請(qǐng)閱讀我們前面的文章,我們已經(jīng)介紹了一些關(guān)于 RAID 基本的概念。
我的服務(wù)器設(shè)置
操作系統(tǒng) : CentOS 6.5 Final
IP 地址 : 192.168.0.225
兩塊盤 : 20 GB each
這是9篇系列教程的第2部分,在這部分,我們將看看如何能夠在 Linux 上創(chuàng)建和使用 RAID 0(條帶化),以名為 sdb 和 sdc 兩個(gè) 20GB 的硬盤為例。
第1步:更新系統(tǒng)和安裝管理 RAID 的 mdadm 軟件
1、在 Linux 上設(shè)置 RAID 0 前,我們先更新一下系統(tǒng),然后安裝mdadm
包。mdadm 是一個(gè)小程序,這將使我們能夠在Linux下配置和管理 RAID 設(shè)備。
# yum clean all && yum update
# yum install mdadm -y
安裝 mdadm 工具
第2步:確認(rèn)連接了兩個(gè) 20GB 的硬盤
2、在創(chuàng)建 RAID 0 前,請(qǐng)務(wù)必確認(rèn)兩個(gè)硬盤能被檢測(cè)到,使用下面的命令確認(rèn)。
# ls -l /dev | grep sd
檢查硬盤
3、一旦檢測(cè)到新的硬盤驅(qū)動(dòng)器,同時(shí)檢查是否連接的驅(qū)動(dòng)器已經(jīng)被現(xiàn)有的 RAID 使用,使用下面的mdadm
命令來查看。
# mdadm --examine /dev/sd[b-c]
檢查 RAID 設(shè)備
從上面的輸出我們可以看到,沒有任何 RAID 使用 sdb 和 sdc 這兩個(gè)驅(qū)動(dòng)器。
#p#
第3步:創(chuàng)建 RAID 分區(qū)
4、現(xiàn)在用 sdb 和 sdc 創(chuàng)建 RAID 的分區(qū),使用 fdisk 命令來創(chuàng)建。在這里,我將展示如何創(chuàng)建 sdb 驅(qū)動(dòng)器上的分區(qū)。
# fdisk /dev/sdb
請(qǐng)按照以下說明創(chuàng)建分區(qū)。
- 按
n
創(chuàng)建新的分區(qū)。 - 然后按
P
選擇主分區(qū)。 - 接下來選擇分區(qū)號(hào)為1。
- 只需按兩次回車鍵選擇默認(rèn)值即可。
- 然后,按
P
來顯示創(chuàng)建好的分區(qū)。
創(chuàng)建分區(qū)
請(qǐng)按照以下說明將分區(qū)創(chuàng)建為 Linux 的 RAID 類型。
- 按
L
,列出所有可用的類型。 - 按
t
去修改分區(qū)。 - 鍵入
fd
設(shè)置為 Linux 的 RAID 類型,然后按回車確認(rèn)。 - 然后再次使用
p
查看我們所做的更改。 - 使用
w
保存更改。
在 Linux 上創(chuàng)建 RAID 分區(qū)
注:請(qǐng)使用上述步驟同樣在 sdc 驅(qū)動(dòng)器上創(chuàng)建分區(qū)。
5、 創(chuàng)建分區(qū)后,驗(yàn)證這兩個(gè)驅(qū)動(dòng)器是否正確定義 RAID,使用下面的命令。
# mdadm --examine /dev/sd[b-c]
# mdadm --examine /dev/sd[b-c]1
驗(yàn)證 RAID 分區(qū)
#p#
第4步:創(chuàng)建 RAID md 設(shè)備
6、 現(xiàn)在使用以下命令創(chuàng)建 md 設(shè)備(即 /dev/md0),并選擇 RAID 合適的級(jí)別。
# mdadm -C /dev/md0 -l raid0 -n 2 /dev/sd[b-c]1
# mdadm --create /dev/md0 --level=stripe --raid-devices=2 /dev/sd[b-c]1
- -C – 創(chuàng)建
- -l – 級(jí)別
- -n – RAID 設(shè)備數(shù)
7、 一旦 md 設(shè)備已經(jīng)建立,使用如下命令可以查看 RAID 級(jí)別,設(shè)備和陣列的使用狀態(tài)。
# cat /proc/mdstat
查看 RAID 級(jí)別
# mdadm -E /dev/sd[b-c]1
查看 RAID 設(shè)備
# mdadm --detail /dev/md0
查看 RAID 陣列
#p#
第5步:給 RAID 設(shè)備創(chuàng)建文件系統(tǒng)
8、 將 RAID 設(shè)備 /dev/md0 創(chuàng)建為 ext4 文件系統(tǒng),并掛載到 /mnt/raid0 下。
# mkfs.ext4 /dev/md0
創(chuàng)建 ext4 文件系統(tǒng)
9、 在 RAID 設(shè)備上創(chuàng)建好 ext4 文件系統(tǒng)后,現(xiàn)在創(chuàng)建一個(gè)掛載點(diǎn)(即 /mnt/raid0),并將設(shè)備 /dev/md0 掛載在它下。
# mkdir /mnt/raid0
# mount /dev/md0 /mnt/raid0/
10、下一步,使用 df 命令驗(yàn)證設(shè)備 /dev/md0 是否被掛載在 /mnt/raid0 下。
# df -h
11、 接下來,在掛載點(diǎn) /mnt/raid0 下創(chuàng)建一個(gè)名為tecmint.txt
的文件,為創(chuàng)建的文件添加一些內(nèi)容,并查看文件和目錄的內(nèi)容。
# touch /mnt/raid0/tecmint.txt
# echo "Hi everyone how you doing ?" > /mnt/raid0/tecmint.txt
# cat /mnt/raid0/tecmint.txt
# ls -l /mnt/raid0/
驗(yàn)證掛載的設(shè)備
12、 當(dāng)你驗(yàn)證掛載點(diǎn)后,就可以將它添加到 /etc/fstab 文件中。
# vim /etc/fstab
添加以下條目,根據(jù)你的安裝位置和使用文件系統(tǒng)的不同,自行做修改。
/dev/md0 /mnt/raid0 ext4 deaults 0 0
添加設(shè)備到 fstab 文件中
13、 使用 mount 命令的 -a
來檢查 fstab 的條目是否有誤。
# mount -av
檢查 fstab 文件是否有誤
第6步:保存 RAID 配置
14、 ***,保存 RAID 配置到一個(gè)文件中,以供將來使用。我們?cè)俅问褂脦в?code>-s (scan) 和-v
(verbose) 選項(xiàng)的 mdadm
命令,如圖所示。
# mdadm -E -s -v >> /etc/mdadm.conf
# mdadm --detail --scan --verbose >> /etc/mdadm.conf
# cat /etc/mdadm.conf
保存 RAID 配置
就這樣,我們?cè)谶@里看到,如何通過使用兩個(gè)硬盤配置具有條帶化的 RAID 0 。在接下來的文章中,我們將看到如何設(shè)置 RAID 1。