請教各位SSD的高手 關於金士頓 HyperX 3K 120G的速度(已解決)

drabbit wrote:
應該是Fake RA...(恕刪)


拍謝啦,英文不好,是 Fake RAID 沒錯
(FAKE 英文意思:假的、偽造的、贗品)


在那篇 How TO 中,有提到

Why not use a linux software raid?
為什麼不用 Linux 軟體 RAID

那一段很長,大意是說:
如果有需要與 windows 共用同一個磁區(雙 OS 啟動),那就必須用 Fake RAID,因為 windows 無法辨認 Linux 軟體 RAID 的磁區。


然後它下面加了一段提醒:
Warning /!\ That said, linux software raid is more robust and better supported and thus, recommended over fakeraid if you do not need to dual boot with Windows.

翻譯:那就是說,Linux 軟件 RAID 是更強大和更好的支持性,因此,建議直接無視 fakeraid,如果你不需要 Windows 的雙啟動。


所以說:
軟體 RAID(SOFT RAID),事實上比 Fake RAID 強,效能更好,靈活度也更大。

Fake RAID,廉價主機板內建的那種無處理器 RAID,不論任何品牌。是有特別需求,比如需要多 OS 啟動,要讓每個 OS 都能讀寫那個 RAID 磁區,才去用 Fake RAID。而代價是犧牲效能和靈活性。
fedora wrote:
軟體 RAID(SOFT RAID),事實上比 Fake RAID 強,效能更好,靈活度也更大。

Fake RAID,廉價主機板內建的那種無處理器 RAID,不論任何品牌。是有特別需求,比如需要多 OS 啟動,要讓每個 OS 都能讀寫那個 RAID 磁區,才去用 Fake RAID。而代價是犧牲效能和靈活性。

請教一下:
如果是Soft RAID,作業系統本身所在的分割區也可以做成RAID嗎?
例如:兩顆HDD做RAID 1,這個RAID本身亦有安裝作業系統,這種情況可以靠純Soft RAID達成嗎?
謝謝!

我有電腦主機板是內建Intel 3420晶片控制器,提供LSI MegaRAID功能,須配合驅動程式才能使用。我自己有試過,做成RAID 1的情況下,拔掉一顆硬碟,可以只靠另一顆硬碟維持作業系統的運作。這點對我來說很重要,不希望因為作業系統所在的一顆硬碟掛了導致作業系統也停擺。(掛兩顆就認了)
蝦米爸爸 wrote:
請教一下:如果是So...(恕刪)


不懂你說的,一般來說,主機有提供到0和1的磁碟陣列,在BIOS設定,這個屬於實體RAID,並不是軟體RAID。
真的軟體RAID,是進入"作業系統"後,可以把兩顆以上的"硬碟分割區(或硬碟)"做raid管控,這個RAID基本上會需要靠CPU運作。(如果是Soft RAID,作業系統本身所在的分割區也可以做成RAID嗎?<--所以理論上是不行的。)
你可以試試看,把一顆硬碟先邏輯磁碟分割,開3個邏輯磁區分割,點選功能就會看到可以做raid5(軟體式)。你可以在不同硬碟上面的磁碟分割區選擇想要的硬碟RAID組成方式,就可以做到軟體RAID。

目前主機板大多都可以做到RAID0或RAID1,屬於硬體式了,你應該可以用硬體作就好了。
一般來說RAID卡因為有一顆獨立CPU,所以會較主機板內建的RAID效能較好。
而且好的raid卡可以加ram和電池。為什麼要這樣設計,因為有些磁碟陣列的硬碟配對資料是寫在磁碟陣列上面,如果沒電,記錄消失,那類似raid5就會損毀。
但是像smart array(EX:HP),他是磁碟陣列的資料寫在硬碟上面,所以回復的時候,磁碟陣列硬碟順序理論上可以任意擺放。如果不支援這種功能的,一定要將硬碟照順序放。(這邊指的是,如果做機器搬移,硬碟拔出來的時候,要照原本拔下來的順序插回去。不然類似raid5磁碟陣列會崩毀)
還有,這個應該也是磁碟陣列卡可以做的事情,就是hot spare,也就是熱備援硬碟。這個的用法是例如我有三顆硬碟,兩顆做raid 1,一顆做hot spare,那麼當組成raid1的兩顆硬碟有一顆損毀時,hot spare的那顆硬碟可以直接替代原本的硬碟做raid組成(raid5也一樣),可以降低同時壞掉兩顆的悲劇。

如果不是需要很高效能的,基本上用兩顆硬碟來做riad1,用主板內建的也夠用了。

