OCP Experience Lab — как мы строили мини-ЦОД в офисе

e04db12a2ea682e1f2e887b3ac2b71dc.JPG

Начиналось всё с создания стенда для тестирования серверов нашей собственной разработки. Потом стенд разросся и мы решили сделать небольшой датацентр для пилотирования различных софтовых решений. Сейчас это единственная в Россси и вторая в Европе лаборатория OCP Experience Lab.

Вообще я недавно в разработке вычислительной техники. Мне это всегда казалось чем-то невозможно сложным и доступным только огромным командам с очень большими бюджетами. И, наверное, поэтому очень привлекательным. В прошлом году звёзды сошлись и мне удалось привлечь инвесторов и найти стартовых клиентов, чтобы запустить свой собственный проект создания российского сервера. Выяснилось, что в России в этом направлении работает пара десятков команд совершенно разных размеров и специализаций. Одни просто привозят комплекты деталей от тайваньских производителей и делают в России только сборку, а другие копают сильно глубже, вплоть до написания собственного BIOS. Короче, стало понятно, что тема хоть и сложная, но вполне посильная.

Для старта разработки выбрали сервера стандарта OCP. ОСР это Open Compute Project, открытое сообщество, в котором конструкторская документация на все продукты выкладывется в открытый доступ для свободного использования. Настоящий Open Source Hardware, и как следствие, самый прогрессивный, бурно растущий и перспективный стандарт, к тому же продвигаемый преимущественно не поставщиками, а потребителями оборудования. Помимо всех технических преимуществ, открытая документация должна была упростить нам старт разработки и ускорить встраивание в такую тяжелую тему, как серверное железо. Но это, наверное, тема для отдельной статьи.

2f442e9f111afd5ea1d8138823ad45df.png

А компанию, кстати, назвали GAGAR>IN. Скоро вы про неё ещё услышите.

Готовимся

Моё же личное знакомство с ОСР состоялось лет пять назад, когда я участвовал в продвижении решений американской Stack Velocity на российский рынок. Уже тогда у нас была идея локализовать их производство и сделать собранные в России сервера с открытой документацией для нужд госкомпаний и госзаказчиков. Но тогда импотрозамещение было ещё не в тренде, и все потенциальные заказчики в итоге предпочли купить тайваньское оборудование. Именно тогда произошел первый сдвиг в популяризации OCP в России: Яндекс установил в свой новый датацентр как-бы-OCP сервера от небольшого тайваньского вендора AIC, а Сбербанк, РЖД и Mail вовсю тестировали полноценные OCP решения от гиганта Quanta, крупнейшего мирового производителя вычислительной техники.

С тех пор прошло довольно много времени и поэтому первым шагом моего плана было обойти всех основных вендоров и ближайших дистрибьюторов OCP, чтобы подружиться, запартнёриться и посмотреть-пощупать реальные железки. До начала карантинных ограничений я чудом успел объехать с десяток поставщиков в России, Тайване, Китае и Европе — это был стремительный и весьма продуктивный тур, из которого стало многое понятно. Не боги горшки обжигают и у нас точно есть шанс успешно воспроизвести сервер OCP, и более того — сделать его немного лучше по характеристикам.

Сборочная линия небольшого тайваньского производителя серверовСборочная линия небольшого тайваньского производителя серверовКалифорнийское производство серверов крупного азиатского производителяКалифорнийское производство серверов крупного азиатского производителя

Одним из открытий погружения в мир серверов было то, что вендора не показывали образцы реальной продукции — чаще всего мы смотрели картинки презентации, и в лучшем случае инженеры притаскивали опытный образец какой-то одной модели. Только один раз удалось увидеть что-то похожее на шоу-рум — голландский дистрибьютор оборудования OCP собрал весьма нарядный стенд в дата-центре под Амстердамом.

Стойка OCP Experience Center в Амстердаме выглядит очень красиво, но довольно бессмысленноСтойка OCP Experience Center в Амстердаме выглядит очень красиво, но довольно бессмысленно

Стартуем

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

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

Тестирование новейшего сервера в домашних условияхТестирование новейшего сервера в домашних условиях

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

