Как я спроектировал себе сервер под хостинг
А вот я и забрал с ММТС-9 последний сервер, некогда бывший одним из состава моего хостинга anotherhosting.ru! И это отличный повод написать заметку об его устройстве. Потому что заметка об программной составляющей была (а там у меня, на секундочку, собственная управлялка виртуальными машинами была, с собственной же web-мордой для клиентов). А теперь настал момент, и я даже не забыл это всё отфотографировать перед тем, как разберу на запчасти и начну распродавать. А там есть что показать! Это не просто самосбор, это такой самосбор, что многим покупным решениям фору дал бы!
Немного истории
Я вот не буду сейчас очень сильно углубляться в вопрос и начинать повествование от мейнфреймов и терминалов. Начну с времён поближе. С каких-нибудь ранних 00х, со времён Pentium 3 и AMD K6-III. И самым показательным тут будет TDP тех процессоров. Потому что по TDP можно прикинуть не только, каких масштабов требуется система охлаждения на процессоре. Вычислительная техника в целом обладает крайне низким КПД. Так что если видишь TDP в 30Вт (для «топовых» процессоров того времени), то можно сразу прикидывать потребление самого процессора Ватт так… ну в 35. То есть зона вторичных источников питания, скорее всего, обойдётся без радиаторов вовсе. На всей материнской плате, кроме радиатора процессора, будет лишь весьма негабаритный радиатор на серверном мосту чипсета. И это всё легко можно будет скорпусировать даже в «тазик» высотой 1U. Получив тем самым готовый к установке в стойку датацентра сервер, за деньги равные стоимости рабочей станции. Возможно придётся потратится на материнскую плату не noname, и даже какой-то дисковой контроллер. Но всё это совершенно аналогично тем затратам, которые пришлось бы сделать и для рабочей станции, если предполагалась иметь какую-то отличную от нуля надёжность.
Именно на те годы и пришёлся рассвет «отечественных» производителей компьютерного оборудования. Ещё бы: берёшь всякое из магазина, закидываешь это в тазик из гнутого листа металла, снабжённый ушами и салазками для крепления в 19" стойку, туда же закидываешь пригоршню винтов, закрываешь крышку и трясёшь, чтобы оно там равномерно перемешалось. Можно ещё пару раз пнуть ногой. После чего остаётся лишь наклеить наклейку с собственным брендом и можно продавать. Если же оно для военных, то местами ещё проклеить дефицитным японским клеем-герметиком что-нибудь, а потом упаковать это всё в деревянную тару, не забыв вложить корректно заполненные РЭ и ПИ туда же.
А если сервер не для монтажа в стойку, то корпус типа «башня» можно в том же магазине, где и всё остальное куплено, приобрести. Вот.
Но время шло, мощности оборудования росли, и уже материнские платы обзавелись огромными радиаторами с тепловыми трубками. Больше оно, в том виде, как было представлено в массовой торговле, уже не могло поместится в корпус 1U, например. И даже в 2U с трудом, и только при некотором компромиссе. Хорошо это можно проиллюстрировать деятельностью «отечественных» производителей оборудования, массово перешедших на сборку «собственных» серверов из, фактически, крупноузловых наборов (т. н. серверных платформ) пары-тройки производителей. Кто платформы массово делал? Intel/Supermicro/Tyan? Ну так вот. А многие и такую сборку не осилили, перейдя целиком на торговлю и сервис, фактически, полностью готовых серверов производства HP, Dell, Lenovo и иже с ними.
Никто из известных мне компаний, торгующих оборудованием, не осилил создание собственной платформы. Пусть и с покупкой массовой серверной материнской платы (главное отличие серверной материнской платы в наше время, это расстановка компонентов таким образом, чтобы не мешать продувке сервера). Потому что недостаточно просто взять плату, пусть и качественную, пусть и с адекватным временем жизни до момента снятия с производства. Придётся что-то ещё делать с адаптацией пространства внутри. С организацией охлаждения и кабельного хозяйства внутри корпуса. Но, как можно убедится, не подъёмно это для изготовителей техники. Они лучше целиком «подсядут» на продукцию Supermicro или Tyan, которая сразу приходит с уложенными внутри жгутами, штатными радиаторами на процессор и дефлекторами для направления воздуха внутри корупуса. Да, пусть это дороже, но ведь это не коснётся прибыли. За всё же платит покупатель!
Ближе к делу
Итак, если твой бизнес связан не с торговлей компьютерным оборудованием и готовыми вычислительными машинами, но связан с применением последних, то сразу встаёт вопрос: а как бы в минимальные объёмы впихнуть максимум вычислительной мощности? И нет, «а кто мешает взять корпус побольше» - отказать. Потому что корпусов «побольше» влезет меньше в ограниченный объём. А даже у собственного ДЦ есть какая-то ёмкость, и гораздо выгодней в тех же масштабах иметь больше производительных серверов, чем меньше. И уж тем более это актуально, когда арендуешь машиноместа в чужих стойках.
Мне же предстояло съезжать от Selectel’а, который в 2022ом, как мне кажется (возможно кто-то так не считает, кому нравиться платить больше, вместо того, чтобы платить меньше), совсем уже попутал со своей ценовой политикой. Куда съезжать? Ну на ММТС-9, конечно! Если уж и переезжать куда-то, то туда, где всё начиналось! А значит пора было, заодно, обновить оборудование. А то моё с 2014 года трудилось. И менять надо было так, чтобы в актуальных условиях иметь не только максимальную отдачу с одного места в стойке, но и не стать заложником «брендовых» решений. Многие в такой ситуации покупают «немного б/у» серверное оборудование hi-end класса. Проблема в том, что когда хочешь делать бизнес с подобным оборудованием, не плохо было бы положить в ЗИП ещё один такой же сервер. По частям. Это когда речь про новое оборудование. А если про «немного б/у», то парочку экземпляров. Чтобы, когда у сервера внезапно сгорит материнская плата, можно было бы быстро приехать с заведомо рабочими корпусом-бп-платой-процессором-памятью, закинуть в них накопители со сгоревшего сервера, и вернуть машину в работу.
Отказ совершенно нового сервера менее вероятен, но тоже возможен. И, как выше отмечалось, ЗИП нужен. И чем более «понтовый» сервер, тем важней иметь ЗИП. Сломаться то может что угодно, но там, где потроха для платформы Supermicro можно будет быстро втридорога купить на помойках, ждущих попавших в аврал, там для какого-нибудь сервера Dell комплектующих может не быть в наличии вовсе. Только под заказ. Накопители, кстати, НЖМД/SSD/NVMe тоже для них фирменные надо будет держать в запасе. Потому что в-точь-точь-такой же накопитель, в который будет без наклейки вендора и правильной прошивки, будет отвергаться контроллером. Нет, конечно накопители всегда надо держать в запасе. Просто тут и запасы быстро не пополнить. Потому что «под заказ, от трёх недель». Или даже дольше.
Короче, выбор у меня был между «что-то не очень производительное», но на распространённых комплектующих. Или что-то значительно более дорогое, чуть более мощное, но не настолько, чтобы оправдать свой ценник. Настоящая аксиома Эскобара! Я решил, что пойду своим путём. И идеальным вариантом было взять что-то на AMD, потому что AMD уже в своих «настольных» моделях представляла всё то, что Intel обещала лишь в «серверных» системах, а именно память ECC и максимальную плотность вычислений, в расчёте на один процессор. Шутка ли, Ryzen 9 5950X — 16 полноценных ядер, без всяких там заигрываний с «мы вам тут насыпим много ненужных ядер, и два-три-четыре полноценных».
Вот только серверных плат под AM4… не должно было бы существовать. Потому что у AMD был процессор для «больших» серверов. Epyc. А ещё был вариант «встроенного» исполнения, сопоставимый по габаритам и мощности со средними Ryzen, но только стоимость платы с «встраиваемым Epyc» значительно превышала стоимость комплекта из Ryzen 9 5950X и платы под него. Короче, не существует эталонного дизайна для «серверного исполнения» платы под Ryzen. Я же был уже готов взять какую-нибудь серийную «настольную» материнскую плату, переделать на ней охлаждение, вывести ещё один полноценный PCI-e x4 с M.2 на переходник (потому что типовой дизайн для AM4 — это порты PCI-e x16 и M.2 идущие от процессора, когда остальные идут от чипсета), и вот это вот всё… Но тут взор мой упал на платы ASRock.
А эти ребята умудрились взять целиком эталонный «настольный» дизайн размещения процессора, памяти и вторичных источников напряжения, но развернуть весь этот блок на 180 градусов. И получить серверную компоновку материнской платы. Ещё ASRock не поскупились на качество компонентов, вывели контакты PCI-e x4 процессорного не в слот M.2, а на полномразмерную колодку PCI-e, и ещё возможность деления одного PCI-e x16 на два по x8 предусмотрели. То есть сделали всё то, чего я хотел бы добиться я от материнской платы в сервере. И даже чуточку больше того.
А самое главное, что? Доступность! У ASRock’а есть серверное направление с дешёвыми серверными платформами. Но оно как-то в тени других китайских производителей оказалось. И на нашем рынке практически не представлено. Как и на мировом, внезапно. Зато их серверные платы уверено поставляются по всему миру. Потому что сервера бывают и в полноразмерных корпусах. Так что на серверные платы есть спрос отдельно от платформ. И в нашу страну их завозят. А стоимость их получается сопоставим с аналогичными платами того же ASRock’а для «премиального настольного» сегмента.
Короче, плату нашёл. Оставалось как-то засунуть в 1U не дохлый процессор, но самый производительный в линейке. А значит мне предстояло сделать свою серверную платформу. Из комплектующих, которые мог бы изготавливать я, методом печати на 3d-принтере или в гараже, например. Либо мог бы купить в любой момент в компьютерном магазине. За недорого. Сделать то, что никто из известных мне «отечественных» производителей не осилил даже в первом приближении.
Дополнительная мотивация
Тут надо сделать некоторое отступление. Я не просто так выше писал, в том числе, про изготовление ПЭВМ для нужд ВПК. Сам некоторое время на данном поприще трудился. Но я то трудился программистом, фактически. Пусть с паяльником в руках и осциллографом на столе, пусть и с проработкой части схемотехники на макетах, пусть и участием в отладке чужой схемотехники в серийных изделиях, пусть и с выдвижением предложений по компоновке и эргономики изделий. Но всё-таки у нас там ещё были схемотехники и конструктора штатные, притом именно те, кого назначали как схемотехников и конструкторов на изделия. И я был не всегда доволен результатом нашей работы. Более того, мы некоторое время поглядывали на гражданскую продукцию. Но туда, где даже «крупняк» не осилил сделать свою платформу, наш скромный коллектив решил даже не соваться.
Так что мне предстояло сделать ещё и то, на что не решались и у меня на основной работе.
Фотоотчёт
Я выше писал же про ЗИП? Так вот, конечно ЗИП у меня был предусмотрен. Благо, учитывая выбор чуть более «ширпортебных» компонентов, это не ударило (относительно стоимости ЗИПа на брендовые решения) по бюджету. Большую часть ЗИПа, конечно, я распродал уже, но один корпус с установленной материнской платой, процессором, памятью и блоком питания у меня есть. И там я не осуществлял предсборку, так что он, фактически, представляет собой наглядную иллюстрацию того, что получит человек, решивший сэкономить на серверной платформе, вместо сервера:
А теперь фотографии первого сервера моей собственной компоновки, где я решил все компоновочные проблемы:
Ну и как?
А никак. Оно целиком не оправдалось. Не то, чтобы сервер был дороже покупных. Совсем нет. Так получилось, что самодельный сервер «на круг», вместе с комплектом ЗИПа, стоил как брендовый б/у сервер. А комплект ЗИПа, на секундочку, общий для серверов, так и «размазался» своей стоимость по всем серверам.
Да, в составе моего сервера была деталь, изготовление которой требовала сил, и которую нельзя было заказать. Это про радиатор процессора. Это всё резать, фрезеровать, паять пришлось мне для каждого экземпляра. Но они же подходят и для AM5. То есть если у меня бы кончился ЗИП, я бы просто перешёл на свежие материнские платы. Да, мне пришлось бы заново изготовить задник под разъёмы (он напечатан на принтере) и кожух вентиляторов (он тоже напечатанный), но, с учётом наличия ЗИПа, это не было бы проблемой и не стало бы причиной для простоя.
А ведь самое плохое в брендовых решениях не стоимость в момент покупки, но стоимость через некоторое время. Те же фирменные контроллеры и накопители, которые можно найти в брендовых серверах… Они и в моменте то дорогие. А какими они дорогими оказываются через несколько лет после снятия с производства! Хорошо если только дорогими, а не сразу редкими. Кто ни разу не искал «в точь-точь такой же нужен, потому что иначе не заработает» после смерти проприетарной железки, тот не поймёт всей этой боли.
Короче, вся выгода моей затеи была уничтожена, в первую очередь, необходимостью закрыть хостинг. Как бы не были хороши экономический и технический аспекты, но если всё мероприятие стало бессмысленным… Ну тут уж я сам виноват. Надо было не забывать, в какой сегмент бизнеса и когда решил зайти.
Но, чтож, хотя бы железку сделал такую, которую даже крупные компании, для которых она могла бы быть буквально палочкой-выручалочкой, сделать так и не смогли. Выступил на все деньги, что называется…