Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

выбор_платформы_для_домашних_серверов_или_качалок [2015/03/08 06:23] (текущий)
vovka Перенос со старой wiki
Строка 1: Строка 1:
 +Рано или поздно,​ любой более-менее продвинутый пользователь,​ имеющий более одного персонального компьютера (рабочей станции) и доступ в сеть Интернет,​ захочет иметь дома какой-то свой сервер,​ который будет обслуживать локальную домашнюю сеть. Это может быть файловый сервер,​ продвинутый маршрутизатор, ​ торренто-качалка,​ система видеонаблюдения/​сигнализации или "​песочница"​ для экспериментов. В статье предпринята попытка описать критерии к выбору платформы для такого сервера.
 +
 +Если подходить к вопросу серьёзно,​ то в зависимости от поставленной задачи,​ подбирается железо,​ а под него - программное обеспечение;​ и если необходима покупка комплектующих,​ то функционал упирается в бюджет. Но обычно,​ пользователи выбирают для платформы то, что есть в загашниках - старенький системник,​ на котором уже проблематично запустить даже браузер.
 +
 +==== Аспекты выбора ====
 +Если предполагается,​ что машина будет работать круглосуточно,​ тем более в домашних условиях,​ нужно обеспечить низкое энергопотребление,​ низкое тепло- и шумовыделение. Конечно же можно приобрести специализированный компьютер типа NAS (Network Access Server), но стоит это достаточно дорого да и во многом избыточно.  ​
 +[{{GA-E240N_motherboard.png?​250 |Материнская плата Gigabyte GA-E240N}}] ​
 +В качестве железа можно выбрать как современные маломощные решения,​ например Cubieboard, RaspberryPi,​ GigaByte E-240, так и старенькие компьютеры,​ начиная от Intel Celeron или Intel Pentium III (Socket 370). Железа на базе Pentium-I или Pentium-II уже будет маловато,​ да и память на эти материнки уже достаточно редкое явление. Что касается конфигурации на базе Intel Pentium 4 или Intel Celeron (Socket 478), то она уже избыточна по производительности и потребляемой мощности (большое тепловыделение) - лучше приобрести GigaByte E-240. ​
 +
 +Однако,​ если задачей будет создание сервера видеонаблюдения,​ где используются аналоговые камеры и потребуется писать в наилучшем качестве,​ то процессор машины должен "​тянуть"​ процесс кодирования. До какого-то значения соотношения необходимой производительности к цене конфигурации,​ будет выгоднее использовать старенький Pentium-IV или его аналог,​ но после - лучше взять готовый аппаратный видеорегистратор. ​
 +
 +Автор для задачи торренто- и [[Создание aria2-качалки на базе выделенного компьютера|aria2-качалки]] выбрал системник Legend SunChase 3000 6C/433, который иногда использовался как "​песочница"​ для экспериментов. Конфигурация:​ Legend QDI P6I810E, Celeron 433MHz, 256Mb, Seagate 80Gb IDE, VIA PCI-SATA controller. Производительности процессора,​ а также памяти для конфигурации на FreeBSD с "​обезжиренным"​ ядром и 10 торрентах на раздаче на скорости до 60Кбайт/​сек - вполне хватает. Жёсткий диск подключен через IDE PATA-шлейф через PCI SATA-контроллер,​ а встроенный в материнку контроллер отключен. Это даёт небольшой прирост производительности,​ а также возможность подключения жёстких дисков с интерфейсом SATA. 
 +
 +Несколько слов об охлаждении - жёсткие диски лучше располагать так, чтобы шло их естественное охлаждение. Это продлит срок работы дисков. Например,​ диски лучше располагать в отсеках 5,25`` или 3,5`` и открывать крышку в передней панели,​ напротив отсека. Блок питания будет всасывать в корпус воздух через это отверстие и забирать излишки тепла от диска. Расположение 3,5`` дисков в отсеках 5,25`` через переходник даёт два приемущества:​ 1) улучшается естественное охлаждение,​ 2) возможность применить переходники с амортизаторами,​ гасящими вибрации,​ что особенно актуально в случае установки нескольких дисков в один корпус.
 +
 +=== Энергопотребление ===
 +Немаловажно,​ обеспечить домашнему серверу как можно меньшее энергопотребление,​ поскольку эт этого зависят расходы за электроэнергию. Например,​ системник,​ потребляющий 60 ватт энергии,​ за сутки выберет 0,​06*24=1,​44 КВт*часов электроэнергии. За месяц уже выйдет 44 КВт*часов. Помножив полученное значение на стоимость киловатт-часа,​ получим значение месячных расходов. ​
 +
 +Померить потребляемую мощность можно токовыми клещами или приблизительно - просуммировав потребляемые мощности всех устройств в системнике.
 +
 +Способы уменьшения потребляемой мощности:​
 +  * применение нового железа с бОльшим КПД;
 +  * если это файловый сервер и обращения к нему не частые,​ можно установить время, после которого будет отключаться жёсткие диски (останавливаться шпиндели).
 +
 +=== Выбор сетевого (LAN) адаптера ===
 +Как показала практика,​ софтовые сетевые адаптеры (без встроенного полноценного процессора) сильно нагружают центральный процессор ​ компьютера во время линейной передачи. До какого-то значения производительности системы имеет смысл ставить только 10\100 мегабитные адаптеры,​ поскольку процессор не "​раскачивает"​ адаптер выше 100 мегабит. Зависимость производительности и типа адаптера сведена в таблицу: ​
 +
 +^ процессор ^ тип адаптера ^ реальная скорость* ^
 +| //до// Celeron 600 МГц (Socket 370) и Pentium III 600 МГц (Socket 370) | 10\100 мегабит | 7...10 Мбайт в сек. |
 +| Celeron 866 МГц (Socket 370), Рentium III 866 МГц (Socket 370) //и выше// | 10\100\1000 мегабит | > 10  Мбайт в сек. |
 +//​**Прим.**//​ Реальная скорость указана в режиме скачивания с компьютера и зависит от многих факторов.
 +
 +Если железо на уровне Celeron (Socket 370), то нет смысла ставить гигабитный адаптер без встроенного процессора - центральный процессор не сможет обработать поток в гигабит,​ лучше обойтись 100-мегабитным. С уровня Pentium III 700 и выше можно применять гигабитные адаптеры. Скорость передачи на P-III 866МГЦ может составить до 15...25 Мбайт в сек. при 100% загрузке процессора. Вот в материнской плате GigaByte E-240 (E-350) имеется встроенный гигабитный адаптер,​ но там и процессор более производительный.
 +
 +=== Объём памяти ===
 +Основной принцип:​ //чем больше,​ тем лучше//,​ но много зависит от поставленной задачи. Автор запустил домашний сервер при наличии 256 Мбайт (DIMM) памяти. На FreeBSD с "​обезжиренным ядром",​ на 10 торрентах в листе transmission,​ использование памяти выглядит так:
 +<​code>​
 +user@test:~ % freecolor
 +Physical ​ : [#######################​............] 69% (170444/​244128)
 +Swap      : [##################################​.] 99% (3691872/​3701760)
 +</​code> ​
 +
 +Как видно, 74 мегабайта - свободны для приложений,​ а раздел подкачки занят только на 10 мегабайтов.
 +
 +Для старых компьютеров становится всё труднее находить модули памяти. Если DDR-I и DDR-II ещё пока продаются (на момент написания статьи),​ то DIMM-модули можно встретить только на барахолках. В любом случае,​ если сервер работает на стареньком железе,​ в резерве надо держать какие-нибудь комплектующие,​ чтобы, в момент выхода из строя, оперативно заменить и продолжить работу.
 +
 +==== Выбор и установка операционной системы ====
 +Выбор системы во-многом зависит от квалификации пользователя. В идеале подойдёт любой дистрибутив-конструктор типа [[Debian]], [[Slackware]],​ [[Gentoo]] или [[FreeBSD]] без установки графического интерфейса. Также, с небольшими работами по "​обезжириванию"​ - [[Ubuntu]] Server, Edubuntu.
 +
 +При выборе дистрибутива,​ нужно брать во внимание размер оперативной памяти - во многом она будет определять производительность системы и использование свопа.
 +
 +Для установки минимальной версии Debian или FreeBSD потребуется порядка 10Гб от общего пространства диска: ​
 +
 +  * **6** Гб для <color blue>/</​color>​
 +  * **1,5...2** Гб для <color blue>/​var</​color>​
 +  * **500...600** Мбайт для <color blue>​раздела подкачки</​color>​ (указано для объёма памяти в 256Мбайт)
 +  * остальное пространство отдаётся под выделенный раздел для хранилища скачиваемых файлов.
 +
 +Файловая система:​ ext3, ext4 для Linux или нэйтивная для FreeBSD. В зависимости от динамики использования раздела для скаченных файлов,​ по мере работы он будет достаточно сильно фрагментироваться. Поэтому,​ пространство выделяется как отдельный раздел. Для уменьшения фрагментации,​ в программах,​ нужно включать опции по предварительному выделению места под файлы. Если производительность работы дисковой подсистемы значительно упала, значит фрагментация достаточно сильная. В этом случае можно содержимое раздела пофайлово перенести на другой диск, раздел ​ отформатировать и информацию перенести обратно на основной раздел диска.
 +
 +
 +== Смотрите также ==
 +  * [[http://​nix.zeya.org/​forum/​index.php?​topic=347.0|Обсуждение статьи на форуме]]
 +  * [[http://​nix.zeya.org/​forum/​index.php?​topic=335.0| Обзор микрокомпьютеров]]
 +  * [[http://​nix.zeya.org/​forum/​index.php?​topic=56.0| Производительность конфигураций nix-систем]]
  
Печать/экспорт