Проблемы и их решение при подключении SSD к серверным платформам Intel

Скорость работы с дисками на сервере никогда не бывает лишней. Зачастую даже быстрых SAS дисков, со скоростью вращения 15k, не хватает для обеспечения нужной отзывчивости установленного ПО. В такие моменты в голову начинают приходить мысли о использовании SSD в качестве системы хранения данных. Именно такая идея была реализована примерно год назад на одном из наших серверов. Из-за ограниченности бюджета выбор пал на OCZ Vertex 4. Отличные быстрые диски, но не для нагруженных систем. Расчёт был на то, что при текущей дисковой активности диски должны были проработать около полутора-двух лет до выхода из строя. При этом за год они окупали свою стоимость. Но мы ошиблись.

Примерно через полгода работы случилась первая авария — из RAID10 «выпал» один из дисков. Благодаря оперативности сотрудников датацентра, в котором мы размещали свои сервера, диск был оперативно заменён, отправлен нам на диагностику и всё вошло в штатный режим работы. И опять нас подвела наша самоуверенность. В течении следующих двух месяцев, примерно раз в неделю, мы теряли по одному диску. Часть из них возобновляла работу после полного обесточивания сервера, часть после перепрошивки. При этом сильно страдала стабильность работы системы.

После очередного падения, простоя и соответственно убытков, руководство приняло решение: «Надо что-то менять. Так дальше работать нельзя.». Нужно было подобрать такие же быстрые, но более надёжные SSD. В OCZ Vertex 4 используется технология MLC. Нужно было найти нечто более качественное, а именно eMLC или SLC. Заоблачные цены SLC дисков были отвергнуты сразу. Оставалось только eMLC. Из того, что было доступно в текущий момент, были диски трёх производителей — PNY, HP и OCZ. Диски от PNY оказались подозрительно дешевыми, HP — неоправданно дорогими, а вот OCZ оказались золотой серединой. И вновь мы решили наступить на грабли OCZ. Были приобретены четыре диска OCZ Deneva 2 R 400GB.

После резервного копирования мы приступили к замене дисков.

Используемая нами платформа R1208GL4DS позволяла произвести горячую замену дисков. Этим никого не удивишь. Старые диски были извлечены, вставлены новые и… сервер пропал из сети. Подключившись к серверу по IPMI мы увидели, что он перезагружается. А далее бы увидели самое страшное — сообщение «No boot device available». Сразу скажу, что менялись не системные диски, а диски с данными. Т.е. их отсутствие в системе не могло вызвать такого. Перезагрузившись ещё раз и зайдя в панель RAID-контроллера паника только усилилась. Он не находил ни одного диска. Ни нового, ни старого.

Первое, что пришло в голову — отключить новые диски и ещё раз перезагрузиться. Это помогло. Контроллер увидел старые диски, но они были со статусом «Unconfigured», т.е. было физическое обесточивание контроллера и/или корзины. С новыми дисками было явно что-то не в порядке. Попробовали из подключить к обычному компьютеру — всё работает. Подключаем к серверу — пропадают все диски.

Обратились в службу поддержки нашей платформы и получили урок ликбеза. Собственно вот он в двух словах:
Как известно, большинство SAS/SATA дисков с магнитным носителем питаются от двух источников тока — 5 и 12 вольт. От 12 вольт питается механическая часть устройства, от 5 вольт — электроника. Соответственно основная нагрузка по питанию идёт по шине 12 вольт. SSD диски работают несколько иначе. Они бывают двух типов — с основным питанием по 12 вольтам и с основным питанием по 5. Например SSD диски фирмы Intel содержат внутри контроллер, который 12 вольт преобразует в 5. SSD от OCZ не пользуются шиной 12 вольт. У них основная нагрузка приходится на шину 5 вольт.

Говоря простыми словами — при подключении SSD дисков мы получали перегрузку по шине 5 вольт и на умном контроллере питания фирмы Intel срабатывала защита, которая обесточивала все диски.

Изучение фотографий корзины (физически сервер находился в ~1000км от нас) показало интересный факт — на корзину с блока питания приходит только 12 вольт. Значит 5 вольт формируется самой корзиной, так-же как и контролируется нагрузка. Поиск по различным форумам подтвердил предположение. Корзина формирует 5 вольт при помощи контроллера IR3837MPbF, который и отвечает за защиту от перегрузки. В даташите на данный контроллер указывалось, что он способен выдерживать нагрузку до 14 ампер. Инженеры Intel явно перестраховались и ограничили нагрузку как минимум в 2 раза. В том же даташите было указано, что ограничение рассчитывается по хитрой формуле и меняется резистором R OCSet. Получалось, что надо было всего лишь перепаять один резистор, что-бы изменить порог срабатывания защиты и наши диски заработают.

В результате переговоров с датацентром выяснилось, что они не обладают инструментной базой для перепайки SMD компонентов. В даташите было указано, что используется SMD резистор 0603, размер которого 1.5mm x 0.75mm. По факту он оказался SMD 0402, т.е. в полтора раза меньше.

Найти техника в пятницу вечером, который обладал бы нужными инструментами и навыками не получилось и мы поехали в датацентр, предварительно заехав в магазин и купив всё необходимое для работы - паяльную станцию, около сотни резисторов номиналом от 1 до 10 кОм и некоторое количество вспомогательных инструментов. Час на сборы, 14 часов дороги, 20 минут работы и о, чудо! Сервер увидел новые диски! В контроллере стоял резистор 2.5 кОм, в даташите было указано, что он должен быть 5 кОм и именно такого номинала резистор и был впаян.

Надеюсь кто-нибудь сэкономит себе время и нервы при решении похожей проблемы.

Собственно небольшой фотоотчёт о происходящем:


Ссылки:
  • Даташит на контроллер IR3837MPbF
  • Ветка форума Intel с обсуждением такой-же проблемы

  • P.S: Отдельное спасибо датацентру Colocat за терпение и содействие при проведении работ на наших серверах.