В июне, как только карантин немного ослаб, мы смогли начать сборку лаборатории нашей мечты.

Затащить серверные стойки в неприспособленный под это офис - само по себе нетривиальная задачаЗатащить серверные стойки в неприспособленный под это офис — само по себе нетривиальная задача

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

Монтаж очередного сервера в стойкуМонтаж очередного сервера в стойку

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

Три стойки, рабочий стол инженера и большой плакат - так выглядела наша лаборатория в сентябре 2020Три стойки, рабочий стол инженера и большой плакат — так выглядела наша лаборатория в сентябре 2020

Комплектующие в лабораторию мы собирали со всего мира: заказали всё самое новое и интересное, что есть в мире OCP. В итоге у нас образовалось три стойки от трёх разных производителей, полтора десятка различных вычислительных серверов, несколько дисковых массивов и целых шесть коммутаторов! Такое многообразие позволило одновременно запускать два-три функциональных стенда и проводить на них долговременные тесты.

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

Что и как тестируем

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

Всё началось с базовых тестов производительности железа. Мы прогнали через испытания множество компонент: модули памяти Samsung, Micron, Hynix; SSD от тех же Samsung, Micron и Intel; сетевые карты Mellanox, Broadcom, Emulex и Intel. И даже сравнили между собой процессора Intel SkyLake и AMD EPYC2.

Но понятно, что лаборатория — не только место для тестирования новых железок. Потребители не бенчмарки будут мерять, им нужны рабочие программно-аппаратные конфигурации. И поэтому мы стали потихоньку собирать конфигурации различного софта и проверять его работоспособность и производительность. Начали с российских Линуксов: Альт, Астра и Роса. На базовых тестах всё прошло без сюрпризов — возможно стоит делать более глубокие исследования и сравнение в сложных задачах. Потом собрали несколько различных стендов систем виртуализации. Для начала попробовали VmWare, Proxmox, Virtuozzo — с ними также всё прошло довольно гладко и скучно. Мы сохранили конфигурации и решили вернуться к этим системам позже, уже с реальными клиентскими задачами.

Так как основная идея OCP — оборудование без излишеств, то всё разнообразие функционала перенесено на уровень софта. Фактически, любые конфигурации собираются из двух «кирпичиков» — вычислительного сервера и присоединяемого к нему дискового массива JBOD (Just a Bunch Of Discs). Мы же собрали в лаборатории несколько различных исполнений как серверов, так и дисковых массивов, и следующим логичным шагом было тестирование их совместной работы.

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

Дашборд ZabbixДашборд Zabbix

Одним из неожиданных открытий после запуска Zabbix, стало то, что мы обнаружили повышение температуры в лаборатории ночью. Оказалось, что так как мы находимся в обычном офисном центре, арендодатель ночью выключает центральное кондиционирование. Оно и без того жарким летом еле справляется с охлаждением наших стоек, но оказывается ночью температура в нашем импровизированном датацентре регулярно превышала 35 градусов:

7469e39932f3e666d6b092a71b51a95f.jpeg

Кстати, одним из преимуществ оборудования OCP, является его способность работать при температурах до 30 градусов, а максимум допустимой температуры составляет как раз 35 градусов. Получилось, что мы сами того не желая, устроили своего рода стресс-тест нашим серверам. Но всё же оставлять серверную без кондиционирования опасно — ещё несколько серверов и температура уползёт под сорок, да и клиентов приводить в такую жаркую комнату неудобно.

Финальный рывок

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

Один из первых вариантов дизайнаОдин из первых вариантов дизайна

Дизайн и ремонт мы заказали у застройщиков выставочных стендов — они как никто умеют делать яркие конструкции. Месяц согласований, месяц строительства — и получилось вот так:

Лаборатория после ремонтаЛаборатория после ремонта

Теперь можно было проводить официальное открытие и снимать полноценное видео:

В итоге, у нас есть не только лаборитория, шоурум, но и удобная съемочная площадка для производства серии видеороликов про оборудование Open Compute. И мы даже завели для лаборатории отдельный сайт ocplab.ru


Так что продолжение следует!

Самое главное - табличка на входе!Самое главное — табличка на входе!

© Habrahabr.ru