Пост о том, как я боролся с проблемами нового софта на старом железе, возникшими после добавления дополнительного оборудования.
Всем, кому интересно серверное железо и борьба с ошибками прошу под кат.
Заказали мы для серверной полки HP C3000 два дополнительных коммутатора cisco и по мезанин-карте в каждый блейд сервер для того, чтобы сделать все по уму. Хотелось, чтобы сети делились на физическом уровне, а так же повысить производительность и надежность.
Конфигурация получилась следующая:
Полка hp c3000, в ней
В каждом блейде по две мезанин-карты (HP NC382m Dual-Port 1GbE и HP NC364m Quad Port 1GbE) и встроенные FlexFabric двухпортовые 10GbE.
Мезанин-карты выглядят так:
HP NC382m
HP NC364m
Серверы работают под управлением Vmware ESXi 5.5.
Изначально все работало стабильно без цисок и четырехпортовых мезанинов. Один коммутатор hp был для сети виртуальных машин, второй под менеджмент и iscsi сети. Производительности второго не хватало и было принято решение вынести сеть iscsi на отдельные коммутаторы. Для этого и приобрели две циски и мезанин-карты.
Как Вы понимаете, 460-ые серверы достаточно устарели, но до сих пор должны поддерживаться. Был получен актуальный дистрибутив hp service pack, вся полка обновлена.
Из кластера vmware вывел 460-ые хосты, вставил туда мезанин карты, воткнул в полку и… при загрузке сразу PSOD.
В данном случае кодом ошибки является строка
Сначала подумал, что возможно это проблема материнской платы, так как на одном из блэйдов уже меняли материнскую плату, как раз по причине проблем с сетевыми адаптерами. Они время от времени пропадали.
Но когда проблема продублировалась на втором блейд-сервере, отбросил эту мысль. Стоит отметить, что я пробовал запускать сервер с одной любой мезанин-картой в разных слотах и все работало без проблем, а значит — проблема не в карте и не слоте.
Блэйд-сервер перевел в debug режим, читаю логи, читаю форум vmware. Там написано, что это проблема с оборудованием и ссылаются на форум производителя. Перехожу на форум HP, там пишут, что при использовании современных продуктов vmware часто возникают трудности на старом оборудовании. Ставлю vmware esxi 4.1 — все работает стабильно, но проблема в том, что лицензия на esxi 5.5 и есть сопутствующее ПО под эту лицензию, такое как Vgate 2.7. Ставлю Windows Server 2012 R2, чтобы убедиться, что проблема действительно в софте и… BSOD.
При следующем старте windows все работает вроде стабильно, оставляю на тесты. На следующий день обнаруживаю bsod.
При этом в консоли onboard администратора есть ошибки в IML (Integrated Management Log) Uncorrectable PCI Express Error (Embedded device, Bus 0, Device 9, Function 0, Error status 0x00000000). Т.е. неисправимая ошибка оборудования, а device 9 это как раз вторая карта мезанин.
Продолжаю читать форум hp, написано, что может влиять прошивка ilo. Обнаруживаю, что есть более новая прошивка ilo и перешиваю оба блейда, но не помогает. Дальше больше, на форуме написано, что есть несовместимость прошивок FlexFabric и драйверов. Перешиваю FlexFabric — все равно ошибка.
Пробую разные дистрибутивы: стандартный дистрибутив vmware esxi 5.5 и дистрибутив производителя HP того же билда. Результат один.
Читаю, что в логах, а там ошибка конкретно на bnx2 (это сетевой FlexFabric адаптер). Ставлю Broadcom драйвера с сайта vmware (причем перезапись драйвера работает только из консоли самого esxi. Если ставить из под vcenter, то vcenter не перезаписывает). Перезагрузка и полет нормальный! Тоже самое было с Emulex FlexFabric на 490 блэйдах. Так же обновил FlexFabric биос и перезаписал драйвер. Все работало стабильно, быстро,
… но не долго.
На этом скриншоте кодом ошибки является строка
Появилась вторая проблема, связанная с мезанин-картой.
Через некоторое время на одном из блэйдов полностью пропала четырехпортовая мезанин-карта, даже из биоса хоста. Перезагрузка, сброс биоса, ничего не помогало, пока в биосе не был обнаружен пункт о работе с pci адаптерами mezzanine. По линиям pci стало возможно выбирать уровень усиления сигнала (всего два пункта 6db и 3.5db). Да, именно стало, потому как этот пункт появился при добавлении четырехпортовой карты. Переключил уровень усиления и сразу после перезагрузки карта появилась в биосе.
Прошло две рабочие недели и ни одного purple экрана не было.
После обновления прошивок на сетевых картах появилась функция wake on lan, которой раньше не было, и на vcenter был настроен power management. Теперь хосты просыпаются по необходимости.
А в качестве вывода хочу сказать, что нужно быть внимательным к функционалу, появляющемуся при добавлении нового железа (такой как дополнительные пункты в bios), а также то, что не все неисправимые хардварные ошибки неисправимы. К некоторым ошибкам приводят стандартные драйвера и устаревшие bios'ы.
Надеюсь мои мучения с блейдами будут кому-то полезны.
Всем, кому интересно серверное железо и борьба с ошибками прошу под кат.
Заказали мы для серверной полки HP C3000 два дополнительных коммутатора cisco и по мезанин-карте в каждый блейд сервер для того, чтобы сделать все по уму. Хотелось, чтобы сети делились на физическом уровне, а так же повысить производительность и надежность.
Конфигурация получилась следующая:
Полка hp c3000, в ней
- 2 hp bl460c g6
- 2 hp bl490c g7
- 2 свича HP GbE2c
- 2 свича Cisco 3020
В каждом блейде по две мезанин-карты (HP NC382m Dual-Port 1GbE и HP NC364m Quad Port 1GbE) и встроенные FlexFabric двухпортовые 10GbE.
Мезанин-карты выглядят так:
HP NC382m
HP NC364m
Серверы работают под управлением Vmware ESXi 5.5.
Изначально все работало стабильно без цисок и четырехпортовых мезанинов. Один коммутатор hp был для сети виртуальных машин, второй под менеджмент и iscsi сети. Производительности второго не хватало и было принято решение вынести сеть iscsi на отдельные коммутаторы. Для этого и приобрели две циски и мезанин-карты.
Как Вы понимаете, 460-ые серверы достаточно устарели, но до сих пор должны поддерживаться. Был получен актуальный дистрибутив hp service pack, вся полка обновлена.
Из кластера vmware вывел 460-ые хосты, вставил туда мезанин карты, воткнул в полку и… при загрузке сразу PSOD.
В данном случае кодом ошибки является строка
PCPU0:32840/helper14-0
Сначала подумал, что возможно это проблема материнской платы, так как на одном из блэйдов уже меняли материнскую плату, как раз по причине проблем с сетевыми адаптерами. Они время от времени пропадали.
Но когда проблема продублировалась на втором блейд-сервере, отбросил эту мысль. Стоит отметить, что я пробовал запускать сервер с одной любой мезанин-картой в разных слотах и все работало без проблем, а значит — проблема не в карте и не слоте.
Блэйд-сервер перевел в debug режим, читаю логи, читаю форум vmware. Там написано, что это проблема с оборудованием и ссылаются на форум производителя. Перехожу на форум HP, там пишут, что при использовании современных продуктов vmware часто возникают трудности на старом оборудовании. Ставлю vmware esxi 4.1 — все работает стабильно, но проблема в том, что лицензия на esxi 5.5 и есть сопутствующее ПО под эту лицензию, такое как Vgate 2.7. Ставлю Windows Server 2012 R2, чтобы убедиться, что проблема действительно в софте и… BSOD.
NMI_HARDWARE_FAILURE
При следующем старте windows все работает вроде стабильно, оставляю на тесты. На следующий день обнаруживаю bsod.
При этом в консоли onboard администратора есть ошибки в IML (Integrated Management Log) Uncorrectable PCI Express Error (Embedded device, Bus 0, Device 9, Function 0, Error status 0x00000000). Т.е. неисправимая ошибка оборудования, а device 9 это как раз вторая карта мезанин.
Продолжаю читать форум hp, написано, что может влиять прошивка ilo. Обнаруживаю, что есть более новая прошивка ilo и перешиваю оба блейда, но не помогает. Дальше больше, на форуме написано, что есть несовместимость прошивок FlexFabric и драйверов. Перешиваю FlexFabric — все равно ошибка.
Пробую разные дистрибутивы: стандартный дистрибутив vmware esxi 5.5 и дистрибутив производителя HP того же билда. Результат один.
Читаю, что в логах, а там ошибка конкретно на bnx2 (это сетевой FlexFabric адаптер). Ставлю Broadcom драйвера с сайта vmware (причем перезапись драйвера работает только из консоли самого esxi. Если ставить из под vcenter, то vcenter не перезаписывает). Перезагрузка и полет нормальный! Тоже самое было с Emulex FlexFabric на 490 блэйдах. Так же обновил FlexFabric биос и перезаписал драйвер. Все работало стабильно, быстро,
… но не долго.
На этом скриншоте кодом ошибки является строка
PCPU0:32802/UplinkWatchdogWorld
Появилась вторая проблема, связанная с мезанин-картой.
Через некоторое время на одном из блэйдов полностью пропала четырехпортовая мезанин-карта, даже из биоса хоста. Перезагрузка, сброс биоса, ничего не помогало, пока в биосе не был обнаружен пункт о работе с pci адаптерами mezzanine. По линиям pci стало возможно выбирать уровень усиления сигнала (всего два пункта 6db и 3.5db). Да, именно стало, потому как этот пункт появился при добавлении четырехпортовой карты. Переключил уровень усиления и сразу после перезагрузки карта появилась в биосе.
Прошло две рабочие недели и ни одного purple экрана не было.
После обновления прошивок на сетевых картах появилась функция wake on lan, которой раньше не было, и на vcenter был настроен power management. Теперь хосты просыпаются по необходимости.
А в качестве вывода хочу сказать, что нужно быть внимательным к функционалу, появляющемуся при добавлении нового железа (такой как дополнительные пункты в bios), а также то, что не все неисправимые хардварные ошибки неисправимы. К некоторым ошибкам приводят стандартные драйвера и устаревшие bios'ы.
Надеюсь мои мучения с блейдами будут кому-то полезны.
KorP
Да ладно, вполне бодрое оборудование то ещё. У меня вон дома из двух г6 кластер крутится на esxi6