ИТ-технологии для профессионалов

пятница, 29 января 2010 г.

Xyratex – обновление прошивок

Я уже писал про выход новой прошивки для систем Xyratex 5412/6412 и уже несколько раз возникали вопросы, как же нужно прошивать. Так что сегодня огромный пост будет про, на мой взгляд, самый большой недостаток этих дисковых систем – а именно про процедуру обновления firmware. Почему недостаток? А потому как процедура эта многоступенчатая, требует внимательности и осторожности. А, помимо прочего, требует еще и остановки системы (а, как следствие и всех приложений, которые с ней работают). Конечно, обновление прошивок дисков и в других системах потребует прервать ввод-вывод, но обычно все-таки действий нужно делать меньше. Итак, если Вам нужно обновить прошивку, то запланируйте downtime заранее. Если обновлять будете еще и прошивки на дисках, то учтите, что время простоя заметно возрастет – диски обновляются по-одному и если их 60 штук, то времени уйдет порядком. Что нам потребуется?

  1. Ноутбук или ПК, с которого и будем все обновлять. Обязательное условие – наличие последовательного порта! Стандартный кабель подключается к 9-пиновому разъему, возможно потребуется переходник.
  2. Кабель для последовательного порта, который скорее всего был в комплекте поставки (хотя это зависит от того, как была куплена система). Номер для заказа: RS-CAB-2M-RS232-USB.
  3. Программа для работы в терминале (либо стандартный HyperTerminal, либо что-то еще с поддержкой протокола 1K X-Modem для передачи файлов).
  4. Ну и конечно, необходимо иметь возможность подключиться к системе также и через локальную сеть.

Всего существует 5(!) различных прошивок (указаны в том порядке, в котором нужно обновлять):

  • прошивка модуля Disk I/O (это тот, который установлен в полках расширения)
  • boot PROM контроллера
  • прошивка самого контроллера RAID
  • прошивка StorView (система управления)
  • прошивка жестких дисков

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

Подготовили все необходимое. Сделали очередную резервную копию. Выключили серверы (или отмонтировали на серверах тома, находящиеся на дисковой системе).  И только после этого начинаем. Первым делом убеждаемся, что система работает нормально, нет ни “вылетевших” дисков, массивы не находятся в состоянии перестроения и не происходят никакие другие чудеса. Затем следует определиться с тем, что нужно обновлять, а что – нет. Если кроме контроллерного модуля ничего нет, то прошивку Disk I/O пропускаем так как их физически нет. Текущую версию boot PROM можно увидеть в StorView, нажав мышкой на любой из контролеров:

imageНажав в этом же окне на кнопку DIAGNOSTICS DUMP (откроется текстовый файл), можно узнать версии Disk I/O модуля (если он все-таки есть) и прошивок дисков:image

Версию StorView можно узнать, нажав на кнопку ABOUT в правой верхней части основного окна (впрочем, версию StorView все равно обновлять придется практически наверняка):

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

1. Прошивка модуля Disk I/O.

Если система не имеет модулей расширения (или их прошивки обновлять не требуется), то переходим к следующему пункту. Если система одноконтроллерная, то задача упрощается и мы сразу приступаем к прошивке: заходим в утилиту управления (StorView) через любой браузер (с отключенной блокировкой всплывающих окон) на адрес http://ip-address:9292/ (ip-address это очевидно адрес нашего единственного контроллера). Нажимаем на иконку Controller 0&1:

image

В открывшемся окне нажимаем кнопку UPDATE EXPANSION F/W.

image

Загружаем файл, ждем завершения. Первый этап закончен.

Если же система двухконтроллерная, то действий потребуется больше: необходимо сначала физически извлечь из системы один из RAID-контроллеров (из “головной” полки) – действуем, как было описано выше, но вместо UPDATE EXPANSION, делаем SHUTDOWN одному из контроллеров, а затем физически его извлекаем. После этого выполнить процедуру прошивки (как описано выше). Выключаем “головной” модуль, устанавливаем обратно вытащенный контроллер, а второй извлекаем. Включаем систему и повторяем процедуру обновления. Обратите внимание, что не нужно ничего вытаскивать из модулей расширения и выключать их также не нужно! Важно: прошивка занимает время, но статус ее через web-интерфейс отследить нельзя – только по индикаторам на системе. Так что лучше подождать и никуда не торопиться.

2. Прошивка boot PROM контроллера.

Вот здесь нам понадобится подключение к последовательному порту. На счастье boot PROM обновляется не так часто. Для двухконтроллерных систем, как и прежде, потребуется извлечь один из контроллеров, так что этот этап можно совместить с первым (чтобы два раза не дергать контроллеры). Оставив один контроллер, подключаемся к нему через терминальную программу. Стандартные установки порта 115200-8N1. Включаем систему, и несколько раз нажимаем на Enter (до того, как что-то появится на экране), чтобы попасть в “Monitor” (специальная утилита, которая загружается еще до Firmware контроллера). Еще раз проверить версию boot PROM можно, набрав команду ver (ниже, кстати, будет указана и модель контроллера чтобы не ошибиться):

image Убедившись, что версию надо обновить, набираем команду dp и отправляем файл с прошивкой по протоколу 1K X-Modem. Подтверждаем свое желание обновить прошивку и ждем завершения. Контроллер автоматически перезагрузится. Можно снова зайти в Monitor и проверить, что прошивка обновилась:

imageКак видим все получилось, поэтому выключаем систему, вытаскиваем “прошитый” контроллер и устанавливаем второй. Повторяем уже проделанную процедуру.

3. Прошивка контроллера RAID.

Неприятные процедуры практически закончились. Теперь проверяем, что оба контроллера установлены и все кабели (к дисковым полкам) подключены – их отключать и не нужно было, но лучше бы проверить. Включаем систему и после этого заходим в StorView (через барузер). Проверяем, что все компоненты определились и ошибок нет. Нажимаем на иконку Controller 0&1, а там на кнопку UPDATE CONTROLLER F/W, отправляем файл с прошивкой и ждем около трех минут. За это время оба контроллера будут прошиты. Проверить успешность процедуры можно еще раз нажав на Controller 0&1 и посмотрев версию.

4. Прошивка StorView

Находясь в StorView, нажимаем на кнопку About (вверху справа):

imageВ открывшемся окне нажимаем кнопку UPDATE, указываем файл прошивки и пароль для входа в StorView. Процедура длится примерно минуту. В некоторых обновлениях может присутствовать и новый “boot code” для StorView – его также нужно обновить. Для этого используется специальная утилита (идет вместе с прошивкой) - eSV_AutoUpdate_xxx.exe Запустив ее, указываем IP-адрес контроллера и прошивку, также ставим галочку “reboot when completed”:

image

После сообщения об успешной прошивке можно переходить к прошивке StorView на втором контроллере – вновь подключаемся по IP (уже к другому контроллеру) и повторяем все действия.

5. Прошивка жестких дисков.

И на сладкое осталась не самое приятное и, пожалуй, самое опасное – прошивка жестких дисков. Для этого нам опять потребуется доступ через последовательный порт. Для двухконтроллерной системы второй контроллер необходимо отключить (можно не вытаскивать, а просто сказать ему SHUTDOWN в окне Controller 0&1). После этого, привычным жестом подключаемся через терминал. Нажимаем Ctrl-E, чтобы вызвать меню:

image Далее двигаемся по меню: “2” - Diagnostics, “2” - Online Diagnostics, “2” - Drive Maintenance, “1” - Download Drive Firmware to Buffer. Через 1K X-Modem отправляем прошивку и затем нажимаем “3” - Program and Save Drive Firmware. После этого можно выбрать, какие именно диски надо обновить (все поддерживаемые, все поддерживаемые из незадействованных и hot-spare, все поддерживаемые с отличной от загруженной прошивкой). После этого потребуется нажать “Y” чтобы подтвердить свою уверенность. Остается ждать успешного завершения. Процедура не слишком быстрая, поэтому терпение потребуется. Выключаем “головную” полку и включаем ее снова - чтобы ожил отключенный на начальном этапе контроллер.

Все! После этого остается зайти в StorView по IP и проверить что все запустилось. Если все удалось, то нажимаем Controller 0&1 и там нажимаем на кнопки CLEAR LOGS и SYNCHRONIZE TIME. Затем на основном окне нажимаем Logical Drive Statistics:

image

И там нажимаем кнопку CLEAR.

Вот теперь действительно все обновили! Можно подключать серверы обратно и работать.

Процедура, как я и обещал, длинная и непростая. Но если варианта “свалить” работу на кого-то еще нет, то придется делать, а я постарался все описать максимально подробно.

18 комментариев:

  1. Андрей, огромное спасибо за статью!

    1. Подскажите, а в каком порядке необходимо (и нужно ли) вместе с прошивкой обновлять на серверах StorView Path Manager? Имеется ли у этого компонента обратная совместимость?

    2. Какой вид имеет прошивка для boot PROM?

    Еще раз спасибо!

    ОтветитьУдалить
  2. Пожалуйста! :)
    1. SVPM обновлять нужно (даже если не обновляете прошивку системы). Работать будет и старая версия на новой прошивке, и новая на старой. Но, повторюсь, обновлять нужно.
    2. Вопрос не понял - прошивка имеет вид файла с именем типа fw_00xx.bin

    ОтветитьУдалить
  3. Планирую обновить прошивки на F5402E
    У нас стоят старые прошивки.
    На сайте ftp://ftp.xyratex.com/pub/_Current_Products/F5402E_(RS-1220-F4-5402E)/ есть много новых версий.
    Я могу становить самую последнюю, либо мне надо обновлять все версии по порядку?

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

    ОтветитьУдалить
  5. У нас стоит версия 3.2 Build 0152 надо обновиться до 3.07.0036

    ОтветитьУдалить
  6. Думаю, что проблем у Вас не возникнет.
    Можно конечно обновиться сначала до релиза 2.2 и уже потом на 2.4.2 переходить, но не думаю что это так уж необходимо.

    ОтветитьУдалить
  7. Андрей, не подскажете где в диагностик дампе можно увидеть версию extension fw? Я просмотрел весь файл, но нигде не увидел. спасибо

    ОтветитьУдалить
  8. В дампе версия прошивки I/O модуля расширения видна, увы, не всегда (или не с каждого контроллера - не помню, если честно). Искать нужно вот такого вида строки (например):
    List of Enclosures and Firmware Version
    00 Vendor ID: XYRATEX , Product ID: F5402E
    01 Vendor ID: XYRATEX , Product ID: 3GSAS1.0-SATAEXP, Firmware Version: 1.07

    Можно посмотреть через serial порт, подключившись поочередно к обеим контроллерам.

    ОтветитьУдалить
  9. В файле дампа по поиску sataexp ничего не нашлось по firmware только рассуждения про сами контроллеры. А не подскажете через серийный порт как это посмотреть?

    ОтветитьУдалить
  10. Ctrl-E
    2 - Diagnostics
    1 - Offline Diagnostics
    4 - Disk IO Module Maintenance
    2 - View Firmware on Disk IO Module

    ОтветитьУдалить
  11. Андрей, подскажите как прошить диски, если версии прошивок разные(всего 24 sata диска: ST3500641NS 3.AEK(15 шт), ST3500630NS 3.AEG(7 шт), ST3500630NS 3.AEL(1 шт), ST31000340NS SN04(1 шт))
    модель F5402E?
    Стоит ли обращать внимание на 3 символ в маркировке обновления?

    ОтветитьУдалить
  12. Диски прошивать, как и обычно. Можно выбрать - либо прошивать все диски, для которых подходит загруженная прошивка, либо прошивать подходящие диски с отличающейся прошивкой (чтобы не прошивать диски по два раза).
    Все символы имеют значение и на них нужно обращать внимание.

    ОтветитьУдалить
  13. Андрей, спасибо за статью. Без Ваших советов было бы трудно. Все заработало с прошивкой 2.5.6 Подскажите пожалуйста, как использовать прошивки, где файлы не все. Например в прошивке 2.5.10 есть только прошивка на сами контролеры и сторвью. ПРичем для стровью ест два бин файла и один s19. Что с ними делать, каким прошивать? СТоит ли накатывать "неполную" прошивку или довольствоваться 2.5.6, в которой файлы все. Для 2.5.10 есть файлы storview-3.26-003-xyr-2mb-nb-en.bin, ...s19 и stroview-3.26.0003-xyr-2mb-v0.07f-image.bin

    ОтветитьУдалить
  14. Если в более новой прошивке "не все" файлы, значит все остальные соответсвуют прошлой версии. В 2.5.10 для StorView нужно использовать storview-3.26.0003-xyr-2MB-nb-en.bin

    ОтветитьУдалить
  15. В прошивке 2.5.10 для StorView есть еще файлы storview-3.26.0003-xyr-2MB-nb-en.s19 и storview-3.26.0003-xyr-2MB-v0.07f-image.bin.

    Что с ними делать? И софтины eSV_AutoUpdate для них нету...

    Просто после обновления все работает, только не показывает внизу вид спереди и сзади хранилки. Пишет Enclosure Information Not Available

    StorView v3.26.0003
    RAID Firmware Version: 3. 9 Build 0021
    RAID Firmware Boot PROM Version: 0023

    ОтветитьУдалить
  16. В StorView, если подключаться через сеть к любому контроллеру - не отображает информацию о "корпусе" - состояние дисков, вентиляторов, питания, контроллеров.
    А если открыть StorView на хосте через FC - показывает нормально. Но только там версии StorView разные. Не показывает версия 3.26.0003, а нормально показывает 3.22.0018
    Что я не так сделал? Или что-то еще недообновил?
    Из-за чего может не отображать данные о корпусе?

    Controller 0 Information:
    Controller Type: FC-SAS
    Processor Rev : D-0 / D-1
    Firmware Rev. : 03.09 Build 0021 (G) Xyratex
    Firmware Date : Dec 14 2010
    Firmware Time : 12:02:37
    SAS F/W Rev. : 01.12.88.00
    FC F/W Rev. : 04.00.26
    Boot PROM Rev. : 0023

    Controller 1 Information:
    Controller Type: FC-SAS
    Firmware Rev. : 03.09 Build 0021 Xyratex
    Firmware Date : Dec 14 2010
    Firmware Time : 12:02:37
    Boot PROM Rev. : 0023

    ОтветитьУдалить
  17. 2IT_Prof:
    Сложно однозначно сказать - я такого не видел.
    Набор советов стандартный - попробуйте подключиться с другого ПК (почистить кэш браузера), перегрузить массив (или просто управляющие модули через консоль).

    ОтветитьУдалить
  18. Подскажите, где можно найти прошивки для этой СХД?

    ОтветитьУдалить

Примечание. Отправлять комментарии могут только участники этого блога.