Как мы собираем кастомные серверы: от конфигуратора до тестирования

Рассказываем, что происходит после нажатия кнопки «Заказать» в конфигураторе выделенных серверов.

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

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

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

Есть и второй конфигуратор, для серверов с GPU. В нем логика сборки отталкивается именно от выбора видеокарты (идет первым пунктом).

Так выглядит конфигуратор на сайте Selectel

После того как клиент определился с нужной конфигурацией, сделал заказ и оплатил его, система автоматически создает тикет в панели управления. Далее он поступает в отдел сборки, и наши специалисты приступают к работе. Все начинается с проверки заказа. 

Проверка заказа

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

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

Комплектующие

Каждый сервер состоит из следующих комплектующих:

  • корпус (идет сразу с блоком питания);
  • материнская плата;
  • оперативная память;
  • процессоры;
  • накопители;
  • дисковые контроллеры (если есть в заказе);
  • видеокарты (если есть в заказе).

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

Подготовка корпуса

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

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

«Пустой» корпус сервера

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

Установка материнской платы

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

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

Материнская плата

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

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

Установка процессоров

Эта операция самая тонкая и требует особой внимательности. Еще 10 лет назад процессоры имели удобные «ножки», а сокеты представляли собой пластиковую матрицу с отверстиями. Достаточно было аккуратно вставить процессор в сокет и закрыть защелку. Начиная с сокета LGA 775 процессоры лишились «ножек», остались только ровные контактные площадки. Сокеты, наоборот, теперь имеют контакты, однако они настолько маленькие и хрупкие, что любая операция с установкой процессора должна быть максимально точной.

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

Радиатор

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

Установка оперативной памяти

Каждый производитель материнских плат самостоятельно определяет верный порядок установки модулей оперативной памяти. Обычно это прописано в инструкциях для каждой модели материнской платы. Ими и руководствуются инженеры при сборке серверов.

Несколько модулей оперативной памяти

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

Установка накопителей

Дисковые накопители закрепляются в штатных салазках, после чего вставляются в сервер. Если были заказаны дисковые контроллеры или дополнительные сетевые карты, то они устанавливаются в соответствующие PCI-E слоты и закрепляются винтами. После того, как все установлено на свои места, инженер отдела сборки еще раз проверяет соответствие всех комплектующих заказу и отправляет сервер на стенд для прошивки и тестирования.

Укладка кабелей

Здесь тоже есть свои нюансы, главным из которых является ограниченность пространства. Большинство серверов спроектированы таким образом, чтобы занимать минимум места в стойке. Высота одного монтажного юнита составляет 43,7 мм. Из-за этого места для кабелей после установки материнской платы и прочей периферии остается достаточно мало.

Важно, чтобы после укладки кабелей воздух беспрепятственно проходил через сервер для его эффективного охлаждения. Любые препятствия будут ухудшать отвод тепла и увеличивать расход электроэнергии из-за большей нагрузки на систему охлаждения. Это особенно важно для серверов с несколькими GPU, температура которых под нагрузкой доходит до 80 градусов.

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

Прошивка комплектующих

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

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

Что перепрошиваем: 

  1. IPMI, или модуль удаленного управления (IPMI / iLO / iDrac). Один из важнейших элементов сервера.Представляет из себя независимый микрокомпьютер, работающий всегда, когда на материнской плате присутствует рабочее напряжение.
  2. BIOS. В прошивке BIOS имеются микрокоды процессоров, поддерживаемых материнской платой, а также микрокоды сетевых интерфейсов и чипсетов. Когда выходит новая версия процессора, производители материнских плат выпускают новые версии прошивок, которые содержат требуемый микрокод. Без этого новый процессор просто не сможет запуститься. Помимо этого, выпуск новых прошивок предотвращает конфликты, возникающие при взаимодействии различных комплектующих.
  3. Дисковые контроллеры. Старая прошивка дискового контроллера может не только исправлять ошибки, но и кардинально менять способ хранения метаданных. Поэтому здесь перед прошивкой нужно ознакомиться со списком внесенных в функционал изменений. Эта информация всегда присутствует на сайте производителя оборудования и чаще всего дублируется в архиве с самой прошивкой.
  4. Сетевые карты. Перепрошивка помогает устранить ошибки на уровне встроенного программного обеспечения. Также ПО напрямую влияет на производительность карт. 

Тестирование

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

Каждый сервер всегда проверяют минимум два инженера

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

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

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

Далее проверяются параметры S.M.A.R.T. всех установленных дисков. Если хотя бы один параметр, заявленный производителем как повод для замены накопителя, имеет ненулевое значение, диск заменяется на другой и так же тестируется.

После тестирования

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

Задавайте вопросы, если хотите узнать о чем-то подробнее, или просто попробуйте собрать сервер в конфигураторе — для этого не нужно регистрироваться в панели управления Selectel. А еще следите за новостями — скоро будут классный апдейт по кастомам.

Что еще почитать по теме

Михаил Фомин 29 апреля 2022

Деплой — это лава! Как Managed Kubernetes помогает бизнесу тушить пожары

Рассказываем, как бизнес переходит от монолита к микросервисам и как Managed Kubernetes позволяет эффективнее управлять инфраструктурой.
Михаил Фомин 29 апреля 2022
Дарья Маташина 25 апреля 2022

Разбор: для каких проектов и задач необходим CDN и кому он вреден

CDN помогает ускорить загрузку контента, а также снизить нагрузку на серверы. О том, кому и в каких ситуациях подойдет и не подойдет сервис — в тексте.
Дарья Маташина 25 апреля 2022
Ульяна Малышева 22 апреля 2022

Container Registry: кому нужен и как использовать готовый реестр контейнеров

Рассказываем о решении, которое ускорит деплой приложений и сделает работу с контейнерами более удобной.
Ульяна Малышева 22 апреля 2022

Новое в блоге

Сравнение способов организации мультиклауд-решений

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

Сетевые протоколы: базовые понятия и описание самых востребованных правил

В мире существует более 7 000 протоколов, и их число продолжает расти. Рассказываем о самых часто используемых правилах взаимодействия устройств в сети.

Готовые кластеры Kubernetes: легкий старт, автоматизация и другие преимущества перед self-hosted

Рассказываем, чем отличается Managed Kubernetes от самостоятельного развертывания инфраструктуры. Объясняем, кому подойдет решение.
T-Rex 18 мая 2022

Что такое терминальный сервер и зачем он нужен

Разбираемся, что такое терминальный сервер, чем он похож на VDI и как подобрать сервер под роль терминала.
T-Rex 18 мая 2022