為什麼我所謂的基於硬體的 RAID 顯示為“假 RAID”
我有一個用於 SOHO 設置的低端伺服器:Gen8 HP Microserver。它有一個內置的動態智能陣列 B120i (RAID) 控制器。在安裝任何作業系統之前啟動伺服器時,我能夠打開 HP Smart Array 配置實用程序並創建一個邏輯驅動器,跨越我的 4 個具有 RAID 1+0 的物理磁碟。
經過一番折騰,我能夠安裝 CentOS 7 並查看磁碟
lsblk
:NAME MAJ:MIN RM SIZE RO TYPE sda 8:0 0 698.7G 0 disk ├─sda1 8:1 0 698.7G 0 part └─ddf1_Storage 253:2 0 698.5G 0 dmraid sdd 8:48 0 698.7G 0 disk ├─sdd1 8:49 0 698.7G 0 part └─ddf1_Storage 253:2 0 698.5G 0 dmraid sde 8:64 0 698.7G 0 disk ├─sde1 8:65 0 698.7G 0 part └─ddf1_Storage 253:2 0 698.5G 0 dmraid sdf 8:80 0 698.7G 0 disk ├─sdf1 8:81 0 698.7G 0 part └─ddf1_Storage 253:2 0 698.5G 0 dmraid
所以,這看起來像一個基於軟體的 RAID,也就是假 RAID,而不是我期望看到的一個磁碟。
有人可以解釋一下內置 RAID 控制器實際上為我做了什麼嗎?
這是一個動態智能陣列控制器。它不是功能齊全的 HP RAID 控制器。但是,如果您使用的是兼容的作業系統,它比純粹的“fakeraid”解決方案要好。RAID 邏輯移至 Linux 中的“hpvsa”驅動程序,而不是硬體。
驅動程序是特定於核心的…… B120i 是一個晶片組 AHCI SATA 控制器,需要特定於核心的專有驅動程序才能實現軟體派生的 RAID 功能。許多人將這些晶片組 SATA 控制器稱為“假 RAID”……HPE 建議使用作業系統中包含的“mdadm”軟體 RAID 功能。
要在此 RAID 控制器上安裝支持的作業系統,您必須將驅動程序集成到安裝過程中。這是撰寫本文時的目前驅動程序。
主要的是,有一條升級路徑可以升級到合適的 HP Smart Array 控制器,並且磁碟格式允許這種遷移。
但是,您顯示的輸出表明您尚未創建真正的邏輯驅動器。
這是動態智能陣列上 lsblk 的輸出。/dev/sda 是由邏輯驅動器表示的塊設備。
[root@Tudor_Ranch ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 40G 0 disk ├─sda1 8:1 0 500M 0 part /boot ├─sda2 8:2 0 10G 0 part / ├─sda3 8:3 0 10G 0 part /usr ├─sda4 8:4 0 1K 0 part ├─sda5 8:5 0 6G 0 part /var ├─sda6 8:6 0 4G 0 part [SWAP] └─sda7 8:7 0 1G 0 part /tmp
同樣,這在
hpssacli
命令輸出中很明顯:=> ctrl all show config Smart Array B320i RAID in Slot 0 (Embedded) Internal Drive Cage at Port 1I, Box 1, OK Internal Drive Cage at Port 2I, Box 0, OK array A (Solid State SATA, Unused Space: 176704 MB) logicaldrive 1 (40.0 GB, RAID 1, OK) logicaldrive 2 (60.0 GB, RAID 1, OK) physicaldrive 1I:1:1 (port 1I:box 1:bay 1, Solid State SATA, 200 GB, OK) physicaldrive 1I:1:2 (port 1I:box 1:bay 2, Solid State SATA, 200 GB, OK)
我認為您剛剛使用 Linux MD 軟體 RAID 安裝了您的作業系統。
另見: