Мощный ARM сервер

Идеи
Привет всем) Появилась недавно вот такая вот странная идея — запилить сервер на ARM процессоре. Почему именно ARM? Потому что посмотрел цены на услуги в сфере размещения и аренды серверов и ужаснулся. Итак по порядку:
— Аренда 1U в серверной стойке в более менее вменяемом ДЦ от 40$
— Плюсуем сюда ещё интернет, получаем не менее 60-70$/месяц
— Аренда дедика 5-7 летней давности под 100$/месяц
— Единственный выход аренда VPS и то за более менее адекватные 20$/месяц очень слабая машинка выходит
И тут в голову ударило — ARM
Для тех кому интересно — под кат.


Сразу же, не смотря на то что пора ложиться спать и утром рано на работу открыл гугл и немного погуглил. Остановился я на Freescale i.MX6 — линейка ARM камней, старший из которых 4-х ядерный. Куча периферии. Цена — в розницу 60 баксов, от 100 штук — 38. Всю периферию перечислять не буду, обозначу основные моменты которые могут заинтересовать в сервере:
— Естественно 4 ядра и частота в 1Ггц
— Поддержка DDR3 памяти
— USB, SATA, 1G Ethernet.
А потом я прикинул — а сколько же оно кушает? И понял что вряд ли потребление такого сервера перевалит за 10 Вт (правда сомневаюсь на счет жестких дисков). И как следствие — мало жрет, мало греет воздух, мало занимает места (сам камень размером 21х21 мм) — а может быть засунуть в стандартный 1U корпус 8 таких серверов? ну или больше. сделать это все в формате обычной АТХ мамки и расположить как можно больше нод на 1 плате.
Далее был гугл, гугл и ещё раз гугл. Из того что удалось раскопать — готовый опенсоурс проект «процессорной» платы в альтиуме (схема и печатка), но мне не нравиться припаянная к плате память — ИМХО нужен слот. Попались ещё схемы отладочной платы от самой freescale. По сути нужно из схем повыкидывать лишнее и на основе получившегося дизайна спроектировать 1 ноду, которую потом размножить в пределах 1 платы.
И что это даст?
А это даст возможность сдавать в аренду сверх дешевые сервера, при этом стоимость расположения 1U будет делиться на физическое кол-во серверов внутри. По сути можно сдавать дедик по цене виртуального сервера.
А что нужно?
И тут я понял что сам совершенно не потяну этот проект, я не большой спец, тем более в таких вещах. И если это хорошая идея то я вижу два пути её реализации:
1) Найти единомышленников и по вечерам пилить дизайн
2) Краудфандинг — тут куча граблей и подводных камней, но если идея будет интересной то должно взлететь (например 3Д ручка — по сути экструдер от 3Д принтера смогла же собрать 2+ млн $, почему тогда дешевые и энергоэффективные сервера не смогут?)
З.Ы. — звонил сегодня в НИИ сказали примерная стоимость разработки полной документации на мать о 8-ми процессорах — не менее 20-30 килобаксов.
З.Ы.Ы — все естественно под эгидой OpenSource!

8 комментариев

avatar
Приветствую.
А по каким параметрам оценивали минимальную необходимую производительность для такого рода сервера?

Ну по сути одноплатников уже на любой вкус и цвет их также можно запилить под сервер. В чем видите преимущество вашей системы?
avatar
В числах никак не оценивал — взял на вскидку камень. По прикидкам должно хватать с голов для соответствующих проектов.
Да одноплатников куча, был соблазн взять готовый модуль и сделать для них только «бекплейн» Но они либо несут на борту слишком много лишнего, либо наоборот слишком минималистичны. + не видел ни одного со слотом под память, а хотелось бы.
avatar
Идея интересная, сам над таким думал когда искал сервер. Побуду немного оппонентом и расскажу недостатки :)

Самая главная проблема сейчас не в ядрах, а в накопителях. К каждому процессору нужно будет подключить винт, а лучше, RAID. То-есть, как минимум, два винта. Вот они и будут греться, жрать электричество и ломаться.

Этот сайтик крутится на VPS с KVM виртуализацией. Считай, ему отдано полностью одно ядро Xenon'а (2.8 GHz) и выделен кусок памяти.

Единственно, что совместно юзается с другими серверами на этой ноде — шины и диски. В итоге, все работает значительно быстрее (практически в два раза) чем на домашнем core2quad 2.5 GHz, просто потому, что на сервере дисковый массив намного быстрее чем один винт дома.

Кроме этого всего, отдельным серверам нужно обслуживание. Что обычно стоит довольно ощутимых денежек. Но это уже мелочи по сравнению с необходимостью держать кучи дисков.
avatar
Согласен на счет дисковой подсистемы. Но тут есть два выхода:
1) Использовать SSD — не сильно low cost конечно, НО производительность на высоте, хотя тот же Crucial M4 на 64 Гб стоит уже дешевле двух самых маленьких HDD в продаже, правда объем не слишком большой, НО он особо и не нужен, тем кому не хватит 64 Гб и на ARM сервере делать нечего.
2) У камня есть PCI-E — можно использовать для подключения аппаратного рейд SATA/SAS контроллера и подцепить хоть сотню дисков (через SAS экспандеры например), вопрос только насколько это все целесообразно
По поводу ihc.ru и VPS в целом — игрался я с Proxmox тем же — там есть такая прикольная штука — можно отщеплять производительность камня. Точных цифр не помню, но допустим 1 камень = 4 ядра и набирает по оценке проксмокса 1000 попугаев (там не бенчмарк, а просто как-то оно считает вот такую вот производительность в «попугаях», думаю на основании тактовой частоты и кол-ва ядер). Как следствие 1 ядро = 250 попугаев — мы можем указать это в параметрах к виртуалке, но едем дальше — как правило в серверах стоит 2 процессора по 4 ядра (все что выше сильно дороже, все что ниже не выгодно по экономическим причинам, эдакая золотая середина). Получается 8 ядер на систему и если сдавать сервер по «честному» то получиться его нарезать только на 8 виртуалок (если давать честное 1 ядро) что очень и очень нецелесообразно, такой сервер будет отбиваться очень долго. Обычно там гораздо большее кол-во виртуалок.
Ну как-то так)
avatar
1. Один винт, даже SSD — это не очень то хорошо. Если он полетит, то восстанавливаться только из бэкапов. Рэйды же продолжают работать даже при отказах винтов. Для проектов которым нужен отдельный сервер простой — это часто убытки на порядок больше чем стоимость полноценного сервера.

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

С SSD система выглядит намного более привлекательной изменно из-за независимости дисковой подсистемы.

3. 8 виртуалок не так и мало. Одно ядро стоит 550руб в месяц. 8 виртуалок дадут 4400руб в месяц. Сервер стоит 50000руб. Тоесть, он окупается чуть больше чем за год (если учесть трафик и электирчество). Дальше идет чистая прибыль. Естественно, можно делить ядра и дальше. Но у меня, очень похоже, полноценное выделенное ядро.
avatar
Вариант с бэкапом самый жизненный как по мне. просто отдельный сервер на который бэкапятся все остальные.
На счет SSD ещё скорость чтения и произвольного доступа будет гораздо выше чем у хардов, правда скорость чтения упрется в пропускную способность SATA 2
Комментарий отредактирован 2013-09-06 10:46:55 пользователем dimka890
avatar
Я ж говорю, что просто бэкап сейчас мало кого устраивает. Особенно из тех, кому нужен сервер. Бэкап — это крайняя мера и на восстановление нужно потратить довольно много времени. Современные сервера при отказе одного из винтов продолжают работать как ни в чем небывало. Но, ладно, можно и два SSD поставить. Проблема может возникнуть с обслуживанием, тут нужен KVM.

Итого, на борту должны быть: бп, куча нод, свич, дисковый массив как минимум по 2 SSD на ноду, какой-то супервизор, предоставляющий KVM. SSD стоят по 65$/шт, нода, пусть, 100$, супервизор можно сделать как ноду просто немного по-другому. В сумме получится 250$ на ноду. Если их поставить 8 шт, получается 2000$ что больше 50000руб.

Вообщем, по ценам получится как VPS. Правда, теряется масштабируемость VPSов. Теперь неплохо бы взять какой-нибуть одноплатник, подключить к нему два SSD и посмотреть, будет ли это работать быстрее чем VPS.
avatar
Любые сервера продолжат работать при отказе диска, если был собран рейд (зеркало что бы не плясать с бубном)
Что у меня в голове на счет набортного оборудования:
1) Один БП (ну или 2, но это прерогатива дорогих серверов)
2) Пачка нод
3) SSD (1 или 2 на ноду, но если 2 я хз где их размещать, тогда надо брать 2U корпус, но в 2U не интересно делать 8 нод)
4) КВМ не нужен — обычно при необходимости используют внешний, а если и делать то наверное придется городить что-то на ПЛИС
Надо вобщем взять какой-нить одноплатник для тестов)
P.S. смотрю сейчас в колоколе — Intel Q6600, 4GB RAM и хард на 400 гигов — 756 грн/месяц.
Если верить вики — у Intel X6800 производительность в MIPS 27к, у i.mx6q — 12к, грубо говоря в 3 раза меньше, но цена на сдачу в аренду может быть более чем в 3 раза меньше
P.S.S на счет стоимости серверов — 50к рублей = грубо 1500 баксов = это или Б/У старенький сервачек (на паре E5500/E5600 камней) либо например HP DL320e g8 — один проц E3-1230v2, 4Gb памяти и усе, диски нада докупать — сервак стоит 9к, + фирменные HP диски (наверняку нужны фирменные, т.к. салазки обычно продаются вместе с диском) выйдет 10-11к. и этот сервер абсолютно не пригоден для VPS
Комментарий отредактирован 2013-09-06 19:26:23 пользователем dimka890
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.