В 2011 году мы поняли, что нам нужны свои серверы и стойки. Теперь их производят на отдельной линии в Китая, на основе собственных разработок. Почему это стало оптимальным решением в том числе для Yandex.Cloud?
Яндекс построил и использует три основных дата-центра: Сасово, Владимир и Мытищи, соединённых между собой оптической кабельной сетью с очень высокой пропускной способностью — несколько терабит в секунду. Они образуют распределенную систему, которая позволяет балансировать нагрузку и резервировать не только отдельные инженерные системы на уровне каждого ЦОД, но и сами ЦОД.
Конечно, основная задача дата-центра — хранение данных и выполнение вычислений. В Яндексе устанавливаются сервера и серверные стойки, произведённые вендорами по нашей спецификации.
До 2011 года оборудование было чужое. Это приводило к тому, что серверы от различных производителей по-разному вели себя под одинаковой нагрузкой. Встречались даже ситуации, когда потребление воздуха у одних было в несколько раз больше, чем у других, и их нельзя было ставить рядом. Сильно потребляющие воздух сервера «отъедали» его у своих соседей, создавая зоны локального разряжения. Это приводило к появлению дисбаланса и необходимости ручного управления, словом, к потере времени, энергии и денег.
В 2011 году мы окончательно поняли, что нам нужны свои серверы и стойки. Под стойкой мы подразумеваем не просто металлический шкаф, в который устанавливаются серверы, а законченный модуль, в котором используются общие блоки питания, общее охлаждение и общее управление. В настоящее время используется уже третья версия стоек, а постоянно изменяющиеся требования заказчиков найдут свое отражение в новых версиях в ближайшее время.
Собирают стойки 3.0 на заводе в Китае, где налажена отдельная производственная линия. Во время сборки в систему управления стойки прошивается разработанное Яндексом программное обеспечение, основанное на проекте OpenBMC. Благодаря этому удалось реализовать алгоритм термостатирования температур процессоров — мы можем задавать их для каждой стойки (и даже для каждого сервера, но в этом обычно нет необходимости) с помощью внешнего интерфейса (API) системы управления.
Если статья оказалась полезной, ставьте 👍
Не забывайте подписываться на наши соцсети: Вконтакте, Facebook, Telegram, VC, YouTube.