歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在 Linux 下使用 RAID(九):如何使用 ‘Mdadm’ 工具管理軟件 RAID

在 Linux 下使用 RAID(九):如何使用 ‘Mdadm’ 工具管理軟件 RAID

日期:2017/2/28 13:56:54   编辑:Linux教程

無論你以前有沒有使用 RAID 陣列的經驗,以及是否完成了 此 RAID 系列 的所有教程,一旦你在 Linux 中熟悉了 mdadm --manage 命令的使用,管理軟件 RAID 將不是很復雜的任務。

在 Linux 中使用 mdadm 管理 RAID 設備 - 第9部分

在本教程中,我們會再介紹此工具提供的功能,這樣當你需要它,就可以派上用場。

RAID 測試方案

在本系列的最後一篇文章中,我們將使用一個簡單的 RAID 1(鏡像)陣列,它由兩個 8GB 的磁盤(/dev/sdb 和 /dev/sdc)和一個備用設備(/dev/sdd)來演示,但在此使用的方法也適用於其他類型的配置。也就是說,放心去用吧,把這個頁面添加到浏覽器的書簽,然後讓我們開始吧。

了解 mdadm 的選項和使用方法

幸運的是,mdadm 有一個內建的 --help 參數來對每個主要的選項提供說明文檔。

因此,讓我們開始輸入:

  1. #mdadm--manage --help

就會使我們看到 mdadm --manage 能夠執行哪些任務:

使用 mdadm 工具來管理 RAID

正如我們在上面的圖片看到,管理一個 RAID 陣列可以在任意時間執行以下任務:

  • (重新)將設備添加到陣列中
  • 把設備標記為故障
  • 從陣列中刪除故障設備
  • 使用備用設備更換故障設備
  • 先創建部分陣列
  • 停止陣列
  • 標記陣列為 ro(只讀)或 rw(讀寫)

使用 mdadm 工具管理 RAID 設備

需要注意的是,如果用戶忽略 --manage 選項,mdadm 默認使用管理模式。請記住這一點,以避免出現最壞的情況。

上圖中的高亮文本顯示了管理 RAID 的基本語法:

  1. #mdadm--manage RAID options devices

讓我們來演示幾個例子。

​例1:為 RAID 陣列添加設備

你通常會添加新設備來更換故障的設備,或者使用空閒的分區以便在出現故障時能及時替換:

  1. #mdadm--manage /dev/md0 --add /dev/sdd1

添加設備到 Raid 陣列

​例2:把一個 RAID 設備標記為故障並從陣列中移除

在從邏輯陣列中刪除該設備前,這是強制性的步驟,然後才能從機器中取出它 - 注意順序(如果弄錯了這些步驟,最終可能會造成實際設備的損害):

  1. #mdadm--manage /dev/md0 --fail /dev/sdb1

請注意在前面的例子中,知道如何添加備用設備來自動更換出現故障的磁盤。在此之後,恢復和重建 raid 數據 就開始了:

恢復和重建 raid 數據

一旦設備已被手動標記為故障,你就可以安全地從陣列中刪除它:

  1. #mdadm--manage /dev/md0 --remove /dev/sdb1

例3:重新添加設備,來替代陣列中已經移除的設備

到現在為止,我們有一個工作的 RAID 1 陣列,它包含了2個活動的設備:/dev/sdc1 和 /dev/sdd1。現在讓我們試試重新添加 /dev/sdb1 到/dev/md0:

  1. #mdadm--manage /dev/md0 --re-add /dev/sdb1

我們會碰到一個錯誤:

  1. #mdadm:--re-add for/dev/sdb1 to /dev/md0 isnot possible

因為陣列中的磁盤已經達到了最大的數量。因此,我們有兩個選擇:a)將 /dev/sdb1 添加為備用的,如例1;或 b)從陣列中刪除 /dev/sdd1 然後重新添加 /dev/sdb1。

我們選擇選項 b),先停止陣列然後重新啟動:

  1. #mdadm--stop /dev/md0
  2. #mdadm--assemble /dev/md0 /dev/sdb1 /dev/sdc1

如果上面的命令不能成功添加 /dev/sdb1 到陣列中,使用例1中的命令來完成。

mdadm 能檢測到新添加的設備並將其作為備用設備,當添加完成後它會開始重建數據,它也被認為是 RAID 中的活動設備:

重建 Raid 的狀態

例4:使用特定磁盤更換 RAID 設備

在陣列中使用備用磁盤更換磁盤很簡單:

  1. #mdadm--manage /dev/md0 --replace /dev/sdb1 --with/dev/sdd1

更換 Raid 設備

這會導致 --replace 指定的設備被標記為故障,而 --with指定的設備添加到 RAID 中來替代它:

檢查 Raid 重建狀態

​例5:標記 RAID 陣列為 ro 或 rw

創建陣列後,你必須在它上面創建一個文件系統並將其掛載到一個目錄下才能使用它。你可能不知道,RAID 也可以被設置為 ro,使其只讀;或者設置為 rw,就可以同時寫入了。

要標記該設備為 ro,首先需要將其卸載:

  1. #umount/mnt/raid1
  2. #mdadm--manage /dev/md0 --readonly
  3. #mount/mnt/raid1
  4. #touch/mnt/raid1/test1

在 RAID 陣列上設置權限

要配置陣列允許寫入操作需要使用 --readwrite 選項。請注意,在設置 rw 標志前,你需要先卸載設備並停止它:

  1. #umount/mnt/raid1
  2. #mdadm--manage /dev/md0 --stop
  3. #mdadm--assemble /dev/md0 /dev/sdc1 /dev/sdd1
  4. #mdadm--manage /dev/md0 --readwrite
  5. #touch/mnt/raid1/test2

配置 Raid 允許讀寫操作

總結

在本系列中,我們已經解釋了如何建立一個在企業環境中使用的軟件 RAID 陣列。如果你按照這些文章所提供的例子進行配置,在 Linux 中你會充分領會到軟件 RAID 的價值。

如果你碰巧任何問題或有建議,請隨時使用下面的方式與我們聯系。

如何在Linux上構建 RAID 10陣列 http://www.linuxidc.com/Linux/2014-12/110318.htm

Debian軟RAID安裝筆記 - 使用mdadm安裝RAID1 http://www.linuxidc.com/Linux/2013-06/86487.htm

常用RAID技術介紹以及示例演示(多圖) http://www.linuxidc.com/Linux/2013-03/81481.htm

Linux實現最常用的磁盤陣列-- RAID5 http://www.linuxidc.com/Linux/2013-01/77880.htm

RAID0+1和RAID5的性能測試結果 http://www.linuxidc.com/Linux/2012-07/65567.htm

Linux入門教程:磁盤陣列(RAID) http://www.linuxidc.com/Linux/2014-07/104444.htm


via: http://www.tecmint.com/manage-software-raid-devices-in-linux-with-mdadm/

作者:GABRIEL CÁNEPA 譯者:strugglingyouth 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

Copyright © Linux教程網 All Rights Reserved