GuruPlug: сервер в кармане

для раздела Блоги
Написать данный блог меня сподвигло недавнее приобретение моим другом весьма интересного и необычного устройства под названием GuruPlug. Перед тем, как перейти непосредственно к описанию устройства, хочется сказать, что друг – системный администратор со стажем, давний сторонник свободного ПО, а также любитель отыскать и заморочиться «чем-нибудь этаким», о чем большинство людей (даже компьютерщиков) в лучшем случае слышали только краем уха. Вот и на сей раз, раскопав на просторах Интернета информацию про нижеописываемый девайс, он загорелся идеей приобрести его и внедрить в свою домашнюю компьютерную систему. Дальнейшее повествование, как мне кажется, будет уместно вести от первого лица.

Началось все, можно сказать, достаточно обыденно. На одном из порталов Интернета, куда меня забросила судьба, я обнаружил описание достаточно необычного представителя серверно-роутерного класса, а именно – устройство GuruPlug производства американской компании GlobalScale. Заинтересовало оно меня, в первую очередь, своими маленькими размерами, но, несмотря на размеры – приличным функционалом, основанным на встроенной операционной системе Linux Debian, а также наличием нескольких необходимых мне портов (особенно было критично наличие 2-х портов Ethernet и порта eSATA). Вообще я уже давно подумывал приобрести нечто более современное на смену своему Pentium-100, играющему роль домашнего сервера – нечто такое, что обладало бы необходимым мне функционалом, по возможности занимало немного места, не шумело, и вообще было удобным и незаметным. Так и получилось, что, наткнувшись на описание Guruplug и внимательно его изучив, я принял решение заказать его через Интернет (поскольку фирма-производитель имеет «прописку» в США, а местных представителей или компаний, с которыми было бы удобнее работать, быстрым поиском не обнаружилось). Пришлось обращаться напрямую к производителю, заполнять на его сайте форму заказа и ждать отправки. Заказ я сделал 13 мая. При этом было четко указано, что отправка будет осуществлена не ранее, чем через 4 недели с момента заказа, поскольку у них был предзаказ. Далее, в начале июля на сайте производителя была опубликована информация о том, что поставки отложены в связи с обнаружением проблемы перегрева и попыткой его решить. В сентябре появилась информация о том, что выявленные проблемы устранены, и отгрузка заказанных устройств (в том числе и моего) продолжается. Наконец, в первых числах ноября я стал счастливым обладателем долгожданного устройства.

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

Итак, рассмотрим поближе устройство и некоторые его характеристики.


(кликните по картинке для увеличения)

фото GuruPlug



(кликните по картинке для увеличения)

фото GuruPlug2

GuruPlug представляет собой небольшую коробочку (95х65х48.5 мм), внутри которой установлена начинка – плата с полностью распаянной системой (процессор, оперативная память, NAND-память, порты ввода-вывода). Такие устройства называются System-on-Chip (SoC) и представляют собой электронную микросхему, выполняющую функции, обычно присущие гораздо более крупным и «внушающим доверие» устройствам – например, компьютерам, сложным блокам контроля и т.д.
Не вдаваясь глубоко в подробности, здесь можно отметить, что системы-на-кристалле потребляют меньше энергии, стоят дешевле и работают надёжнее, чем наборы микросхем с той же функциональностью. Меньшее количество корпусов упрощает монтаж. Тем не менее, создание одной слишком большой и сложной системы на кристалле может оказаться более дорогим процессом, чем серии из маленьких из-за сложности разработки и отладки и снижения процента выхода годных изделий.

Процессор, распаянный на данной плате, является представителем устройств, основанных на ARM-архитектуре. Производитель «сердца» данного «сервера» - компания Marwell, признанный лидер в разработке подобных устройств. В моем случае основной кристалл принадлежит к семейству Marvell Kirkwood 6281, имеет тактовую частоту 1,2Ghz, кэш L1 32Kb (из них 16Kb отведено под инструкции и еще 16kb – под данные), а также кэш L2 размером 256Kb. Данный чип аппаратно поддерживает основные алгоритмы шифрования (AES, DES и 3DES) и аутентификации (SHA1 и MD5).

Подсистема памяти состоит из ОЗУ 512Mb DDR2 800MHz с шириной шины 16 bit и основанной на чипе Samsung памяти NAND FLASH объемом также 512Mb, управляемой 8-битным контроллером.

