LINUX.ORG.RU

Кластер из старых китафонов на базе Debian Stretch

 , ,


15

5

Давным давно я покупал всей семье аппараты UMI-X2 (mt6589). Время этих телефонов прошло, апдейтов на них уже не прилетит, некоторые трубки частично убиты. К UMI-X2 еще и добавился еще и мой старый iOcean-X8 (mt6592) с убитым SIM-слотом. Выкидывать весьма производительные железки мне не хотелось, потому я сделал для аппаратов кастомные ядра и портировал Debian Stretch.

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

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

Время печати всего удовольствия - около 30 часов на моем Flying Bear P902. Моделировал в SolveSpace.

Каждый аппарат по USB определяется как композитное устройство в составе которого: сетевая карта (cdc-eem), виртуальный последовательной порт с консолью и usb mass_storage (если потребуется прямой доступ к SD/eMMC).

На данный момент аппараты планируется использовать как ферму для сборки debian-пакетов под arm через Jenkins CI. Тут два варианта: если удастся завести docker, то узлы будут эквивалентны, с контейнерами под debian armhf/armel и raspbian armhf. А если нет - то на каждый аппарат по своему дистру. Нет только аппарата на aarch64, но что-то подсказывает мне, что если второй раз разобью экран своего K6000 Pro, будет и эта архитектура в этой чудной зомби-ферме.

Кстати, за время с прошлой новости, я добавил в MediaDeb поддержку WiFi для UMI-X2, перевел систему сборки проекта на cmake, добавил в ядро все необходимое для поддержки iotop, оптимизировал систему для работы с еMMC и еще сделал много мелких доделок, включая еженедельные сборки для поддерживаемых аппаратов. А еще сделал бенчмарки

★★★★★

Проверено: JB ()
Последнее исправление: cetjs2 (всего исправлений: 5)

Узнал автора по сабжу. А так впечатлен твоим трудолюбием.

imbaaa
()

Узнал автора по заголовку[2].

intelfx ★★★★★
()

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

Morin ★★★★★
()

Мужик!

Выкидывать весьма производительные железки мне не хотелось...

Страдаю этой же болезнью. В дело идёт всё. От отслужившего своё кофемолки до старого синкпада.

Сейчас занимаюсь кофемашиной, но дело замедлилось в связи с поиском новой работы.

Deleted
()
Ответ на: комментарий от KillTheCat

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

Morin ★★★★★
()
Ответ на: комментарий от KillTheCat

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

Morin ★★★★★
()

За трудолюбие и весь софт конечно лайк. Сам бы я такого не сделал никогда.

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

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

У меня так ноутбук пролежал лет 10. Все жалко было что то с ним сделать, а по сути место занимал только, которого и так мало.

koshmar ★★★★
()
Ответ на: комментарий от Morin

В этом варианте я решил попробовать сверху по той причине, что если кулер ставить снизу, то его надо разворачивать. Насколько эффективно будет охлаждать - посмотрим. Буду нагружать все аппараты на 100% и смотреть как кулер справляется через sysfs - там есть термодатчик и он работает.

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

Над вертикальным размещением думал, но тогда одного вентилятора будет мало для обдува.

P.S. В этом варианте корпуса это не единственный косяк. Я немного пожадничал с высотой этажей, и для этажей где будут UMI-X2 напрашиваются ограничители, чтобы аппараты лежали жестко и было проще втыкать провода.

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от koshmar

Железо уровня P3-P4 и древнее я уже выкидывал недавно на свалку без сожалений. Эти же железки вполне себе на уровне типичных ARM SoC, и для них есть пока применение. По сути это тот же распберри, только мощнее. Я еще хочу все же попробовать расковырять как работать с камерами хотя бы напрямую через /dev/, даже без libhybris.

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

ncrmnt ★★★★★
() автор топика

жесть, я на чтение wiki не могу найти время чтоб арчик по новой поставить, а тут такое, женица вам надо, определённо.

как на ощуп пластик кстати? как старый советский или современный приятный на ощуп?

eR ★★★★★
()
Ответ на: комментарий от MihailP

UMI-X2 Android 4.1-4.2 без обновлений. Дофига софта в маркете тупо отказывается уже запускаться. Один без антенного тракта, с треснутым дисплеем, без одной камеры (использовался как донер после смерти), другой с больной антенной. Но самая главная проблема - батарею не держат никак, новые батареи не купишь - едва ли не хуже старых. Так что увы.

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от eR

PLA больше как старый советский, жесткий. ABS немного помягче, но с ним проблемы при печати у меня пока. Никак руки не доходят термошкаф доделать. Есть еще SBS - он по ощущениям приятнее всего, похож на софттач.

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от ncrmnt

Над вертикальным размещением думал, но тогда одного вентилятора будет мало для обдува.

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

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

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

Morin ★★★★★
()
Ответ на: комментарий от Morin

но в горизотальном размещении ты не обдуваешь нижние этажи :)

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

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от istepan

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

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от Morin

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

ncrmnt ★★★★★
() автор топика

Идею категорически одобряю, во всём её безумии. Применение 3d–печати тоже. Но вот пластиковый корпус в текущей итерации — imho, это миниатюрный крематорий. :D

Если бы сам реализовывал подобное, скомпоновал бы иначе: Трубки вертикально, кулер снизу, разъёмы там же, скрыты распечатанным breakboard/hub под usb. Стенки — алюминиевая пластина 1.5—2мм, либо профили (достаётся в Леруа). Крепится всё к двум либо четырём одинаковым распечатанным ножкам, образующим каркас конструкции и поднимающим воздухозаборник с кулером сантиметров на пять над поверхностью. В целом, напоминает эдакую мультяшную ракету. Рисовать лениво, но, думаю, идею донёс. =)

Quote
()
Ответ на: комментарий от Jedi-to-be

Нет, готовлю ферму на продажу. Можно биток на OpenCL майнить, можно ядрену мину считать. налетай, недорого!

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от ncrmnt

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

Греться, небось, будут. Или маленькие сенсоры этим не страдают?

knovich ★★
()

Почему наножужжалка вместо вентилятора миллиметров на 120? почему дуешь сверху вниз, а не снизу вверх (а лучше сбоку, вдоль нод кластера)?

P.S. Докер не заведётся - LXC заведётся. LXC не заведётся - chroot заведётся

MrClon ★★★★★
()
Ответ на: комментарий от knovich

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

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от MrClon

Почему наножужжалка вместо вентилятора миллиметров на 120? почему дуешь сверху вниз, а не снизу вверх (а лучше сбоку, вдоль нод кластера)?

Была только такая под рукой, потому и взял для первой ревизии.

С chroot/lxc не так удобно. В дженкинзе есть плагин докера от cloudbees, который после сборки контейнер выкидывает автоматом. C chroot/lxc такое сделать сложнее.

ncrmnt ★★★★★
() автор топика
Последнее исправление: ncrmnt (всего исправлений: 1)
Ответ на: комментарий от Pyzia

Просто пока лучный тир, бассейн и спорт-зал закрыты - появилось немного свободного времени ;)

ncrmnt ★★★★★
() автор топика

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

aquadon ★★★★★
()
Ответ на: комментарий от ncrmnt

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

MrClon ★★★★★
()
Ответ на: комментарий от ncrmnt

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

MrClon ★★★★★
()
Ответ на: комментарий от Morin

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

AVL2 ★★★★★
()

Кластер из старых китафонов
debian на старых китафонах
использовать как ферму для сборки debian-пакетов под arm через Jenkins CI
armhf/armel

ncrmnt, скажите честно, зачем вам вообще это нужно? :]
Чем вас не устраивают x64 или на худой конец x86-64 архитектуры? :D

SysoevDV
()
Ответ на: комментарий от torvn77

Это ты зря, зонда то в биос у них нету

Какой зонд у всяких малинок?

NextGenenration ★★
()

Давным давно я покупал всей семье аппараты UMI-X2 (mt6589). Время этих телефонов прошло, апдейтов на них уже не прилетит, некоторые трубки частично убиты. К UMI-X2 еще и добавился еще и мой старый iOcean-X8 (mt6592) с убитым SIM-слотом.

оперативки и там и там по 2 Гб?

На данный момент аппараты планируется использовать как ферму для сборки debian-пакетов под arm через Jenkins CI

Что за пакеты?

NextGenenration ★★
()

Прикольно получилось. Молодец!

Odalist ★★★★★
()
Ответ на: комментарий от SysoevDV

Чем вас не устраивают x64 или на худой конец x86-64 архитектуры? :D

Тем, что dpkg-cross все еще сырой, и собрать через него пакет, который тянет туеву хучу либ в динамических зависимостях практически невозможно. Не знаю, как в stretch, а в jessie установка некоторых libBLAH:armhf приводила к конфликтам/удалению x86 версии. Соответственно, бонузный геморрой если у пакета нетривиальная система сборки, запускающая вспомогательные бинарники/тесты.

qemu не катит, так как через qemu-user-static на ксеоне оно собирает раза в два медленнее, чем нативно на современном arm'е. До кучи cmake вызывает race condition в qemu из-за которого на детекте C/C++ компилятора оно с некоторой вероятностью сборка повисает к чертям.

Так что остается только так, с реальным ARM железом. ЕМНИП апстрим дебиана так и собирают, только на марвелловских железках, которые им задонатили.

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от NextGenenration

оперативки и там и там по 2 Гб?

Да, на всех по 2GB RAM / 32GB eMMC

Что за пакеты?

Частично свои самописные либы/тулы, частично то, что нет в штатных репозиториях типа mjpeg-streamer.

ncrmnt ★★★★★
() автор топика
Ответ на: комментарий от Morin

Да, я потом прочитал, что все уже придумано до нас.

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

AVL2 ★★★★★
()
Последнее исправление: AVL2 (всего исправлений: 1)
Ответ на: комментарий от ncrmnt

Мне кажется, что если вентилятор шумит в перевернутом состоянии, то надо просто поменять вентилятор.

AVL2 ★★★★★
()
Ответ на: комментарий от ncrmnt

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

То есть батареи там? Выглядит как-то бестолково, понимаю что шансы не велики на возгорание. Но я бы не рисковал бы ради такого колхоза. Уж проще сдать на запчасти в сервис какой-то за копейку, чуть добавить на какую-нибудь ARM борду.

fornlr ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.