Как я боролся с экранами смерти на устаревших блейд-серверах

в 12:57, , рубрики: bsod, LINT1/NMI, mezzanine, psod, VMware, windows, блейд-сервер, виртуализация, ит-инфраструктура, Серверное администрирование, экран смерти

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

Как я боролся с экранами смерти на устаревших блейд-серверах - 1

Всем, кому интересно серверное железо и борьба с ошибками прошу под кат.

Заказали мы для серверной полки HP C3000 два дополнительных коммутатора cisco и по мезанин-карте в каждый блейд сервер для того, чтобы сделать все по уму. Хотелось, чтобы сети делились на физическом уровне, а так же повысить производительность и надежность.
Конфигурация получилась следующая:

Полка hp c3000, в ней

  • 2 hp bl460c g6
  • 2 hp bl490c g7

Как я боролся с экранами смерти на устаревших блейд-серверах - 2

  • 2 свича HP GbE2c
  • 2 свича Cisco 3020

Как я боролся с экранами смерти на устаревших блейд-серверах - 3
В каждом блейде по две мезанин-карты (HP NC382m Dual-Port 1GbE и HP NC364m Quad Port 1GbE) и встроенные FlexFabric двухпортовые 10GbE.
Мезанин-карты выглядят так:
Как я боролся с экранами смерти на устаревших блейд-серверах - 4
HP NC382m
Как я боролся с экранами смерти на устаревших блейд-серверах - 5
HP NC364m

Серверы работают под управлением Vmware ESXi 5.5.

Изначально все работало стабильно без цисок и четырехпортовых мезанинов. Один коммутатор hp был для сети виртуальных машин, второй под менеджмент и iscsi сети. Производительности второго не хватало и было принято решение вынести сеть iscsi на отдельные коммутаторы. Для этого и приобрели две циски и мезанин-карты.

Как Вы понимаете, 460-ые серверы достаточно устарели, но до сих пор должны поддерживаться. Был получен актуальный дистрибутив hp service pack, вся полка обновлена.
Из кластера vmware вывел 460-ые хосты, вставил туда мезанин карты, воткнул в полку и… при загрузке сразу PSOD.
Как я боролся с экранами смерти на устаревших блейд-серверах - 6
Сначала подумал, что возможно это проблема материнской платы, так как на одном из блэйдов уже меняли материнскую плату, как раз по причине проблем с сетевыми адаптерами. Они время от времени пропадали.
Но когда проблема продублировалась на втором блейд-сервере, отбросил эту мысль. Стоит отметить, что я пробовал запускать сервер с одной любой мезанин-картой в разных слотах и все работало без проблем, а значит — проблема не в карте и не слоте.

Блэйд-сервер перевел в debug режим, читаю логи, читаю форум vmware. Там написано, что это проблема с оборудованием и ссылаются на форум производителя. Перехожу на форум HP, там пишут, что при использовании современных продуктов vmware часто возникают трудности на старом оборудовании. Ставлю vmware esxi 4.1 — все работает стабильно, но проблема в том, что лицензия на esxi 5.5 и есть сопутствующее ПО под эту лицензию, такое как Vgate 2.7. Ставлю Windows Server 2012 R2, чтобы убедиться, что проблема действительно в софте и… BSOD.
Как я боролся с экранами смерти на устаревших блейд-серверах - 7
При следующем старте 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 биос и перезаписал драйвер. Все работало стабильно, быстро,
… но не долго.
Как я боролся с экранами смерти на устаревших блейд-серверах - 8
Появилась вторая проблема, связанная с мезанин-картой.
Через некоторое время на одном из блэйдов полностью пропала четырехпортовая мезанин-карта, даже из биоса хоста. Перезагрузка, сброс биоса, ничего не помогало, пока в биосе не был обнаружен пункт о работе с pci адаптерами mezzanine. По линиям pci стало возможно выбирать уровень усиления сигнала (всего два пункта 6db и 3.5db). Да, именно стало, потому как этот пункт появился при добавлении четырехпортовой карты. Переключил уровень усиления и сразу после перезагрузки карта появилась в биосе.

Прошло две рабочие недели и ни одного purple экрана не было.
После обновления прошивок на сетевых картах появилась функция wake on lan, которой раньше не было, и на vcenter был настроен power management. Теперь хосты просыпаются по необходимости.

А в качестве вывода хочу сказать, что нужно быть внимательным к функционалу, появляющемуся при добавлении нового железа (такой как дополнительные пункты в bios), а также то, что не все неисправимые хардварные ошибки неисправимы. К некоторым ошибкам приводят стандартные драйвера и устаревшие bios'ы.

Надеюсь мои мучения с блейдами будут кому-то полезны.

Автор: All3

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js