Назад | Перейти на главную страницу

CentOS7 и LSI-9200-8E: как увидеть все внешние диски?

Я работаю над малобюджетным изменением конфигурации, которое включает миграцию из рабочей среды IBM M1010 (LSI9220-8i) с обновленной прошивкой на более новый сервер с LSI9200-8e SAS HBA.

На старом сервере все работает нормально, но он потребляет много энергии, и желательна конфигурация с меньшими затратами энергии.

Когда диски отключаются от старого сервера и подключаются к новому серверу, я получаю в журналах такую ​​последовательность:

Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: 64 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (18317688 kB)
Jan  6 13:15:17 hostname1 kernel: kvm: VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL does not work properly. Using workaround
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: MSI-X vectors supported: 1, no of cores: 4, max_msix_vectors: -1
Jan  6 13:15:17 hostname1 kernel: mpt2sas1-msix0: PCI-MSI-X enabled: IRQ 34
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: iomem(0x00000000fbff0000), mapped(0xffffc90003620000), size(16384)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: ioport(0x0000000000006000), size(256)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: Allocated physical memory: size(4422 kB)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: Current Controller Queue Depth(1948),Max Controller Queue Depth(2040)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: Scatter Gather Elements per IO(128)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: LSISAS2008: FWVersion(20.00.07.00), ChipRevision(0x03), BiosVersion(00.00.00.00)
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: Protocol=(
Jan  6 13:15:17 hostname1 kernel: Initiator
Jan  6 13:15:17 hostname1 kernel: ,Target
Jan  6 13:15:17 hostname1 kernel: ),
Jan  6 13:15:17 hostname1 kernel: Capabilities=(
Jan  6 13:15:17 hostname1 kernel: TLR
Jan  6 13:15:17 hostname1 kernel: ,EEDP
Jan  6 13:15:17 hostname1 kernel: ,Snapshot Buffer
Jan  6 13:15:17 hostname1 kernel: ,Diag Trace Buffer
Jan  6 13:15:17 hostname1 kernel: ,Task Set Full
Jan  6 13:15:17 hostname1 kernel: ,NCQ
Jan  6 13:15:17 hostname1 kernel: )
Jan  6 13:15:17 hostname1 kernel: scsi host4: Fusion MPT SAS Host
Jan  6 13:15:17 hostname1 kernel: mpt2sas_cm1: sending port enable !!

... trimmed out probably unrelated messages ...

Jan  6 13:15:19 hostname1 kernel: mpt2sas_cm1: host_add: handle(0x0001), sas_addr(0x500605b005722a20), phys(8)

... trimmed out probably unrelated messages ...

Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: CDB: Inquiry 12 00 00 00 24 00
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: handle(0x0009), sas_address(0x4433221100000000), phy(0)
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: enclosure_logical_id(0x500605b005722a20), slot(0)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: task abort: FAILED scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: attempting device reset! scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: CDB: Inquiry 12 00 00 00 24 00
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: handle(0x0009), sas_address(0x4433221100000000), phy(0)
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: enclosure_logical_id(0x500605b005722a20), slot(0)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: device reset: FAILED scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: attempting target reset! scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: CDB: Inquiry 12 00 00 00 24 00
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: handle(0x0009), sas_address(0x4433221100000000), phy(0)
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: enclosure_logical_id(0x500605b005722a20), slot(0)
Jan  6 13:15:40 hostname1 kernel: scsi target4:0:0: target reset: FAILED scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: mpt2sas_cm1: attempting host reset! scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: CDB: Inquiry 12 00 00 00 24 00
Jan  6 13:15:40 hostname1 kernel: mpt2sas_cm1: Blocking the host reset
Jan  6 13:15:40 hostname1 kernel: mpt2sas_cm1: host reset: FAILED scmd(ffff880488f78380)
Jan  6 13:15:40 hostname1 kernel: scsi 4:0:0:0: Device offlined - not ready after error recovery

Я уже установил последнюю версию прошивки LSI, так как это казалось наиболее вероятным источником проблем. Водитель вроде бы это подтверждает:

LSISAS2008: FWVersion(20.00.07.00), ChipRevision(0x03), BiosVersion(00.00.00.00)

Прошивка была получена здесь: https://docs.broadcom.com/docs-and-downloads/host-bus-adapters/host-bus-adapters-common-files/sas_sata_6g_p20/9200-8e_Package_P20_IT_FW_BIOS_for_MSDOS_Windows.zip

Прошивка была прошита с помощью загрузочного live "CD" FreeDOS с http://pingtool.org/bootable-dos-iso-bios-upgrade/

BIOS не загружается, так как именно так поставлялись карты 8E, и я не пытаюсь с них загружаться, поэтому в BIOS не должно быть необходимости.

Я вижу по одному диску на канал SAS, но присутствует от трех до четырех дисков. Один диск работает нормально.

Я попробовал поменять местами кабели, чтобы увидеть, связана ли проблема с конкретным кабелем - похоже, это не так.

Я планирую попробовать CentOS 6 на случай, если проблема связана с драйвером или гонкой во время загрузки. Старый рабочий сервер работает под управлением CentOS 6

Я также планирую попробовать другой дисковый корпус, на всякий случай, если возникнет проблема с синхронизацией или другая странная проблема с физическим уровнем, даже если большая часть физического уровня представляет собой одно и то же оборудование хранения между хостами.

На что еще я должен смотреть?

В итоге я перепрошил карту SAS той же прошивкой со следующими изменениями:

  1. Я сначала стер старую прошивку
  2. Я прошил BIOS, хотя в этом "не должно" быть необходимости, поскольку я загружаюсь не с карты SAS

Подробности:

  1. Удалите все внутренние и внешние диски, чтобы предотвратить случайную перезапись
  2. Загрузитесь с FreeDOS ISO, упомянутого выше, настроенного для включения двоичного файла sas2flsh и файлов прошивки / BIOS
  3. НЕ ПЕРЕЗАГРУЖАЙТЕСЬ ДО ВЫПОЛНЕНИЯ НИЖЕ ДВУХ ШАГОВ
  4. sas2flsh -o -e 6
  5. sas2flsh -o -f 9200_8E.BIN -b MPTSAS2.ROM
  6. sas2flsh -list
  7. "извлечь" ISO и перезагрузить

Вот пример результата "sas2flsh -list" для рабочей карты:

E:\FREEDOS>sas2flsh -c 1 -list
LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.18)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved

        Adapter Selected is a LSI SAS: SAS2008(B2)

        Controller Number              : 1
        Controller                     : SAS2008(B2)
        PCI Address                    : 00:07:00:00
        SAS Address                    : 500605b-0-0572-2a20
        NVDATA Version (Default)       : 14.01.00.07
        NVDATA Version (Persistent)    : 14.01.00.07
        Firmware Product ID            : 0x2213 (IT)
        Firmware Version               : 20.00.07.00
        NVDATA Vendor                  : LSI
        NVDATA Product ID              : SAS9200-8e
        BIOS Version                   : 07.39.02.00
        UEFI BSD Version               : N/A
        FCODE Version                  : N/A
        Board Name                     : SAS9200-8e
        Board Assembly                 : H3-25321-00C
        Board Tracer Number            : SP24651750

        Finished Processing Commands Successfully.
        Exiting SAS2Flash.

Как только это было сделано, все диски волшебным образом появились правильно под CentOS 7.