Хочется отметить широкий спектр возможностей GuruPlug в плане подключения различных устройств и носителей данных посредством нескольких распространенных интерфейсов, а именно:
•2 порта Gigabit Ethernet;
•1 порт eSATA 3 Gb/s SATA2;
•2 порта USB 2.0;
•MicroSD слот;
•WiFi 802.11 b/g;
•BlueTooth 2.1 / EDR.

Из спецификаций можно понять, что данное устройство представляет собой мини-сервер с широкими возможностями настройки, обмена данными, большим спектром назначаемых ролей (например, файл-сервер, прокси-сервер, принт-сервер, DNS, DHCP, торрентокачалка). При энергопотреблении устройства не более 20Вт (потребление процессора всего лишь 5Вт) и минимальных размерах – это очень привлекательное и достаточно необычное устройство.
За то время, пока заказ добирался до меня, вышло несколько материалов, посвященных описанию самого устройства, а также кое-каких нюансов его работы от людей, уже успевших его приобрести. Почитать можно, например, здесь. Несмотря на достаточно негативный характер отзыва, отказываться от новой интересной игрушки не хотелось. Поэтому я просто взял на вооружение те моменты, которые были описаны, с целью сразу же после получения проверить их и, если информация подтвердится – принять соответствующие меры.

Как только у меня появилось свободное время для «ковыряния» своей покупки – первым делом я решил заняться программной начинкой устройства, а также последить за его температурными и шумовыми показателями во время работы. Сходу выяснилось, что в прошивке, поставляемой с сервером, отсутствует элементарная «читалка» less, зато гений разработчиков зачем-то вставил внутрь MySQL. Не очень было понятно, чем руководствовались создатели, размещая серверное ПО управления базами данных – ведь можно было обойтись гораздо более адекватными инструментами вроде bdb или sqlite… Ну да ладно, флаг им в руки и электричку навстречу, как говорится. При ближайшем рассмотрении оказалось, что текущая версия загрузчика не была последней и не умела грузить ядро с ext2 раздела, а держать FAT мне совсем не хотелось. Некоторое время поэкспериментировав, я научил свой новый «сервер» грузиться не только из встроенной в NAND прошивки, но также и с карточки MicroSD, что давало мне возможность не ограничиваться встроенным объемом памяти (хотя разработчики заняли под дефолтную систему всего около 230 Мб). Подключить к «серверу» винчестер сразу же не получилось, поскольку кабель eSATA в комплекте отсутствовал, и ни в одном магазине быстро найти его не получилось. Поэтому первоначальные эксперименты проводились с установкой системы Debian Squeeze на SD карточку в 4ГБ. После первых экспериментов по обновлению программы загрузчика пришлось "протестировать" и систему восстановления встроенного ПО в случае его отказа – на этот случай в GuruPlug’е имеется возможность подключения к JTAG, что особенно удобно для людей, обожающих эксперименты. В основной комплект поставки устройство JTAG не входит, поэтому его пришлось заказывать дополнительно – хотя и одной посылкой, что, естественно увеличило стоимость покупки. Вообще, весь комплект обошелся мне более 200$, из которых сам GuruPlug стоит 133$, еще 39$ - это стоимость JTAG и, наконец, 40$ - стоимость доставки из США в Россию.

Что же до температурно-шумовых показателей… Информация от других пользователей подтвердилась. Конкретно же – вентилятор действительно расположен так, что ему физически крайне затруднительно охлаждать нагревающиеся элементы «сервера», хотя он и пытается. Шум при этом достаточно заметен – к примеру, уснуть в комнате с работающим сервером было бы достаточно затруднительно. Попытки уменьшить шум посредством смазки положительного результата не дали. Посему вентилятор сразу же был удален из девайса. Проверка температурного режима «пальцевым методом» показала, что «на ощупь» процессор и память достаточно горячие. Систему охлаждения я решил сделать сам на базе радиатора с кулером от старой видеокарты. На данный момент это не является первостепенной проблемой, поэтому «сервер» просто работает при снятой крышке.



(кликните по картинке для увеличения)

GuruPlug открытый



(кликните по картинке для увеличения)

GuruPlug открытый2



(кликните по картинке для увеличения)

GuruPlug с радиатором

