Назад | Перейти на главную страницу

Можно ли запускать очень легкие сервисы прямо с Raspberry Pi 2?

Если бы компьютеры были намного проще, было бы меньше точек отказа, что, в свою очередь, могло бы улучшить стабильность и упростить обслуживание.

Это заставило меня задуматься - есть ли у небольшой команды из 25 человек опыт работы с некоторыми легковесными сервисами прямо с Raspberry Pi 2? Я думаю о таких вещах, как

  1. IRC серверы
  2. Веб-почта (например, Roundcube)
  3. VPN серверы
  4. DNS серверы
  5. Может, LDAP?

Эти маленькие машины не требуют движущихся частей (и вообще не требуют охлаждения, они могут без проблем работать в герметичном корпусе) и требуют очень небольшой мощности (около 2 Вт). К тому же они очень дешевы - наличие одного числа Пи на услугу вообще не проблема.

Еще несколько причин против я еще не видел.

Единая компания неудач. Я мог бы безболезненно заменить Dell x86 на HP. Я не мог так легко заменить rpi на beaglebone black или другую руку, особенно если я использовал периферийные устройства, отличные от USB. Это не так просто, как «вставьте установочный диск и вперед». Вам нужен план на тот случай, когда они перестанут вносить или поддерживать вашу роль. Встроенные системы не стандартизированы, как совместимые с ПК.

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

Нет поддержки оборудования / ОС. Возникли проблемы с запуском приложения COTS? Проблема с драйвером вызывает сбой? Вы, наверное, сами по себе. Замените компьютер и / или приложение.

ARM архитектура. Если это не FOSS, он, вероятно, здесь не запустится. Для многих принтеров тоже нет капель драйверов.

Память на базе SD / microSD. Попробуйте что-нибудь скомпилировать. Что-нибудь. Принесите книгу. Это довольно большая проблема для любой СУБД даже с низкой / умеренной активностью.


А сейчас нечто соверешнно другое.

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

У вас нетрадиционные требования

  • Вам нужен сервер, который работает только от батарей.
  • Вам нужен одноразовый сервер, который вы не прочь сломать или потерять.
  • Вам нужен (дешевый) сервер, устойчивый к вибрации.
  • Вам нужен легкий сервер.
  • Вам нужен относительно небольшой сервер.

Возможные приложения.

  • Ваш сервер должен слетать. Сам по себе. Он установлен на аэростате, высотном воздушном шаре или БПЛА. Он координируется с вашей ОС Swarm-Drone и предоставляет удобный интерфейс для многопользовательского удаленного управления. Все до 400 футов, если, конечно, не получено разрешение FAA.
  • На самом деле ваш сервер - это городской арт-проект о вездесущности технологий в современной жизни. Он застегивается на молнию и приклеивается к вершине башни с часами, где будет оставаться, пока кто-нибудь не подойдет и не соскоблит его. Пора в любом случае включить NTP в старую башню.
  • Ваша команда слишком буквально воспринимает такие слова, как «гибкость» и «скорость». Ваше представление о схватке - это 15 секунд, которые требуются для создания парашютного парашюта с 8 направлениями, а вы только совершаете ртутное движение при движении со скоростью более 90 миль в час. Просто проще, если сервер движется с той же скоростью.
  • На самом деле ваша компания - это группа кочевников в северной Сахаре, предоставляющая ИТ-решения другим кочевникам. Все должно быть на солнечной энергии и перевозиться на верблюде.

Я бы категорически не стал этого делать.

Хотя мой опыт работы с RPI был связан с ранней моделью, у меня было довольно много установок, которые умирают из-за повреждения SD-карты. Сами карты кажутся нормальными, и у меня он хорошо работал на внешнем жестком диске.

Во-вторых, в таких системах есть определенная степень ложной экономии - вам понадобится хранилище. ох, а может быть, USB-концентратор и ... да.

В-третьих, RPi - это системы на базе ARM. Когда вы их перерастете, вам, по сути, придется переустановить и перенастроить большинство ваших приложений, чтобы перейти на x86.

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

Есть бережливость и правильный размер, и есть глупость.

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

Они немного дороже, но у вас лучшие варианты хранения (SSD или 2,5-дюймовые диски, в зависимости от), больше оперативной памяти (у меня 4 ГБ на моем домашнем сервере) гигабитный порт, который не свисает с микросхемы драйвера USB, изящно обрабатывает перезагрузки ...

Это просто система с гораздо лучшим поведением, чем мой RPi.

Как разработчики / производители сказать: (курсив мой)

Raspberry Pi - это компьютер размером с кредитную карту, который подключается к телевизору и клавиатуре. Это способный маленький компьютер, который можно использовать в проекты электроники, и для многих вещей, которые вы настольный ПК делает, как электронные таблицы, текстовый редактор, просмотр веб-страниц и игры. Он также воспроизводит видео высокой четкости. Мы хотим, чтобы его использовали дети по всему миру, чтобы изучать программирование.

Raspberry PI - это не разработан быть сервером который надежно работает 24/7.

Конечно, вы не всегда обязательно нужно запускать операции с специально разработанным оборудованием, но в бизнес-среде, в (всегда спорное) TCO расчет марки, что стоимость оборудования закупок по-прежнему только незначительная часть за счет и часто только рассмотрение несовершеннолетнего. Даже получасовая потеря производительности для офиса из 25 человек или пара часов, когда вы возитесь с наемным системным администратором, быстро складываются ...

В небольшом офисе ряд легких сервисов часто уже перенесен на другие устройства, маршрутизатор уже будет поддерживать ряд связанных сервисов (например, межсетевой экран, DHCP, DNS, VPN), многофункциональный принтер уже будет работать с собственный диспетчер очереди печати, поддержка беспроводной печати и множество других функций.

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

Если бы компьютеры были намного проще, было бы меньше точек отказа, что, в свою очередь, могло бы улучшить стабильность и упростить обслуживание.

Может и так, но ...

  • rPis не проще; это стандартные компьютеры ARM, работающие под управлением Linux. Тот факт, что у них нет вентилятора или чего-то подобного, не делает их значительно проще с точки зрения обслуживания или точек отказа. Хорошо, у них не будет сбоя жесткого диска, но у них все еще может быть сбой источника питания, сбой материнской платы, ошибки памяти, ошибки программного обеспечения, человеческие ошибки ...

  • Ты говоришь "нет движущихся частей"; если машина состоит из 10 частей, а новая конструкция состоит из 4 частей, это проще. Если вы переключите жесткий диск на многоуровневую флеш-память (MLC), станет ли это проще? Когда работает MLC-вспышка, электрический заряд проталкивается внутрь и из ячеек, и физический барьер удерживает его там в одном из нескольких состояний. Один из режимов отказа - это когда барьер разрушается и больше не может четко удерживать несколько уровней. Что значит сказать «нет движущихся частей», когда движущимися частями являются электроны, а части, которые работают с ними, могут физически сломаться?

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

  • «Сбой» не всегда вызывает беспокойство, это последствия сбоя и восстановление после сбоя, которые вызывают проблемы - и в rPis нет ОЗУ с коррекцией ошибок, нет хранилища RAID, нет плат IPMI, которые помогут вам диагностировать и устранять неполадки. Вы говорите: «проще - значит меньше точек отказа», но тогда почему мы используем контрольные суммы и коды аутентификации сообщений, деревья Меркла, чередование данных и избыточность, TCP вместо UDP и так далее? Они более сложные, поэтому более подвержены сбоям ... кроме того, что в целом они добавляют больше защиты от сбоев, чем сбой, не так ли? Восстановление из Cryptolocker - большая проблема, или это может привести к краху компании. Но сложность «наличия резервной копии» делает восстановление возможным и даже простым.

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

  • Вы все еще собираетесь ставить их на ИБП? За запертой дверью, чтобы защитить их от взлома? Застрахован от кражи? Резервное копирование? Настраивается / обслуживается оплачиваемыми сотрудниками? Вы по-прежнему экономите, но затраты увеличиваются.

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

