在FreeBSD上使用軟RAID-1

來源:互聯網
上載者:User

有沒有想過為低端伺服器做軟 RAID?你或許想過在不購置硬 RAID 控制卡的前提下,通過磁碟鏡像為 你的工作站帶來冗餘保護。你是否有過痛苦的配置經曆,使你對 Unix 系統上的軟 RAID 卻步?

FreeBSD 5.3 及更高的版本加入了 gmirror(8);它讓你輕易地配置使用軟 RAID 1。儘管 gmirror 已有不少教程,但我發現它們不是要求用 bsdlabel 來手動計算分區的大小就是要用到一張用以 修正現有系統的磁碟片。

我以為在安裝作業系統的過程中配置 RAID 更為合理。我也希望配置步驟 能做到易於理解並且不造成諸如計算出錯的人為錯誤。通過拼湊現有的解說文字,自己進行多方配置實驗 後,我找到了在數個不同系統上都適用的配置步驟。我也從 gmirror 的編寫者 Pawel Jakub Dawidek 那 裡得到了很有價值的回饋;他透露了 gmirror 一些尚未公開的特性。

GEOM 背景知識

在介 紹配置步驟之前,先瞭解一下 GEOM 是很有用的。GEOM 是 FreeBSD 5.0 引入的模組磁碟構架。該模組構 架允許通過編寫程式來操控磁碟。FreeBSD 5.3 引入的軟 RAID 程式就是最好的例子。

gstripe (8) 可做 RAID 0

gmirror(8) 可做 RAID 1

graid3(8) 可做 RAID 3

以上的首字元 g 表示這些程式都利用到了 GEOM。

註:若你不知道 RAID 為何物,則可參閱 Webopedia 有關定 義不同 RAID 的連結 http://www.webopedia.com/TERM/R/RAID.html。

man 4 geom 述說了 geom 所用到的磁碟術語;在設定 gmirror 的過程中,我們將會看到一些。它們包括:

provider -- 該 GEOM 實體在 /dev 下出現。本文將介紹如何建立 /dev/mirror/gm0 這個 provider,它代表磁碟鏡像或 雙工。

consumer -- 該實體接收 I/O 請求。在鏡像/雙工的例子中,這指的就是兩塊硬碟。我用 兩根資料線分別串連兩塊 IDE 硬碟,得到 /dev/ad0 和 /dev/ad2。

metadata (中繼資料) -- 在不 同的 RAID 中,它包括陣列成員及其尺寸、位置,邏輯磁碟及分區的描述和磁碟陣列的目前狀態。

鏡像/雙工 -- RAID 1 保持兩塊硬碟的資料一致。換句話說,它將一塊硬碟的資料鏡射到另一塊 硬碟。若兩塊硬碟同接在一根 IDE 資料線上,則稱為鏡像;若兩塊硬碟接在不同的資料線上,則稱為雙 工。因為單一資料線易造成單點故障,所以採用雙工的佔大多數。

在安裝作業系統的過程中配置 鏡像/雙工

若你打算用 RAID 1,為避免節外生枝,購置兩塊一模一樣的硬碟(相同的型號和尺寸) 。若型號或尺寸不一致,事情將會變得很複雜;就算經過艱辛的配置成事了,到頭來,你只能以浪費較大 硬碟多出來的空間收場。將一個作為第一主盤,另一個作為第二主盤,接好兩塊一樣的硬碟。在安裝操作 系統之前,再次檢查 CMOS 是否已認出兩塊硬碟。

按自己喜歡的安裝方式開始安裝 FreeBSD 任一 版本(5.3 或以上)。到了 select Drives (選定硬碟)菜單時,將會顯示 ad0 和 ad2。選 ad0,因為你將 把作業系統安裝於該主盤上。

進入 fdisk 介面後,刪除所有現存的分區,然後選 Use entire disk (使用整個磁碟)。當提示啟動菜單時,選 Standard MBR (標準 MBR)。

來到 disklabel 界 面時,根據自己的需要將 ad0 分區。若不知道該怎麼做,選 a 讓系統自動分區。然後選擇預設的安裝套 件和安裝媒體源,讓作業系統如常安裝。

安裝完畢後,瀏覽到 postinstall configurations (後 安裝配置)設定你的時區,建立使用者帳號,設定 root 的密碼等。

不過,當回到 sysinstall 主菜 單時,不要急於重啟系統。按下 Alt-F4,進入命令提示行。我們首先鍵入 csh 命令,這樣就得到一個帶 記錄的 shell (預設的 shell 是 Bourne)。

建立鏡像/雙工很簡單,只要鍵入:

# gmirror label -v -b round-robin gm0 /dev/ad0

其中,gmirror label 建立鏡像;-v 開啟冗長 模式;-b round-robin 選用平衡演算法(目前 round-robin 演算法效能最佳);gm0 即鏡像/雙工的名稱(該名 稱代表第一個 GEOM 鏡像);/dev/ad0 代表用以鏡射的來源硬碟。

然而,若現在便鍵入命令會使你失 望。

# gmirror label -v -b round-robin gm0 /dev/ad0

Can't store metadata on /dev/ad0: Operation not permitted

(無法將中繼資料儲存於 /dev/ad0 上:禁止操作)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.