Всем привет! На связи Владимир Аксёнов, руководитель группы IT‑поддержки дата‑центра в Yandex Infrastructure. На Хабре я уже рассказывал об эволюции IT‑оборудования в дата‑центрах Яндекса, показывал наши собственные стоечные решения и делился опытом, как мы тестируем комплектующие для стоек. Но история с сосисками в дата‑центре — не единственная интересная инженерная задача, были ещё и яблоки! 

А под яблоками я имею в виду оборудование Apple, поскольку нашим внутренним пользователям‑разработчикам регулярно необходима среда для тестирования приложений под целевые платформы. И если под Windows, Android и Linux создать такую песочницу нетрудно, то с iOS и MacOS сложность в том, что необходимое оборудование Apple не выпускается в виде серверных решений для дата‑центров.

В этой статье я расскажу, как мы адаптировали обычные Apple Mac mini для установки в серверные стойки под внутренние песочницы. А также покажу, почему для этого нам потребовалось напрячь двух производителей комплектующих и удостовериться, что даже в условиях «сауны» горячего коридора ни одно устройство не превратится в печёное яблоко. 

Как было раньше 

Более 10 лет назад, когда у инженеров появилась потребность писать софт под iOS, мы начали ставить для этих задач первые Apple Mac mini — тогда это были устройства со стандартными габаритами 197×197×36 мм. Теоретически можно было бы установить их и в офисе, но мы выбрали строить песочницы сразу в дата‑центре: здесь мы можем гарантировать бесперебойное питание и охлаждение, а также организовать общие процессы обслуживания, которые уже налажены в службе эксплуатации ДЦ. Для этого нужно было разместить эти устройства в стандартные стойки 19″. 

В один стандартный юнит шириной 19 дюймов помещалось два таких «миника». Для этого использовались специальные кредлы (от англ. cradle) — подставки с креплениями, которые прикручиваются к боковым направляющим. Устанавливаем, настраиваем централизованное управление оборудованием через MDM и радуемся.

Спереди, со стороны холодного коридора, всё выглядит красиво:

Вид спереди: радуемся, что в одну стойку можно установить 46 «миников»
Вид спереди: радуемся, что в одну стойку можно установить 46 «миников»

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

Правда, иногда случались курьёзы

Когда я только начинал работать в Яндексе линейным специалистом, я занимался дежурными обходами. Иду по горячему коридору и сквозь шум машинного зала слышу звуки музыки. Первая мысль была — не улетела ли за смену моя кукуха?

Но с приближением к источнику звука выяснилось, что музыка и правда шла из встроенных динамиков Mac mini — причём, они воспроизводили её хором. В это время ребята‑разработчики и правда тестировали свои фишки для музыки под iOS‑приложение.

Но со временем мы постепенно стали расти, укрупняли свою ферму, улучшали процессы обслуживания. Систему размещения нужно было масштабировать, и мы рассматривали новые возможные конструкции кредлов. Например, был вот такой прототип на три устройства: 

Но вдобавок, за это время поменялась система кондиционирования: 10 лет назад в Сасово использовали доохлаждение, от которого мы отказались в пользу энергоэффективности, оставив только фрикулинг. Это повысило рабочую температуру в горячем коридоре.

А со стороны горячего коридора цепкий взгляд опытного инженера уже углядит и другие возможные проблемы:

Вид сзади: чтобы дотянуться до портов нужно приложить усилие
Вид сзади: чтобы дотянуться до портов нужно приложить усилие

Пока не надо физически взаимодействовать с устройством, всё отлично. Но вот если нужно провести диагностику, сбросить или обновить ОС с флешки или вывести оборудование в ремонт, всё становится сложнее. Сразу очевидны несколько проблем при необходимости что‑то починить:

  • Всё мешается. Чтобы подключить монитор и клавиатуру к «минику», необходимо глубоко (почти на метр) залезть в стойку, где рядом мешаются PDU с кабелями питания и свитч с медными коммутациями. Поэтому работать необходимо крайне аккуратно.

  • Летом жарко. По заявлению производителей, устройства Apple Mac mini можно спокойно эксплуатировать при достаточно высоких температурах, так как их процессоры сами по себе не сильно греются. Чего нельзя сказать об обслуживающих стойку людях. 

    В самые жаркие дни лета температура в горячем коридоре может достигать +55. А так как все порты расположены именно с этой стороны, сотрудникам приходится проводить в «сауне» от 30 минут до 1,5 часов: перезагружать в режим DFU, работать с подключением Apple Configurator и так далее. Если тикетов прилетело несколько, становится совсем физически тяжело.

  • Гасим соседей. Так как в один кредл устанавливается два устройства, при замене неисправного нужно вытащить весь кредл и отключить соседнее исправное устройство. А значит, его вывод из эксплуатации тоже нужно согласовать. С учётом того, что Apple Mac mini было гораздо меньше, чем серверов, вывести из прода «миник» становилось не быстрым делом.

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

