Ранее рассматриваемые странности в работе веб-интерфейса управления Storage Management Utility (SMU) в составе микрокода контроллеров СХД HPE MSA 2062, по большому счёту, можно отнести к разряду косметических и несущественных. Но иногда в работе этой СХД, что называется, на ровном месте, может возникнуть ситуация, которая способна привести к более серьёзным проблемам, при решении которых может потребоваться (в лучшем сценарии исхода) полная кратковременная остановка работы СХД.
Как известно, СХД HPE MSA 2062 поставляется с двумя вычислительными узлами - контроллерами, которые именуются как "A" и "B". При этом каждый контроллер содержит внутри себя разделённую логику с модулями Management Controller и Storage Controller. Перед началом эксплуатации СХД для обоих контроллеров у нас были заданы статические настройки IPv4 в следующем виде:
- Для контроллера "A": IP Address 10.1.2.7, Netmask 255.255.255.0, Gateway 10.1.2.1
- Для контроллера "B": IP Address 10.1.2.8, Netmask 255.255.255.0, Gateway 10.1.2.1
Пару лет с этими статическими настройками всё было нормально и СХД можно было одинаково управлять через любой из Management-контроллеров. Но некоторое время назад мы заметили, что ранее заданные настройки IPv4 на контроллере "А" с какого-то перепугу стали отображаться в каком-то искажённом некорректном виде.
Попытались через веб-интерфейс SMU выполнить смену IP адреса, маски сети и шлюза для контроллера "A" обратно на адрес 10.1.2.7, который был задан изначально. Команда смены адресации выполнялась успешно, но в интерфейсе управления после этого адрес вновь становился таким же странным, словно мы ничего и не делали. Повторные попытки результата не меняли.
Интересно было в этой ситуации то, что, не смотря данные, которые нам показывал интерфейс SMU, адрес контроллера "A" (10.1.2.7) фактически был доступен по сети и отвечал на запросы. При этом было замечено, что если подключаться к веб-интерфейсу SMU по IP адресу контроллера "B", то интерфейс загружается быстро и работает вполне штатно, а если подключаться по IP адресу контроллера "A", то интерфейс загружается очень долго и реагирует на команды с большими задержками.
Стало очевидно, что управляющая часть контроллера "A" работает не в штатном режиме и поэтому предприняли попытку программного перезапуска его Management модуля. Ситуация никак не изменилась, поэтому следующим шагом были перезапущены Management модули сразу двух контроллеров (на работу Storage модулей это не влияет и данные на СХД для подключенных серверов оставались доступны в штатном режиме). Снова безрезультатно.
Для СХД HPE MSA предыдущего поколения (MSA 2050) имеется известная проблема с настройкой параметров IP через веб-интерфейс, где в качестве обходного решения предлагается использование CLI вместо веб-интерфейса SMU для установки IP-адреса. Мы понимаем, что SMU в MSA 2060 и в MSA 2050 это не одно и тоже, но всё же решили проверить этот вариант. То есть, подключились ко вменяемому контроллеру "B" по SSH и выполнили команду настройки IPv4 для контроллера "A":
# set network-parameters ip 10.1.2.7 netmask 255.255.255.0 gateway 10.1.2.1 controller a
Как и в случае с использованием веб-интерфейса SMU, команда отработала успешно, но настройки по факту не изменились.
Следующим шагом предприняли попытку переключить параметры IPv4 на проблемном контроллере на динамическую настройку с помощью DHCP, а потом обратно переключиться на статическую настройку IP. И снова получили прежний результат.
Возникло предположение о том, что это какой-то баг используемой версии микрокода IN110P001 и поднятие микрокода до последней версии гипотетически может решить эту проблему. Однако мы опасались предпринимать попытки обновления микрокода с одним неадекватно работающим контроллером, предполагая, что процесс может закончится тем, что мы потеряем доступ и ко второму контроллеру, и тогда ситуация усугубится ещё больше. Ведь не просто так в заметках к программе обновления микрокода есть вполне логичное примечание:
CAUTION: Before upgrading firmware, ensure that the storage system configuration is stable and is not being reconfigured or changed in any way.
В ходе осмысления дальнейшего плана действий, пообщался с коллегами из ЦОД другого региона и они рассказали интереснейшую историю о том, что не так давно у них с этой же моделью СХД приключилась очень похожая ситуация. В их случае на MSA 2062 с более старшей версией микрокода IN110R001 также SMU вдруг стал отображать неверные данные о настройках IP сразу обоих контроллеров, и, в отличие от нашей ситуации, любая попытка смены IP заканчивалась каким-то невнятными ошибками "MC internal error".
У коллег всё осложнялось тем, что люто тормозили сразу оба управляющих контроллера, и даже в утилите обновления микрокода контроллеров СХД на этапе предварительной проверки возникали ошибки опроса оборудования
Вся эта история в их случае кончилась последовательной заменой обоих контроллеров СХД. И такая перспектива меня не очень сильно радовала и, как я полагаю, ещё меньше нравилась нашей партнёрской компании, у которой СХД всё ещё находится на послепродажной гарантийной поддержке. Технический специалист этой компании после изучения нашей проблемы рассказал о том, что у одного из их заказчиков не так давно тоже возникла очень похожая проблема. И в том случае после ряда безуспешных манипуляций с поочерёдной перезагрузкой Management и Storage контроллеров попробовали полностью выключить СХД. После включения контроллеры СХД снова заработали штатным образом. Мы решили запланировать даунтайм сервисов, зависящих от СХД, и попробовать этот вариант.
Кратковременная полная остановка СХД
Как и полагается в таких случаях, разработали план восстановления данных на мощности другой СХД, на случай полного отказа этой СХД в ходе последующих манипуляций, и запросили у владельцев данных большое окно обслуживания (чтобы иметь запас времени на процедуры восстановления данных на другое оборудование).
Перед началом работ предварительно выполнили создание актуальных резервных копий всех данных, расположенных на СХД. После этого сняли продуктивную нагрузку с СХД, то есть остановили/выключили все сервисы и серверные системы, обращающиеся к ресурсам СХД.
Остановили работу обоих Storage контроллеров СХД через CLI:
# shutdown both
# show shutdown-status
Произвели отключение всех блоков питания (сначала выключаем блоки питания основного шасси СХД, затем выключаем блоки питания дополнительно подключённых дисковых полок).
Дождались, когда на блоках питания погаснут все индикаторы и провели включение всех блоков питания в обратном порядке (сначала включаем блоки питания дополнительно подключённых дисковых полок, через 1-2 минуты включаем блоки питания основного шасси СХД).
Примерно через 5 минут после включения СХД провели проверку доступности обоих контроллеров управления СХД и с удивлением обнаружили, что теперь оба контроллера работают штатно и показывают прежнюю информацию о статических настройка IPv4. Проблемы со странными настройками IP и тормозящим SMU как будто и не было.
Актуализации версии микрокода контроллеров СХД
Логичным дальнейшим действием в нашей ситуации является поднятие до актуального уровня версии микрокода контроллеров СХД.
Текущие версии микрокода для контроллеров СХД, дисковых полок и накопителей MSA, а также ссылки на утилиту обновления можно найти на странице HPE MSA STORAGE FIRMWARE.
Стоит прислушаться к примечанию под таблицей актуальных версий микрокода контроллеров СХД MSA:
UPGRADE NOTE: If upgrading from a version of firmware that is more than two major firmware versions back, it will require a multiple step process to get to the latest firmware version. Firmware should only be upgraded from the last two major firmware releases.
Технические специалисты партнёрской компании, поставляющей СХД, по собственному опыту нам также дали рекомендацию на MSA 2062 не обновляться со старших версий микрокода сразу на последнюю версию, пропуская промежуточные версии. Поэтому, исходя из истории релизов, в нашем случае при условии, что текущая используемая версия микрокода IN110P001 (28 Jan 2022), был составлен план обновления из трёх этапов:
- Этап 1 - до версии IN110P001(A) (29 Mar 2023)
- Этап 2 - до версии IN110P002 (31 Mar 2023)
- Этап 3 - до версии IN210R004 (22 Sep 2023)
Перед началом процесса обновления желательно иметь настроенный и проверенный механизм оповещений на почту от контроллеров СХД. В некоторых нештатных ситуациях отсылаемые контроллерами письма могут помочь разобраться в происходящем.
Первый этап с обновлением до версии IN110P001(A) (29 Mar 2023) в нашем случае, на самом деле, оказался не нужен, так как утилита обновления для этой версии сообщила о том, что микрокод СХД не требует обновления. То есть, фактически, наличие версии IN110P001 приравнивается к уровню IN110P001(A).
Второй этап с обновлением до версии IN110P002 (31 Mar 2023) прошёл как-то скомкано. Процесс предварительных проверок, поочерёдного перезапуска контроллеров, заливки микрокода на оба контроллера выполнялся примерно 18 минут, после чего появилось неприятное и малоинформативное сообщение о том, что некоторые компоненты не обновлены (но сама процедура обновления при этом не остановилась и утилита обновления продолжала работу):
...
=========================================
CONTROLLER B VERSION DETAIL
=========================================
Bundle Version : IN110P002
Storage Controller Code Version : INS110P01-07
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM110P001-06
Management Controller Loader Code Version : 1.63.35083
Expander Controller Code Version : 533D
CPLD Code Version : 2.8
=========================================
Controller A Bundle version: IN110P002 - IP Address: 10.1.2.7
CPLD version of the controller is :2.8
=========================================
CONTROLLER A VERSION DETAIL
=========================================
Bundle Version : IN110P002
Storage Controller Code Version : INS110P01-07
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM110P001-06
Management Controller Loader Code Version : 1.63.35083
Expander Controller Code Version : 533D
CPLD Code Version : 2.8
=========================================
One or more components of firmware is not updated properly
One or more components of firmware is not updated properly
...
В этот момент на почту от СХД прилетело два соответствующих уведомления (по каждому контроллеру):
Alert:
The bundle install is incomplete.
- Retry firmware or contact support
CONTROLLER ID:# A
COMPONENT BASETYPE: firmware_info
COMPONENT NAME: bundle
DETECTED TIME: 2023-11-10 19:04:14
В таких ситуациях для получения дополнительной информации можно заглянуть в более детальный лог, который пишет утилита обновления. Файл лога имеет имя формата %systemdrive%\CPQSYSTEM\log\<MSA-Date~Time~ControllerSerialNumber.log>
В нашем случае в этом логе появилось сообщение о том, что не прошла валидация бандла IN110P002, но не смотря на это, процедура обновления продолжилась и начался процесс активации новой версии микрокода:
...
19:05:23.117 Invalid Bundle found on controller B
19:05:23.117 One or more components of firmware is not updated properly
19:05:23.117 Invalid Bundle found on controller A
19:05:23.117 One or more components of firmware is not updated properly
19:05:23.118 Starting Activate Firmware update process System Flash to IN110P002: This will take approximately 15 minutes.
...
Примерно ещё через 11 минут ожидания процедура дошла до своего успешного завершения и мы получили сообщение о положительном исходе обновления.
В финальном статусном выводе утилиты мы обратили внимание на то, что изменилась версия Expander Controller Code с 533D на 5352 по сравнению с теми данными, которые были выведены на момент выше упомянутого сообщения "One or more components of firmware is not updated properly". Можно предположить, что с прошивкой Expander Controller и возникли какие-то временные заминки. Судя по этой ветке обсуждения, не только мы столкнулись с такой ситуацией.
...
=========================================
CONTROLLER B VERSION DETAIL
=========================================
Bundle Version : IN110P002
Storage Controller Code Version : INS110P01-07
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM110P001-06
Management Controller Loader Code Version : 1.63.35083
Expander Controller Code Version : 5352
CPLD Code Version : 2.8
=========================================
Controller A Bundle version: IN110P002 - IP Address: 10.1.2.7
CPLD version of the controller is :2.8
=========================================
CONTROLLER A VERSION DETAIL
=========================================
Bundle Version : IN110P002
Storage Controller Code Version : INS110P01-07
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM110P001-06
Management Controller Loader Code Version : 1.63.35083
Expander Controller Code Version : 5352
CPLD Code Version : 2.8
=========================================
Device flash Successful - MSA 2060 FC : Controller B
Device flash Successful - MSA 2060 FC : Controller A
...
В общей сложности процесс обновления до IN110P002 занял 29 минут ожидания.
Убедившись в работоспособности обоих контроллеров, переходим к третьему этапу обновления до версии IN210R004 (22 Sep 2023). На этот раз процесс прошёл вполне гладко.
...
=========================================
CONTROLLER B VERSION DETAIL
=========================================
Bundle Version : IN210R004
Storage Controller Code Version : INS210R04-01
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM210R004-01
Management Controller Loader Code Version : 1.71.37572
Expander Controller Code Version : 536A
CPLD Code Version : 2.8
=========================================
Controller A Bundle version: IN210R004 - IP Address: 10.1.2.7
CPLD version of the controller is :2.8
=========================================
CONTROLLER A VERSION DETAIL
=========================================
Bundle Version : IN210R004
Storage Controller Code Version : INS210R04-01
Memory Controller FPGA Code Version : N/A
Management Controller Code Version : IXM210R004-01
Management Controller Loader Code Version : 1.71.37572
Expander Controller Code Version : 536A
CPLD Code Version : 2.8
=========================================
Device flash Successful - MSA 2060 FC : Controller B
Device flash Successful - MSA 2060 FC : Controller A
...
В общей сложности процесс обновления до IN210R004 занял 27 минут ожидания.
Микрокод контроллеров СХД и дополнительных дисковых полок на этом этапе у нас актуализирован. Убедившись в работоспособности обоих контроллеров, можно переходить к обновлению микрокода накопителей в составе СХД.
Актуализации версии микрокода накопителей в СХД
Следует иметь ввиду, что процедура обновления микрокода накопителей в СХД HPE MSA – это офлайн процесс, то есть в ходе обновления накопители поочерёдно перезагружаются для активации новой версии микрокода. Поэтому крайне важно соблюсти условие предварительного снятия продуктивной нагрузки на СХД, что мы и сделали в самом начале.
Текущие версии микрокода накопителей, используемых в составе MSA, а также ссылки на утилиту обновления можно найти на всё той же странице HPE MSA STORAGE FIRMWARE.
Анализ всех используемых в нашем случае моделей накопителей SSD/HDD показал, что для обновления потребуется утилита Firmware Flash Components for Windows and Linux - HPE MSA 1040/2040/1050/2050/1060/2060 Drives, актуальная версия которой, на данный момент времени - 2023.10.25 (20 Oct 2023).
Чем для большего количества накопителей будет требоваться обновление, тем дольше будет выполняться вся процедура. В нашем случае утилита обновления подняла версию микрокода для 16 накопителей и на этот процесс ушло 35 минут.
...
The installation procedure was completed successfully.
You may look at the setup log file (%systemdrive%\CPQSYSTEM\log\cpqsetup.log) and/or MSA firmware update log file (%systemdrive%\CPQSYSTEM\log\) for more details if desired.
Additional Information:
Device flash Successful - ST8000NM001A : disk:3:6
Device flash Successful - ST8000NM001A : disk:3:5
Device flash Successful - ST8000NM001A : disk:3:4
Device flash Successful - ST8000NM001A : disk:3:3
Device flash Successful - ST8000NM001A : disk:3:2
Device flash Successful - ST8000NM001A : disk:3:1
Device flash Successful - ST8000NM001A : disk:2:6
Device flash Successful - ST8000NM001A : disk:2:5
Device flash Successful - ST8000NM001A : disk:2:4
Device flash Successful - ST8000NM001A : disk:2:3
Device flash Successful - ST8000NM001A : disk:2:2
Device flash Successful - ST8000NM001A : disk:2:1
Device flash Successful - XS1920SE70084 : disk:1:4
Device flash Successful - XS1920SE70084 : disk:1:3
Device flash Successful - XS1920SE70004 : disk:1:2
Device flash Successful - XS1920SE70004 : disk:1:1
Press the 'Close' button to exit Setup.
Как и в случае с утилитой обновления контроллеров СХД, утилита обновления накопителей создаёт детальный лог операций в файле с именем формата %systemdrive%\CPQSYSTEM\log\<MSA-Date~Time~ControllerSerialNumber.log>
Финальная проверка состояния СХД
Процедуры обновления микрокода СХД завершены и в качестве заключительного шага желательно выгрузить из SMU архив с диагностическими логами и загрузить его в специальный онлайн-инструмент для аналитики здоровья СХД: MSA Health Check Tool.
В результате мы получим детальный отчёт о текущем состоянии всех компонент СХД и уровню обновления микрокода.
Как видим, всё в норме и теперь можно вернуть продуктивную нагрузку на СХД и возобновить работу всех сервисов и серверов, использующих дисковые ресурсы СХД.
у меня была подобная проблема, так же какие-то левые ip на одном из контроллеров, но благо помог простой ребут MC
достаточно было перезагрузить полностью контроллер A в вашем случае, нам так помогло на последней прошивке:
restart sc a
По тексту написано, что это делалось и это не помогло.
Вы написали, что перезагружали только management controller (mc), а надо было storage controller (sc). Тогда бы и питание дергать не пришлось.
SC были точно также перезагружены в ходе обновления микрокода СХД. Таким образом мы "убили двух зайцев" - и избавились от проблемы и актуализировали микрокод.
Проблема именно в контроллере управления, контроллер хранения тут не причем. Столкнулся с такой же проблемой, помогла недокументированная функция перезагрузки: "restart mc both full". Именно параметр "full" заставляет таки перезагрузиться контроллеры управления без выключения всей СХД.
Рустем, спасибо restart mc both full помогает
Действительно, в релизнотах к обновлению микрокода СХД в разделе известных проблем можно найти такое замечание:
Issue: Restarting the Management Controller through default options may not perform a full restart of all management processes.
Workaround: Specify the full option in the restart mc command line in the CLI interface.
NOTE: The SMU does not have the option to perform a full restart