Десять RP обойдутся вам в 200 долларов? Традиционный сервер x86 для использования в качестве хоста виртуальной машины, с двумя блоками питания с горячей заменой, двумя процессорами Xeon, 128 ГБ ОЗУ ECC, 10 КБ SAS RAID с 10 дисками, даже с лицензией на Windows Datacenter, вы говорите 15000 долларов - нет -мозговой, не так ли?

Компания из 25 человек будет тратить 32000 долларов в месяц на заработную плату, исходя из минимальной почасовой оплаты труда 8 долларов, не считая накладных расходов сотрудников. Фактические расходы будут намного выше, включая офисные помещения, компьютеры, телефоны, страховку, здравоохранение и любые другие выплаты сотрудникам. Некоторые сотрудники будут зарабатывать гораздо больше.

Ваши сбережения позволят вашей компании работать еще ... неделю?

Вероятно, вы могли бы создать избыточный массив недорогих компьютеров - концепция разумная, Google - большой пример использования избыточности программного обеспечения для создания надежных сервисов на стандартном аппаратном обеспечении ПК - но в случае rPis, разве они не были бы лучше? поместиться в компанию, где один или два человека работают из дома и финансируются с помощью кредитной карты, а не в компанию из двадцати пяти человек?

Короткий ответ:

Может быть.

Длинный ответ:

Плюсы:

  • Маленькое, низкопрофильное устройство, без серверов в 19-дюймовую стойку или больших башен.
  • Никаких движущихся частей!
  • Низкое потребление энергии.
  • Доступ к оборудованию легко защищается, подойдет небольшое хранилище или металлический ящик с замком.
  • Без звука (S молчит, как и RPI).
  • Дешево.

Минусы:

  • Кабель питания можно легко выдернуть случайно.
  • Надежность хранения, в качестве системного диска используется sdcard.
  • RPi модели B и другие не поставляются с корпусом, а доступные корпуса часто сделаны из пластика.
  • Это для любителей, а не для системных администраторов.
  • Некоторым может понравиться x86 или x64 вместо ARM.
  • ОЗУ и порт LAN не масштабируются, нет слотов расширения, кроме GPIO.
  • Не совсем молниеносно.
  • Часто нужен USB-концентратор.

Мой опыт:

Три года назад мне на день рождения подарили RPi модель B. Я сначала поэкспериментировал с этим, несколько раз ломая ОС. Через некоторое время я решил, что нужно сделать с ним что-нибудь полезное, наткнулся на Коди (бывший XBMC), и я начал использовать его для мультимедийных целей, например IceFilms (ссылка не работает, зеркало, содержащее ледяные пленки) для потоковой передачи фильмов и сериалов (без оплаты или учетной записи, технически это пиратство).

Буквально сломав свою первую SD-карту, я начал использовать BerryBoot (меню загрузки, которое можно установить из Интернета на usb и позволяет загружаться с usb). Несколько месяцев спустя мой пи приземлился в ящик. Получил я его около года назад, когда мне понадобился дешевый домашний сервер. Сейчас он работает с той же настройкой, что и год назад.

Я бы охарактеризовал это как относительно надежное, учитывая его ситуацию.