其實fedora大大有說錯一件事情,硬體RAID,是說組成邏輯磁碟的時候,靠磁碟陣列卡管理沒錯(不必驅動,不吃 CPU 資源<--這邊指的是實體硬碟),但是他進入作業系統還是要靠驅動程是去認是磁碟陣列卡做出來的邏輯磁碟。所以新的磁碟陣列卡作業系統不認識的時候,需要在安裝作業系統以額外方式掛載磁碟陣列卡,不然作業系統其實會不認得那顆邏輯磁碟的。
磁碟陣列的邏輯磁碟和實體磁碟,是分開來看的。OS是看磁碟陣列卡分享出來的邏輯磁碟來處理事情的。
當資料丟給RAID的時候,是靠RAID的CPU來管理實體硬碟的,這也是RAID卡的好處,但是你要丟給RAID卡的吞吐,還是得靠主機的CPU。
dennis168 wrote:
不懂你說的,一般來說,主機有提供到0和1的磁碟陣列,在BIOS設定,這個屬於實體RAID,並不是軟體RAID。

您好,感謝您不厭其煩的回答小弟的問題!

先貼一下我手上的使用手冊:



根據使用手冊上的說明,它是軟體式的磁碟陣列(software RAID)。

我自己以前試驗的結果,如果不載入驅動程式,兩顆硬碟就會被作業系統視為各自獨立的硬碟,若有載入驅動程式就可以當作一顆硬碟(RAID 1)。

我自己是這樣想的:純硬體的磁碟陣列就好像獨立顯示卡,有自己的運算處理器、記憶體;驅動程式型的磁碟陣列就好像內建顯示卡,是靠電腦上的CPU和記憶體來達成這樣的功能,目的是降低成本。

dennis168 wrote:
其實fedora大大有說錯一件事情,硬體RAID,是說組成邏輯磁碟的時候,靠磁碟陣列卡管理沒錯(不必驅動,不吃 CPU 資源<--這邊指的是實體硬碟),但是他進入作業系統還是要靠驅動程是去認是磁碟陣列卡做出來的邏輯磁碟。所以新的磁碟陣列卡作業系統不認識的時候,需要在安裝作業系統以額外方式掛載磁碟陣列卡,不然作業系統其實會不認得那顆邏輯磁碟的。

純硬體式的磁碟陣列,我只能就我手上的磁碟陣列盒來想,它接上eSATA插槽後,直接被電腦當作是一個SATA硬碟機,的確是不需要額外的驅動程式就能使用了。

純硬體的磁碟陣列卡需要驅動程式是因為類似SATA擴充卡需要驅動?這部分我只好先這樣猜測。

就我所知道的,即使是磁碟陣列卡,也有可能是軟體RAID:
RAID卡要怎麼去分軟體raid或硬體raid
主要還是運算RAID的過程是不是由磁碟陣列卡獨立完成?(內建在主機板上的RAID亦然)

fedora大大提到的純軟體RAID,是指由作業系統所建立起來的RAID,本質上作業系統還是把它們當成各自獨立的硬碟,而且要等作業系統先完成開機,這些純軟體RAID才能被載入。如果作業系統所在的硬碟掛了,那運作就要停擺了,這是我對純軟體RAID(姑且稱為OS RAID)最不放心的地方。

故這也是我想請教fedora大大是不是有方法可以讓作業系統安裝在純軟體RAID(OS RAID)上,若掛掉了一顆硬碟(OS安裝所在),作業系統照樣運作?
蝦米爸爸 wrote:
...(恕刪)
...(恕刪)
...(恕刪)

其實 只要是有控制晶片的陣列,都算實體raid
差別在是否會獨立運算

raid卡細分高中低階罷了

不管實體軟體陣列,都是需要驅動的.
應該這麼說:

(1)我還沒見過不用驅動程式的擴充卡,不管是顯示卡、USB擴充卡、SATA擴充卡.....凡是需要插在擴充槽上的卡,都得裝驅動程式才能用(頂多是作業系統已經內建好驅動程式,讓使用者不必再另外安裝)

(2)以磁碟陣列盒為例,的確是不需要額外的驅動程式就能使用它了,例如ONNTO dataTale 4Bay Raid System磁碟陣列機,經由面板設定好RAID組態後,可以用eSATA連接到電腦,此時電腦會直接把它當作是"一個"硬碟、不需要安裝甚麼驅動程式。

fedora wrote:
其實廉價主機板內建的那種 RAID
俗稱:False RAID(假的 RAID)
RAID 有三種:
不論哪種都是 RAID,但是外界看法不同
1.
俗稱真正 RAID(硬體層級)= 含處理器的 RAID 卡
上面有 RISC 處理器,一種 CPU,非 X86,RISC 架構(類似 ARM)
不必驅動,不吃 CPU 資源
2.
False RAID(驅動層級)= 廉價主機板內建的 RAID

所以fedora大大所說的"不必驅動"的意思,我可以理解其意思是有如磁碟陣列盒那樣,電腦直接把它當作是一顆硬碟。

凡是擴充卡都需要驅動程式,就好比如果磁碟陣列盒不是插在主機板上的SATA,而是插在另外買的一張eSATA擴充卡,則那張eSATA擴充卡需要安裝驅動程式,這樣才能順利使用擴充卡,也才能抓到接在擴充卡上的磁碟陣列盒。

以上是我的理解,不知符不符合fedora大大的原意?

fedora wrote:
3.
SOFT RAID(軟體層級) = 作業系統提供的軟體 RAID
純 CPU 模擬 RAID 功能,性能由 CPU 決定,還有 OS 的軟體優劣
目前的 CPU 來講,運算高 RISC 處理器不知道多少檔次,模擬 RAID 錯錯有餘
事實上,SOFT RAID 的性能,優於 False RAID
因為 SOFT RAID 是作業系統 kernel 核心直接與 SATA 溝通, False RAID 還要經過"RAID 驅動" 這個介面去溝通,多一層,延遲就會有差。

那小弟最關心的問題還是,如果是OS RAID,是否有可能做到作業系統所在的硬碟掛了其中一顆(不管是RAID 1還是RAID 5),還能靠其它顆硬碟讓OS繼續運作?
蝦米爸爸 wrote:
應該這麼說:(1)我...(恕刪)

我的判斷是,沒辦法。
因為有一個重點是,開機過程中,要先辨識完RAID是否存在後,才知道開機磁區是由幾顆HDD(SSD)組成。
如果是OS先開,代表他都由某一顆HDD都進入作業系統中了,理論上開機OS應該也不存在其他HDD中。所有的磁碟都存有一份開機區,這也很怪。

所以如果是主板在開機過程中可以先判定磁碟數量和邏輯組成,我覺得是比較有可能的。

如果你的那台主機是可以測試,我覺得你就直接測試看看吧(就先把兩顆磁碟組成RAID1,然後進入系統後,關機,拔掉一顆磁碟,開機看能不能順利開機。)。或者你把主機型號(或主機板)給我,我再看看說明手冊。
dennis168 wrote:
如果你的那台主機是可以測試,我覺得你就直接測試看看吧(就先把兩顆磁碟組成RAID1,然後進入系統後,關機,拔掉一顆磁碟,開機看能不能順利開機。)。或者你把主機型號(或主機板)給我,我再看看說明手冊。

小弟自己以前就已經測試過了(模擬救援狀況),以備萬一有狀況時,可以馬上回復原狀。

內建在主機板上的LSI MegaRAID software RAID,如果組成RAID 1,的確可以在掛掉一顆硬碟的情況下繼續運作,在不關機的狀況下(熱插拔)把一顆好的硬碟插回去替代故障的,照樣可以馬上rebuild。可說是窮人的磁碟陣列啊.....(雖然電腦公司很努力的推銷要不要加買一張真正的磁碟陣列卡)

因為Fake RAID和OS RAID都被稱為軟體磁碟陣列,所以煩請各位看文的時候小心區分文意中的Soft RAID是指何者?不過我認為Fake RAID的確是介於純硬體RAID和純軟體RAID之間,部份功能由晶片組支援(才能達到還沒開機完成時就能先使用部分RAID功能)。

fedora wrote:
用 Linux 或 BSD 的人很討厭 False RAID,因為驅動超難搞,不如 SOFT RAID 直接上更省事。假如主機板是 False RAID,都當做沒那個東西,直接無視。

如果安裝作業系統時,沒有把RAID驅動程式正確安裝的話(雖然Ctrl + M已經有設定好),那作業系統就會把兩顆硬碟當作是各自獨立的,而不是"一顆"硬碟,這應該就是fedora大大所說的驅動很難搞。

即使驅動很難搞,但還是要搞出來,因為必須要在掛掉一顆硬碟(作業系統安裝所在)的情況下,電腦照樣維持運作、不能停擺,這就是我不能無視Fake RAID、改用OS RAID的原因。但fedora大大並未將這一點列為Fake RAID的優點,所以我才想請問是不是有甚麼方法可以讓OS RAID在掛掉一顆作業系統硬碟(RAID 1)的情況下,照樣運作?

說明書請參照:(第六章)
http://dlcdnet.asus.com/pub/ASUS/server/RS300-E6/RS300-E6_PS2/Manual/RS300-E6_T4959.zip