Мы решили полечить описанные боли эксплуатации и отправились в инженерное приключение.  

Первые прототипы и тесты

На рынке никаких готовых решений с учётом всего перечисленного не нашлось, и мы решили заказать изготовление с нуля у наших поставщиков. 

На первой же встрече с коллегами мне в голову пришла идея нового кредла. Если перепридумать конструкцию так, чтобы устройство можно было доставать из стойки с лицевой стороны, это бы решило многие проблемы. Но объяснить на пальцах оказалось проблематично. Пришлось прибегнуть к рисованию на картоне, вырезанию прототипа ножницами и примерке на Мac mini.

Инженеры в дата‑центре поняли идею сразу, но отдавать производителям в качестве ТЗ такой вариант не солидно. Значит, надо рисовать в 3D. Картонная версия позволила смоделировать примерную развёртку: размеры в ней были далеки от идеала, но для наглядности вполне достаточно. 

Основная идея: ставим «миники» боком в холодный коридор, вся коммутация сверху
Основная идея: ставим «миники» боком в холодный коридор, вся коммутация сверху

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

Примерно через неделю один из них уже прислал детально отрисованную модель, а через две недели — первый опытный образец. Чуть позднее откликнулся и второй производитель, со своим вариантом. С обоими провели встречи, где обсудили нюансы по конструкции и требованиям к изделию.

Близкие к идеалу варианты, которые подходили для тестирования, должны были выглядеть уже так:

По сравнению с нашей моделью, в конструкцию добавились винты и заклёпки, что было связано с ограничениями оборудования производителей: оно не позволяло так согнуть металл. С одной стороны, это означало, что кредлы нужно будет собирать, с другой стороны, можно было точнее подогнать изделие под наши нужды. 

Созданные по модели опытные образцы мы установили в стойку, чтобы оценить, насколько они удобны в эксплуатации. Сравнивали по нескольким показателям: 

  • прочность изделия в целом;

  • тип крепления деталей и качество подгона;

  • совпадение отверстий с разъёмами «миника» (с учетом толщины разъёмов кабелей).

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

Сначала смотрим, как встаёт «миник», затем уже будем подключать кабели
Сначала смотрим, как встаёт «миник», затем уже будем подключать кабели

Вскоре выяснилась ещё одна деталь: за всё это время у нас накопилось множество разных моделей, на процессорах разного поколения, что позволяло тестировать и на Intel, и на Apple Silicon. Но у старых и новых моделей был по‑разному расположен USB‑порт: где‑то горизонтально, где‑то вертикально. Чтобы учесть разные конструкции интерфейса и без проблем вставлять флешку, потребовалось сильнее выпилить верхнюю часть кредла:

В остальном оставалось собрать оптимальное решение по формуле: разумные сроки + ниже цена + лучше условия + чуть лучше качество самого изделия.

Переход на массовое производство

Когда тестирование определило победителя, пришло время заказывать экземпляры для промышленной эксплуатации. 

Вот как мы планировали организовать нашу песочницу, чтобы достичь максимальной амортизации:

  • по 11 «миников» в каждый кредл; 

  • до 44 шт на стойку.

Так можно было утилизировать все 48 доступных портов.

Как выглядели итоговые стойки, по 4 кредла на каждую

Коммутация стала гораздо проще: 

Инженеру работать в холодном коридоре тоже намного удобнее: 

Всего мы планировали разместить около 1700 устройств в три дата‑центра. С учётом заявок от разработчиков, распределение было не совсем равномерным. Но за счёт плотности размещения нам было достаточно 170 таких кредлов. Да, конструкция получилась довольно тяжёлой: 11 «миников» вместе с самим кредлом и креплением давали массу около 15 кг. В будущем можно ещё немного улучшить, добавив внизу «губу» для усиления жёсткости, чтобы ничего не прогибалось со временем. 

Что нам даёт такое решение на масштабе трёх ДЦ:

  • достаточную плотность в 44 «миника» на стойку;

  • надёжную конструкцию из толстого и прочного металла;

  • амортизацию за счёт мягких вставок в местах соприкосновения с оборудованием;

  • плотную фиксацию в посадочных местах;

  • возможность обслуживать «миники» из холодного коридора;

  • полный доступ ко всем портам и кнопке включения;

  • возможность снимать любой «миник», не затрагивая соседние;

  • отсутствие лишних кабелей и блоков питания, удобный кабель‑менеджмент.

Насколько решение эффективно в долгосрочной эксплуатации — покажет время и цифры, да и мы не можем предсказать форм‑фактор для оборудования из будущего. Но пока работать с ним намного удобнее, серьёзных минусов не замечено. 

Если вам интересно узнавать больше о наших экспериментах, подписывайтесь на канал Yandex Infrastructure — рассказываем, как мы делаем решения для дата‑центров, сетей и многих других инфраструктурных сервисов.