Моя установка:

  • Одна модель RPi B.
  • Один полупрозрачный пластиковый корпус
  • Один MicroSD 8 ГБ в адаптере MicroSD> SD (во избежание поломки запоминающего устройства).
  • ОС: Debian.
  • Больше никаких berryboot.
  • Кабель micro-usb подключен к маршрутизатору (теперь я могу удаленно включить и выключить маршрутизатор и Pi, используя панель маршрутизатора через соединение pptp).
  • Кабель Ethernet подключен к маршрутизатору.
  • 120/12 wan подключение к роутеру.
  • Нет USB-устройств.
  • Текущие услуги:
    • sshd
    • php
    • mysqld
    • Apache
    • tightvncserver
    • pptp vpn сервер

снимок экрана htop:

Мой совет:

Вы можете запустить некоторые серверы, такие как те, что я упомянул, но вы не должны использовать Raspberry Pi для управления дверными замками или другими важными вещами, поскольку он предназначен для хобби, а не для надежных серверов.

Кроме того, он будет нормально работать при умеренной нагрузке. Вы сможете запускать irc, vpn и веб-почту. Но если вы собираетесь запускать DNS, вы можете установить вторичный DNS на случай, если Pi выйдет из строя.

Я бы порекомендовал использовать berryboot, чтобы ОС и данные были на USB или USB-жестком диске, поэтому, когда ваша SD-карта выходит из строя, вы можете просто вставить резервную копию berryboot sd, и она загрузится со всеми данными, оставшимися нетронутыми.

Выбор за вами

Помимо других причин, упомянутых здесь в ответах, не была упомянута важная причина: безопасность.

Если он подключен к глобальной сети, вам не следует запускать его без регулярных обновлений программного обеспечения, SELinux, регулярных обновлений ядра и т. Д. Поскольку Raspberry Pi 2 просто загружает все, что находится в /boot/initrd7.img, наличие нескольких версий ядра - нетривиальная задача. GRUB или другой загрузчик позволят вам иметь несколько версий ядра, давая вам возможность загрузить другое ядро, если обновление пошло не так.

Большинство дистрибутивов, которые могут работать на RPi2, были доказательством концепций, а не дистрибутивами, ориентированными на то, чтобы быть серверами, доступными 24/7.

Для домашнего использования - конечно, я запускаю IMAP-сервер на RPi2 + Raspbian, этого достаточно для моего личного использования.

Для коммерческого использования - учитывая количество простоев, которые у меня были дома, это не шанс!

Конечно, это возможно. Очевидно, это будет зависеть от нагрузки, вызванной указанными сервисами. Сервис Roundcube немного сложен, потому что вам понадобится веб-сервер + php + sql. Если вы спланируете это тщательно (возможно, используйте Lighttpd и SQLite из-за их меньшего объема), это может сработать.

Есть даже компании, предлагающие размещение RaspberryPi за несколько долларов в месяц.

Краткий ответ: да, но с оговорками. Сейчас у меня около 8 Pi (e), на каждом из которых работает 1 или 2 базовых сервера, как вы упомянули. При тщательном выборе программного обеспечения вы сможете запускать IRC, XMPP, веб (Nginx), почту (Postfix + Dovecot), прокси-сервер Tor, а также я использую сервер Gopher. У меня также есть еще один Pi2 в профессиональном алюминиевом корпусе с Arch, поскольку настольный компьютер работает на удивление хорошо (см. как я это сделал - PDF Я особенно горжусь почтовым сервером, который поддерживает около 12 пользователей и ежедневно обрабатывает несколько сотен электронных писем.

Теперь о «оговорках». Вы явно не сможете поддержать лоты пользователей или всего, что требует высокой пропускной способности из-за ограничения сети 100 Мбит / с. «B» довольно слабый, но все равно будет работать, хотя модель 2 была бы лучше. Недавно я заменил Pi на Odroid XU4, так как веб-сервер был немного вялым, а у него больше памяти и гигабитный порт Ethernet.

В целом, Pi представляет собой идеальный способ опробовать программное обеспечение, будучи уверенным, что если что-то сломается, вы не потеряете все.

Вы можете сделать RPi прочной, если вы намереваетесь это сделать.

OTOH, текущие модели всегда будут медленными.

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