Следующим шагом, необходимым для ввода в эксплуатацию моего приобретения стала необходимость покупки бокса для HDD, который обладал бы интерфейсом eSATA, мог обеспечивать охлаждение жесткого диска и выглядел достаточно стильно. После занявших некоторое время консультаций с друзьями, а также оценки доступных для заказа представителей этого класса – мой выбор остановился на Thermaltake Vi-ON <ST0008> Black.


(кликните по картинке для увеличения)

HDD Box

Почему он? Потому что в нем присутствует вентилятор (а винчестер хотя и «зеленый» WD, но, думаю, дополнительное охлаждение никогда лишним не будет). Сначала была мысль приобрести корпус из алюминия, но среди доступных для заказа моделей мне ничего толком не приглянулось. К тому же брэнд ThermalTake все еще позволяет надеяться на приобретение качественного продукта. Немаловажным фактором также стало наличие в данной модели eSATA-интерфейса со шлейфом в комплекте – поскольку отдельно шлейф я обнаружить в продаже не смог. Ну и наконец, просто понравился внешний вид – стильный, черного цвета, отличная эргономика и так далее.
Подключив к своему новому «серверу» винчестер в новом же боксе – первым делом решил проверить, правильно ли винчестер определился и с какими настройками работает eSATA:
цитата:
Nov 18 22:18:16 mars kernel: [51515.773158] ata1.00: status: { DRDY }
Nov 18 22:18:16 mars kernel: [51515.776847] ata1: hard resetting link
Nov 18 22:18:17 mars kernel: [51516.639766] ata1: SATA link up 1.5 Gbps (SStatus
113 SControl F310)
Nov 18 22:18:17 mars kernel: [51516.719847] ata1.00: configured for UDMA/133
Nov 18 22:18:17 mars kernel: [51516.724165] ata1: EH complete
Nov 18 22:21:16 mars kernel: [51695.982041] ata1.00: limiting speed to UDMA/100:
PIO4

В процессе тестов нового сервера выяснилось, что после определенного времени работы он «падает» в режим UDMA33.
Как я понял, в текущей версии ядра были сделаны неправильные таймауты в модуле SATA, и из-за этого драйвер считает, что контроллер не может работать в режиме UDMA133, поэтому он и понижает скорости. К этому моменту уже эксперименты шли не на «родном» ядре, которое шло с завода, а на собранном и залитом мной. Возможно, этой проблемы не было бы в изначальной версии. Как мне кажется, обновление ядра Debian с текущей версии 2.6.32 до версии 2.6.36 должно исправить ситуацию, поскольку в описании обновлений было указано, в том числе о доработке этой части. Так что надо, наверное, обновиться.
Пока же до этого руки не дошли – я решил просто потестировать скорости чтения локально и по сети:
локальное чтение
цитата:
mars% dd if=/mnt/sd1/cinema/Voennye.igry.2.2008.DVDRip.INTERLIVE.mkv of=/dev/null bs=4k
357671+1 записей считано
357671+1 записей написано
скопировано 1465023040 байт (1,5 GB), 17,8938 c, 81,9 MB/c

копирование по сети
цитата:
dd if=/mnt/net/mars/storage/cinema/Voennye.igry.2.2008.DVDRip.INTERLIVE.mkv of=/dev/null bs=4k
357671+1 записей считано
357671+1 записей написано
скопировано 1465023040 байт (1,5 GB), 124,962 c, 11,7 MB/c


При просмотре фильма по сети выяснилось, что загрузка ARM-процессора минимальна – как следствие и проблемы нагрева беспокоить не должны:
цитата:
top - 18:03:25 up 2:43, 1 user, load average: 0.05, 0.46, 0.30
Cpu(s): 0.3%us, 0.7%sy, 0.0%ni, 98.7%id, 0.3%wa, 0.0%hi, 0.0%si, 0.0%st

На записи оно греется меньше, чем на чтении. Видимо, это связано с меньшим объемом информации, прокачиваемым через процессор и память. Осталось выяснить, как оно греется на торрентах.
Вышеприведенные результаты показывают, что сеть стабильно работает на скорости 100 Mb/s. Для связи между «сервером» и основным компьютером я использовал протокол NFS.

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

Текст полностью согласован с хозяином описываемого устройства, пережил несколько правок под его руководством в целях популяризации и наибольшего соответствия реальности.
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают