В этой части мы продолжим рассмотрение пост-установочных процедур после установки ОС CentOS Linux 7.2 на сервер HP ProLiant DL360 G5. Рассмотрим пример обновления драйверов и прошивок firmware (исключительно для наглядности) для двух-портового оптического контроллера Fibre Channel (FC) Host Bus Adapter (HBA) QLogic QLE2462 или, по классификации HP, FC1242SR.
Идентификация оборудования
Определяем то, как Linux-система видит наш двух-портовый FC HBA контроллер на шине PCI, например с помощью утилиты lspci:
# lspci | grep HBA 0b:00.0 Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA (rev 03) 0b:00.1 Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA (rev 03)
В логе /var/log/dmesg смотрим то, какой драйвер был подгружен в процессе загрузки ОС для FC контроллера:
# cat /var/log/dmesg | grep HBA [0.826214] qla2xxx [0000:00:00.0]-0005: : QLogic Fibre Channel HBA Driver: 8.07.00.18.07.2-k. [1.153433] qla2xxx [0000:0b:00.0]-00fb:0: QLogic HPAE312A - PCI-Express Dual Port 4Gb Fibre Channel HBA. [1.481317] qla2xxx [0000:0b:00.1]-00fb:3: QLogic HPAE312A - PCI-Express Dual Port 4Gb Fibre Channel HBA.
Как видим, в CentOS 7.2 уже есть драйвер qla2xxx версии 8.07.00.18.07.2-k, который фигурирует в процессе загрузки системы. Попробуем найти более новую версию драйвера на сайте HP … Тут наверно стоит сделать замечание о том, почему на сайте HP, а не на сайте QLogic. Несмотря на то, что на сайте QLogic есть драйвер более новой версии для модели контроллера QLE2462, я полагаю, что правильней использовать всё-таки драйвер HP, так как данная модель контроллера является ребрендинговой, поставляется с модифицированной HP прошивкой firmware и поэтому правильней будет её эксплуатировать именно с драйвером от HP. Если у кого-то есть иная точка зрения, да ещё и подкреплённая личным опытом использования выше обозначенной модели контроллера, было бы интересно выслушать её в комментариях.
Устанавливаем HP FC Enablement Kit for Linux
Забегая вперёд, скажу, что для работы утилиты обновления прошивки, которую мы будем использовать в дальнейшем, потребуется наличие установленного пакета утилит HP Fibre Channel Enablement Kit for Linux – QLogic.
Загружаем и устанавливаем текущую версию 6.0.0.0-1 (01.04.2016):
# wget http://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p242974528/v111359/HP-CNA-FC-hpqlgc-Enablement-Kit-6.0.0.0-1.noarch.rpm # yum install ~/HP-CNA-FC-hpqlgc-Enablement-Kit-6.0.0.0-1.noarch.rpm
Обновляем драйвер
Драйвер контроллера FC1242SR для ОС RHEL7 удалось найти по ранее описанной схеме. HP в свойственной им манере на странице загрузки драйверов для этой модели контроллера упорно делают вид, что драйвер доступен максимум для RHEL6. Однако удалось выяснить, что драйвер для RHEL7 таки есть и в ходит в пакет под называнием Red Hat Enterprise Linux 7 Server FCoE/FC Driver Kit for HPE QLogic CNAs, HBAs and mezzanine HBAs and CNA. Загрузить его можно со страницы одного из современных HBA поддерживаемых эти пакетом, например отсюда. Текущая версия пакета драйверов 8.07.00.29.07.0-k1 (b)(01.04.2016) доступна к загрузке здесь. Кстати, на этой же странице на закладке замечаний о версии можно найти подтверждение того, что наш контроллер поддерживается этим пакетом драйверов.
Загружаем и устанавливаем пакет с драйвером:
# wget http://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p464413418/v115798/kmod-qlgc-qla2xxx-8.07.00.29.07.0_k1-2.rhel7u2.x86_64.rpm # yum install ~/kmod-qlgc-qla2xxx-8.07.00.29.07.0_k1-2.rhel7u2.x86_64.rpm
После установки перезагружаем сервер и убеждаемся в том, что в ходе загрузки ОС используется уже обновлённая версия драйвера:
# cat /var/log/dmesg | grep HBA [0.887429] qla2xxx [0000:00:00.0]-0005: : QLogic Fibre Channel HBA Driver: 8.07.00.29.07.0-k1. [1.220426] qla2xxx [0000:0b:00.0]-00fb:0: QLogic HPAE312A - PCI-Express Dual Port 4Gb Fibre Channel HBA. [1.560409] qla2xxx [0000:0b:00.1]-00fb:3: QLogic HPAE312A - PCI-Express Dual Port 4Gb Fibre Channel HBA.
Обновляем Firmware
Находим на сайте HP утилиту обновления HP Firmware Flash for QLogic Fibre Channel Host Bus Adapters - Linux (x86_64). Текущая версия 2016.02.01 (01.04.2016). В инструкции по установке находим требование о том, что перед использованием этой утилиты предварительно уже должны быть установлены пакет утилит и драйвер совместимой версии (их мы установили ранее):
The HPE supplied QLogic driver and enablement kit must be installed prior to this firmware component being identified by HP SUM for deployment.
…
* Red Hat Enterprise Linux 7 Server FCoE/FC Driver Kit for HPE QLogic CNAs, HBAs and mezzanine HBAs and CNAs version 8.07.00.29.07.0-k1
* HP Fibre Channel Enablement Kit for Linux - QLogic, version 6.0.0.0-1
Убедившись в том, что данная версия утилиты является самой свежей переходим на вкладку информации об этой версии и проверяем, если ли там поддержка нашего контроллера. В данном случае этой информации нет, значит нужно перейти на вкладку истории версий и выбрать предыдущую версию прошивки. Это приходится делать потому, что пакет не является кумулятивным и от версии к версии меняет состав входящих в него прошивок для разных контроллеров Emulex. Таким образом мы ищем информацию о поддержке нашего контроллера в предыдущих релизах и добираемся до версии 2015.02.02 (21.04.2015), где эта поддержка присутствует.
Загружаем и устанавливаем пакет с утилитой обновления firmware:
# wget http://whp-aus1.cold.extweb.hp.com/pub/softlib2/software1/sc-linux-fw-sys/p1110643165/v106982/RPMS/x86_64/hp-firmware-fc-qlogic-2015.02.02-1.1.x86_64.rpm -P ~/HP # yum install ~/HP/hp-firmware-fc-qlogic-2015.02.02-1.1.x86_64.rpm
Установка пакета развернёт утилиту обновления в каталог /usr/lib/x86_64-linux-gnu (на 64-битной системе) или /usr/lib/i386-linux-gnu (на 32-битной системе)
# ls -la /usr/lib/x86_64-linux-gnu drwxr-xr-x. 2 root root 4096 May 28 09:40 hp-firmware-fc-qlogic-2015.02.02-1.1
drwxr-xr-x. 2 root root 4096 May 28 09:40 hp-scexe-compat
Переходим в подпапку с новой версией firmware и запускаем скрипт обновления .hpsetup
# cd /usr/lib/x86_64-linux-gnu/hp-firmware-fc-qlogic-2015.02.02-1.1/ # ./.hpsetup
<
В моём случае прошивка контроллера уже была обновлена ранее через HP SPP, поэтому скрипт сообщает о том, что ничего делать не требуется.
***
Для обеспечения возможности последующих обновлений установленных пакетов драйверов и утилит в следующей заметке мы рассмотрим пример подключения онлайн-репозитория HP.
У меня был случай когда qlogic отказал в поддержке потому что использовался адаптер сервера ibm x3650m4. Саппорт так и ответил: чип наш, драйвера ibm к ним и обращайтесь.