現在那台機器已經擔任重要的應用了,所以不能隨意測了。
蝦米爸爸 wrote:
如果是OS RAID,是否有可能做到作業系統所在的硬碟掛了其中一顆(不管是RAID 1還是RAID 5),還能靠其它顆硬碟讓OS繼續運作?...(恕刪)



我也對這個很好奇,所以做了個「實驗」:

一、實驗環境

用 VirtualBox 模擬兩顆虛擬硬碟

如下圖:





5GB-A.vdi 放在我的電腦 D: 碟
5GB-B.vid 放在我的電腦 E: 碟

※ 註:D: E: 是兩顆不同的實體硬碟。

******************************************************

二、安裝 OS

選用 CentOS 6.3 做示範



上圖:兩個虛擬硬碟,全部容量,皆分割為 soft raid 磁區



上圖:把兩個硬碟中的 soft raid 磁區,組成 raid 裝置 md0

RAID 型態:RAID-1



上圖:完成自訂硬碟分割

安裝過程省略。

****************************************************

三、實際啟動 OS




上圖:進入 OS 中,查看硬碟分割表,和 RAID 運作情況

軟體 RAID,狀態顯示:兩顆硬碟都在同步活動中。



上圖:磁碟公用程式(GUI 介面的)


到此為止,證明這台虛擬機是用「軟體 RAID」安裝好 OS 的,且也可進入 OS。

接下去就是精采的部份,重點。

******************************************************

四、軟體 RAID 測試

測試-1:
拔掉「軟體 RAID-1 」其中一顆,另一顆是否可以正常使用?


拔除虛擬硬碟,模擬把 RAID 拔掉硬碟的情況





上圖:拔掉 RAID1 其中一顆硬碟,只剩一棵



啟動虛擬機:啟動失敗...

系統提示:讀不到映像檔

結論:答案是不行


測試2:
加入新的空白硬碟,「軟體 RAID」是否會自動重建?






上圖:加入一顆新的「空白」虛擬磁碟,大小和原先的一樣。

然後啟動虛擬機:啟動失敗.....

結論:答案是,如果系統磁區是做在「軟體 RAID」上,無法自動重建。

※ 註:Linux 的「軟體 RAID」能自動重建,但是重建程式是 OS 裡面的軟體,OS 若無法啟動,就不可能運行軟體。


*********************************************************

五、手動修復「軟體 RAID」

用光碟開機,或隨身碟開機,開進 Live CD 的臨時系統。



上圖:搜尋電腦中所有「軟體 RAID」,並顯示它的狀態

第二顆硬碟離線了,狀態為:被拔除



上圖:將新的空白硬碟(sdb),配給「軟體 RAID」,加入到陣列中

然後顯示「軟體 RAID」狀態

狀態為:第二顆硬碟,重建中



上圖:重建需要一點時間,看機殼硬碟燈號,熄滅了就是完成了。

重新檢查 RAID 狀態:兩顆都活動同步了。健康度回復良好。



上圖:掛載 RAID,檢查資料還在不在

如圖:資料都還在,沒有損一分一毫。


然後,關機 Live 系統。

重新啟動正常系統(硬碟中的系統):啟動失敗.....

分析原因:可能是 boot 程式要改什麼 uuid 啥的,或修復....

這個我不會修,作罷....


*************************************

總結:

1.「軟體 RAID」很可靠。即便開機碟無法自動重建,也能由外部開機,下指令去修復。

2. Linux 雖可以安裝在 「軟體 RAID」中,但不建議。因為開機碟無法自動重建,修復上很麻煩。

但如果是用在別的磁區或掛載目錄,放資料的磁區,非系統磁區,則非常合適,效能好彈性大。

3.
「軟體 RAID」的 RAID-1 模式,是否兩顆一模一樣?

比方說:把 RAID-1 其中一顆,拔去插別台電腦,是否也讀的到?

答案是:讀不到。

必須恢復陣列才能讀取。

「軟體 RAID」在這方面的優勢是規格統一,要修復很容易,它是由軟體模擬的。

而有些 RAID 卡,或品牌的 RAID,彼此之間規格不統一,假設說原先 RAID 卡壞掉,換另一牌子的卡,可能無法重建。然後要去找原先那張卡,停產了又找不到,那就坑爹了。

所以有些人保險起見,RAID 卡會一次買兩張,即使一張放著生灰塵也爽,就是要避免這種坑爹情況。

不過有些硬體 RAID,RAID-1 的部份會兩顆一模一樣,卡就算壞了,拔其中一棵去別的電腦,也能讀的到。

但這也就僅限 RAID-1 了,其餘 RIAD-0 、5、6 之類的。軟體 RAID,規格統一,還是有好處。
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!