Linux

ProLiant DL360p Gen8 + P421 + D2700 機箱 + hpsa - 看不到邏輯磁碟設備 (Ubuntu 14.04)

  • March 22, 2016

我繼承了帶有兩個 Smart Array 控制器的 ProLiant DL360p Gen8:

# lspci -d '103c:323b' -k
02:00.0 RAID bus controller: Hewlett-Packard Company Smart Array Gen8 Controllers (rev 01)
       Subsystem: Hewlett-Packard Company P420i
       Kernel driver in use: hpsa
04:00.0 RAID bus controller: Hewlett-Packard Company Smart Array Gen8 Controllers (rev 01)
       Subsystem: Hewlett-Packard Company P421
       Kernel driver in use: hpsa

P421 控制器顯然有一個 D2700 機箱插入了一堆配置為 RAID6 的 SAS 驅動器:

# hpssacli ctrl slot=1 show config                                                                                                                                                      
Smart Array P421 in Slot 1

  StorageWorks D2700 at Port 2E, Box 1, OK
  array A (SAS, Unused Space: 0  MB)

     logicaldrive 1 (19.1 TB, RAID 6, OK)

     physicaldrive 2E:1:1 (port 2E:box 1:bay 1, SAS, 1 TB, OK)
     physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SAS, 1 TB, OK)
     physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SAS, 1 TB, OK)
     physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SAS, 1 TB, OK)
     physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SAS, 1 TB, OK)
     physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SAS, 1 TB, OK)
     physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SAS, 1 TB, OK)
     physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SAS, 1 TB, OK)
     physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SAS, 1 TB, OK)
     physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SAS, 1 TB, OK)
     physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SAS, 1 TB, OK)
     physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SAS, 1 TB, OK)
     physicaldrive 2E:1:13 (port 2E:box 1:bay 13, SAS, 1 TB, OK)
     physicaldrive 2E:1:14 (port 2E:box 1:bay 14, SAS, 1 TB, OK)
     physicaldrive 2E:1:15 (port 2E:box 1:bay 15, SAS, 1 TB, OK)
     physicaldrive 2E:1:16 (port 2E:box 1:bay 16, SAS, 1 TB, OK)
     physicaldrive 2E:1:17 (port 2E:box 1:bay 17, SAS, 1 TB, OK)
     physicaldrive 2E:1:18 (port 2E:box 1:bay 18, SAS, 1 TB, OK)
     physicaldrive 2E:1:19 (port 2E:box 1:bay 19, SAS, 1 TB, OK)
     physicaldrive 2E:1:20 (port 2E:box 1:bay 20, SAS, 1 TB, OK)
     physicaldrive 2E:1:21 (port 2E:box 1:bay 21, SAS, 1 TB, OK)
     physicaldrive 2E:1:22 (port 2E:box 1:bay 22, SAS, 1 TB, OK)
     physicaldrive 2E:1:23 (port 2E:box 1:bay 23, SAS, 1 TB, OK)
     physicaldrive 2E:1:24 (port 2E:box 1:bay 24, SAS, 1 TB, OK, spare)
     physicaldrive 2E:1:25 (port 2E:box 1:bay 25, SAS, 1 TB, OK, spare)
[...]

但是,配置的邏輯驅動器不會顯示在 SCSI 子系統中:

# lsscsi -g
[2:0:0:0]    disk    HP       LOGICAL VOLUME   6.34  /dev/sda   /dev/sg1 
[2:3:0:0]    storage HP       P420i            6.34  -          /dev/sg0 
[3:0:0:0]    disk    HP       LOGICAL VOLUME   6.34  -          /dev/sg3 
[3:3:0:0]    storage HP       P421             6.34  -          /dev/sg2 

邏輯驅動器最初處於故障狀態,我通過以下方式重新啟用:

# hpssacli ctrl slot=1 ld 1 modify reenable

之後我認為驅動器會出現在系統中,但它沒有(兩者都沒有新消息dmesg)。

我也做了重新掃描:

# echo 1 >/sys/class/scsi_host/host2/rescan
# echo 1 >/sys/class/scsi_host/host3/rescan

沒有效果。

我是否錯過了一個基本步驟(我還沒有重新啟動伺服器/機箱……)?

# fdisk -l
Disk /dev/sda: 100.0 GB, 99994337280 bytes
255 heads, 63 sectors/track, 12156 cylinders, total 195301440 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk identifier: 0x0005a4c4

  Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *         512      500223      249856   83  Linux
/dev/sda2          500734   195300863    97400065    5  Extended
Partition 2 does not start on physical sector boundary.
/dev/sda5          500736   195300863    97400064   8e  Linux LVM

Disk /dev/mapper/sys1--vg-root: 31.0 GB, 31016878080 bytes
255 heads, 63 sectors/track, 3770 cylinders, total 60579840 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk identifier: 0x00000000

Disk /dev/mapper/sys1--vg-swap_1: 68.7 GB, 68681728000 bytes
255 heads, 63 sectors/track, 8350 cylinders, total 134144000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk identifier: 0x00000000

hpssacli ctrl all show config defailt 這裡的輸出。

陣列最初“失敗”的是什麼?這是我想知道在您寫問題之前發生了什麼的情況之一。

[3:0:0:0]    disk    HP       LOGICAL VOLUME   6.34  -          /dev/sg3 

您的 D2700 的邏輯驅動器在那裡。也許 admesg | tail會根據您的modify reenable命令向您顯示重新掃描資訊。我可以肯定地說,reenable開關不常用。這不是需要在正常操作中使用的東西。所以:

  • 為什麼陣列失敗?D2700 是否物理拔出?
  • 您希望將其安裝在哪裡?查看/etc/fstab是否有掛載點在等待這個邏輯驅動器。
  • 重新啟動*(或幫助我們了解您尚未重新啟動的原因)*。

引用自:https://serverfault.com/questions/765293