Недавно я купил подержанный 24-портовый расширитель HP SAS на 6 Гбит / с (468406-B21 / 487738-001), потому что он дешев и предположительно имеет высокую степень совместимости. К сожалению, я не могу заставить его работать с более чем одним диском, потому что он, очевидно, отображает все диски в слот 0, запутывая как RAID-контроллеры, так и HBA.
На карте стояла прошивка 2.08, обновление до последней версии (2.10) ничего не меняло.
Когда я подключаю его к PERC H700, H310 или LSI 9260, все диски отображаются в слот 0, что делает невозможным их различение. Это также сбило с толку контроллер RAID - если я извлечу диск, он может потерять два диска и так далее, и он может даже не загрузиться.
Например, с двумя подключенными дисками SATA:
-------------------------------------------------------------------------
EID:Slt DID State DG Size Intf Med SED PI SeSz Model Sp
-------------------------------------------------------------------------
2:0 3 UGood - 111.25 GB SATA HDD N N 512B ST9120822AS U
2:0 5 UGood - 185.75 GB SATA HDD N N 512B TOSHIBA MK2035GSS U
-------------------------------------------------------------------------
Здесь оба диска привязаны к корпусу 2, слот 0 и не могут быть различимы в последующих командах. Я сталкиваюсь с аналогичными проблемами при подключении расширителя к «тупому» HBA, например к контроллеру на базе LSI-9211.
Существует множество отчетов о людях, использующих этот расширитель с той же версией (-ами) прошивки, что и я, без каких-либо проблем, и все контроллеры отлично работают с другими объединительными платами, которые я пробовал (на основе Supermicro LSI), поэтому я интересно, я что-то делаю не так или карта как-то сломалась.
Пример показать журнал Выход H700 при подключении двух дисков показан ниже:
02/04/18 3:09:34: iopiEvent: EVENT_SAS_DISCOVERY
02/04/18 3:09:34: DM_HandleDiscEvent: Discovery started on Port 0
02/04/18 3:09:34: iopiEvent: MPI2_EVENT_SAS_TOPOLOGY_CHANGE_LIST
02/04/18 3:09:34: DM_HandleTopologyChgEvnt: PhysicalPort=0 NumberOfPhys=x25 NumEntries=x0c StartPhy=xc
02/04/18 3:09:34: ExpStatus=x03 PhysicalPort=0 EnclosureHandle=x0002 Expander devHandle=x0009 - Exp RESPONDING
02/04/18 3:09:34: Phy changed - phy 0c devHandle 0000 linkRate 00 curLinkRate 0
02/04/18 3:09:34: Phy changed - phy 0f devHandle 0000 linkRate 00 curLinkRate 0
02/04/18 3:09:34: Device ADDED - phy x14 devHandle x000c parentDevHdl x0009 phyNum x14 slot x37 deviceInfo=x00000081 sasAddr=5001438022c783d4
02/04/18 3:09:34: Device ADDED - phy x17 devHandle x000d parentDevHdl x0009 phyNum x17 slot x34 deviceInfo=x00000081 sasAddr=5001438022c783d7
02/04/18 3:09:34: DM_DevMgrIsChipInit 0 State 400
02/04/18 3:09:35: iopiDiscoveryComplete SubSystem 2 Count 9 InitState 1
02/04/18 3:09:35: iopiEvent: EVENT_SAS_DISCOVERY
02/04/18 3:09:35: DM_HandleDiscEvent: Discovery Completed on Port 0
02/04/18 3:09:36: DM_DevSSUCallback: DevId x0006 errCount 0 Retry 0 Status 2
02/04/18 3:09:36: DM_DevSSUCallback: SENSE Len 12 ResponseCode 70 senseKey 6 asc 29 ascq 0
02/04/18 3:09:36: DM_DevMgrIsChipInit 0 State 400
02/04/18 3:09:38: DM_DevSSUCallback: DevId x0007 errCount 0 Retry 0 Status 2
02/04/18 3:09:38: DM_DevSSUCallback: SENSE Len 12 ResponseCode 70 senseKey 6 asc 29 ascq 0
02/04/18 3:09:38: devId 6 isn't directly attached
02/04/18 3:09:38: devId 6 - slot num - 6
02/04/18 3:09:38: devId 7 isn't directly attached
02/04/18 3:09:38: devId 7 - slot num - 7
02/04/18 3:09:38: DM_DevNotifyRAID: Notify Done. Check for Removal
02/04/18 3:09:38: gDevInfo=842360a0, size=160
02/04/18 3:09:38: Total Device = 3
02/04/18 3:09:38: PD Flags State Type Size S N Vendor Product Rev P C ID SAS Addr Port Phy DevH BFw BRev
02/04/18 3:09:38: --- -------- ----- ---- -------- - - -------- ---------------- ---- - - -- ---------------- ---- --- ---- ---- ----
02/04/18 3:09:38: 2 01400005 00020 0d 0 0 0 0 HP HP SAS EXP Card 2.10 0 0 0a 5001438022c783e5 00 24 0a NA NA
02/04/18 3:09:38: 6 f1400005 00020 00 1749f1af 1 1 0 ATA TOSHIBA MK2035GS 1D 0 0 0c 5001438022c783d4 00 14 0c NA NA
02/04/18 3:09:38: 7 f1400005 00020 00 df94baf 1 1 0 ATA ST9120822AS D 0 0 0d 5001438022c783d7 00 17 0d NA NA
02/04/18 3:09:38: 100 00400005 00020 03 0 0 0 0 LSI SMP/SGPIO/SEP 4651 0 0 ffff 0 00 ff 00 NA NA
02/04/18 3:09:38: PhyId 4 Sas 5001438022c783e6 Type 2 IsSata 0, Smp 1:1
02/04/18 3:09:38: PhyId 5 Sas 5001438022c783e6 Type 2 IsSata 0, Smp 1:1
02/04/18 3:09:38: PhyId 6 Sas 5001438022c783e6 Type 2 IsSata 0, Smp 1:1
02/04/18 3:09:38: PhyId 7 Sas 5001438022c783e6 Type 2 IsSata 0, Smp 1:1
02/04/18 3:09:38: PhyId 0 Sas 0 Type 0 IsSata 0, Smp 0:0
02/04/18 3:09:38: PhyId 0 Sas 0 Type 0 IsSata 0, Smp 0:0
02/04/18 3:09:38: PhyId 0 Sas 0 Type 0 IsSata 0, Smp 0:0
02/04/18 3:09:38: PhyId 0 Sas 0 Type 0 IsSata 0, Smp 0:0
02/04/18 3:09:38: Load Balance Statistics Path0PDs 3 Path1PDs 0
02/04/18 3:09:38: EVT#07666-02/04/18 3:09:38: 91=Inserted: PD 06(e0x02/s0)
02/04/18 3:09:38: EVT#07667-02/04/18 3:09:38: 247=Inserted: PD 06(e0x02/s0) Info: enclPd=02, scsiType=0, portMap=00, sasAddr=5001438022c783d4,0000000000000000
02/04/18 3:09:38: EVT#07668-02/04/18 3:09:38: 91=Inserted: PD 07(e0x02/s0)
02/04/18 3:09:38: EVT#07669-02/04/18 3:09:38: 247=Inserted: PD 07(e0x02/s0) Info: enclPd=02, scsiType=0, portMap=00, sasAddr=5001438022c783d7,0000000000000000
Обновить:
Если я попрошу расширитель указать его дополнительную страницу определения элемента, он покажет «номер слота устройства: 0» для всех слотов - другие расширители перечисляют здесь увеличивающиеся числа, и я подозреваю, что это косвенная причина моей проблемы. Я также попробовал этот расширитель на более новом контроллере H740P, и он перечисляет диски как подключенные напрямую (не в корпусе), с выдуманными идентификаторами слотов - это улучшение, но оно страдает от других проблем, таких как перечисление западного цифровой корпус (т.е. один из подключенных дисков указан как корпус).
Я также купил еще один из этих расширителей, и его поведение идентично, поэтому маловероятно, что расширитель сломан - похоже, H700 требует идентификаторов слотов, а расширитель HP SAS просто не поддерживает их - или есть способ как-то переназначить номера слотов устройств на странице AES?
После некоторого исследования кажется, что расширители SAS на основе PMC-Sierra перечисляют все номера слотов устройств как 0, и это разрешено спецификацией SAS, поскольку другие страницы диагностики и протокол обнаружения smp не утверждают, что устройство является действительным. номера слотов.
Таким образом, проблема вызвана довольно ошибочной реализацией SAS в контроллерах LSI SAS, которые заставляют использовать номера слотов, даже если они не существуют, вместо использования идентификаторов дисков, которые являются уникальными, или другого механизма (например, адресов sas ).
Я не знаю, является ли это просто недостатком пользовательского интерфейса в инструментах (таких как storcli) или он идет глубже. По крайней мере, проблемы с обнаружением в Perc H700 связаны с ошибочной реализацией обнаружения топологии sas, которая определена стандартом SAS и не использует номера слотов. У драйверов HBA от LSI похожие проблемы.