
Вступление
Этот проект получил большой отклик в интернете, и впоследствии я сильно его обновил и создал Mark II.
Но не хочу обойти стороной и забыть Mark I. Ниже опишу основные характеристики и дам ссылки на 3D модели для печати с рекомендациями.
Для начала стоит сказать, а зачем вообще понадобился сервер Raspberry Pi? Дело в том что Raspberry Pi используют архитектуру ARM, а не привычную пользователям ПК и ноутбуков x86-64. ARM набирает всё большую популярность из-за распространения мобильных устройств (где используют в основном именно ARM), высокой эффективности, малого энергопотребления и тепловыделения. Производительность вплотную приблизилась к аналогам на x86-64. Взять хотя бы новый iPad. Ожидается что Apple перейдет на свой процессор на архитектуре ARM в будущих ноутбуках. Ну вы поняли.
А под другую архитектуру нужно перекомпилировать приложение или даже разработать с нуля. И как ни странно — полноценные серверные решения на ARM платформе на данный момент очень сырые, говорю это со знанием дела.
Стоит оговориться, что возможна эмуляция ARM на x86-64, но мы тут же сталкиваемся с падением производительности и, к сожалению, никакая эмуляция не будет идеальна. Часто то, что работает на эмуляторе не запустится на реальном устройстве с ARM процессором.
Начало
В общем было решено заказать сервер на ARM (Thunder X2) для TeamCity (билд-сервер непрерывной интеграции для разработки и тестирования). Но пока решаются все финансовые вопросы мы с коллегами решили собрать свой вариант. Я нашел на просторах Thingiverse несколько моделей для установки Raspberry Pi в стойку. А после печати пары деталей я понял, что есть много моментов, которые я бы сделал иначе. И я потратил пару дней на то, чтобы сделать из STL файлов (пригодных разве что для печати) полноценную 3D модель для последующей модификации.

Нам был важен быстрый и надежный накопитель, поэтому потребовался крепеж для ssd диска.

По железу выбор пал на последнюю на тот момент Raspberry Pi 4 4Gb. Как накопитель — Samsung T5 500 Gb, оптимальный вариант с точки зрения простоты установки/скорости работы/цены/надежности. А для питания и дополнительного охлаждения каждая Raspberry укомплектована PoE shield.

Полный список деталей:
- 8x Raspberry Pi 4 4GB
- 8x Samsung T5 512Gb (or 12 Raspberry and no SSD)
- 8x Raspberry Pi PoE HAT
- 8x 7.5 mm high radiators for Raspberry Pi processor for example
- 8x SanDisk High Endurance Video Monitoring, White 32GB
- PoE switch
- 3x 5M Threaded rods (Шпильки с резьбой). ~455mm
- 6x 5M nuts (гайки)
- 44x M2.5*12mm (32 for 8 Raspberry and 12 for Samsung T5)
- 12x M2 nuts (еще гайки для держателя Samsung T5)
- 1x 12v адаптер питания
- 5x 12v PC 80mm вентиляторы Arctic F8 Value Pack, ACFAN0 0061 A
- 1x 3Pin to 6x 3Pin Molex (6x15cm) я использовал вот такой провод для подключения всех вентиляторов, отрезав лишний разъем
Из-за высоких температур (как обещали тесты в интернете) и размера ssd дисков, я сделал этот сервер на 12 отделений. 4 из которых были выделены на пары SSD дисков, а 8 на Raspberry Pi. Но при желании можно поставить 12 Raspberry Pi без SSD дисков.
Модели для 3D печати я готовил таким образом, чтобы свести к минимуму пост-обработку. Т.е. печатать по возможности без поддержек, или с минимальными поддержками. А сами модели оптимального размера, чтобы печатать группами и оставлять принтер на 8-12 часов.
Для желающих повторить стоит сказать, что модели сделаны без учета возможных погрешностей печати. Поэтому принтер или слайсер должен быть настроен на печатать 1:1. В моем случае нужна настройка «горизонтальное расширение» (horizontal expansion) -0.1mm в слайсере Cura, но у вас может быть иначе. Советую распечатать пару деталей, посмотреть как они подходят друг к другу и сравнить реальный размер с моделью.
Список деталей для печати:
- 12x trays
- 12x trays faces
- 1x base short
- 11x base
- 20x Fan fix
- 1x rack mount bracket left (or short version)
- 1x rack mount bracket right (or short version)
В случае если вы будете использовать Samsung T5 как я, нужно напечатать также:
- 4x Samsung T5 holder back
- 4x Samsung T5 holder front
Другой важный, как мне кажется, момент. Обязательно используйте фиксатор резьбы для всех резьбовых соединений, в том числе на вентиляторе PoE shlied, производитель проигнорировал этот момент.

Также зафиксируйте провод вентилятора PoE shield например горячим клеем.
Я сделал короткое видео с советами по сборке этого сервера:
Галерея проекта
Скачать файлы для печати:
Если вам нравится, можете также поддержать меня через PayPal:
Я системный инженер в компании JetBrains. Основатель Uptime Lab. Рад видеть вас у себя на сайте! Пожалуйста подписывайтесь на мой Инстаграм и Твиттер, я публикую там самые свежие обновления.
Спасибо!!! Очень интересные дополнения )