Linux сервер за час

Как купить Linux VPS сервер

Рано или поздно у тех, кто связан с деятельностью в интернете возникает потребность в своём сервере, перенести развитой сайт на более производительную площадку (или просто 1C-Bitrix запустить), запустить свой интернет-сервис, игровой сервер с Counter-Strike или внеочередной RPG. Да мало ли этих целей в современном вебе.

Вот и у меня недавно возникла потребность в переходе с моего древного shared хостинга на что-то более быстрое и функциональное. Держать домашний сервер я утомился и решил, что можно остановиться на VPS (Virtual Private Server) сервере, как вполне доступном и удобном решении моих задач.

Задачи на сейчас – совместная разработка (и обучение) на RoR и перенос пары клиентов с их сайтами на одну площадку, для удобства управления. Столкнувшись со сложностями в выборе (VPS нынче многие дают) решил, что может быть мой опыт сэкономит кому то время или подскажет критерий и метод оценки.

Приступим.

Выбирая VPS нас интересует, в первую очередь, его производительность и цена.

В данной статье я попытаюсь найти средние показатели производительности для Linux VPS серверов. Для этого проведу тестирование виртуальных серверов семи провайдеров. Каждый из тестируемых VPS имел средний тариф с параметрами: 2 ядра процессора и 2Гб оперативной памяти.

Цель поста – определение средних показателей производительности для рынка Linux VPS серверов в категории средней производительности.

Тестируем ОЗУ, ЦПУ и диск с помощью пакета phoronix-test-suite

apt-get install php5-cli php5-gd

dpkg –i phoronix-test-suite_5.0.1_all.deb

или альтернативный вариант:

apt-get install php5-cli php5-gd

apt-get install phoronix-test-suite

Список всех доступных тестов:

pts/iozone – диск – чтение/запись блоками по 4кб, файл 512Мб

phoronix-test-suite run pts/iozone pts/compress-gzip pts/ramspeed

Тестируем канал:

Установка SpeedTest:

wget raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py

chmod a+rx speedtest_cli.py

mv speedtest_cli.py /usr/local/bin/speedtest-cli

chown root:root /usr/local/bin/speedtest-cli

Если нужно выбрать другой сервер то смотрим номер сервера:

speedtest-cli —list |more

speedtest-cli —server 4718 (4718 номер сервера, в данном случае это Beeline (Moscow, Russia))

Результаты тестов:


Провайдер vpsville.ru

Тариф village, цена 699 р. (

20$), диск 50Гб, RAM 2Гб, процессор – 2 ядра, трафик – безлимитный, локация – Россия, Москва

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 2625.46 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 116.80 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 32.32 Seconds

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 8842.28 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 8832.56 MB/s

Сеть:
Download: 93.82 Mbits/s
Upload: 82.73 Mbits/s
Share results:


Провайдер flops.ru

Тариф Облачный 2048, цена 1000 р. (

29$), диск 64Гб, RAM 2Гб, процессор – 2 ядра, Трафик – 90Гб в сутки, локация – Россия, Москва

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 3984.85 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 132.83 MB/s

Читайте также:  Включение ntfs mac os

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 15409.53 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 15110.79 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 25.07 Seconds

Сеть:
Download: 50.66 Mbits/s
Upload: 31.68 Mbits/s
Share results:


Провайдер timeweb.ru

59$), диск 5Гб, RAM 2Гб, процессор – 4 ядра, трафик – безлимитный, канал – 10Мбит/с., локация – Россия, Санкт-Петербург

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 58.60 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 20.97 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 80.27 Seconds

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 16073.60 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 15958.42 MB/s

Сеть:
Download: 21.24 Mbits/s
Upload: 13.13 Mbits/s
Share results:


Провайдер selectel.ru

Тариф 2048 р., VDS-2048: CPU — 2048MHz, RAM — 2048Mb, HDD — 204,8Gb, трафик – безлимитный, локация – Москва.

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 2229.47 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 261.52 MB/s

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 9062.74 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 10525.11 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 23.73 Seconds

Сеть:
Download: 10.35 Mbits/s
Upload: 19.12 Mbits/s
Share results:


Провайдер digitalocean.com

Тариф 20$, ОЗУ 2Гб, Процессор 2 ядра, Диск 40Гб SSD, Трафик – 3Тб в месяц, локация – New-York

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 2412.61 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 181.50 MB/s

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 17077.31 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 15088.17 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 19.71 Seconds

Сеть:
Download: 26.40 Mbits/s
Upload: 20.49 Mbits/s
Share results:


Провайдер Hetzner.com

Тариф VQ19 – 19,90 Евро (

27$), ОЗУ – 2Гб, Процессор 1 ядро, Диск 80 Гб, Трафик – 4Тб на скорости 100Мбит (свыше канал ограничивается 10Мбит).

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 57.29 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 7218.04 MB/s

Процессор:
pts/compress-gzip-1.1.0
Average: 30.46 Seconds

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 10457.82 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 10536.78 MB/s

Сеть:
Download: 302.74 Mbits/s
Upload: 165.33 Mbits/s
Share results:


Провайдер 1Gb.ru

34$), ОЗУ 2Гб, процессор 2 ядра, диск 60 Гб, Трафик – безлимитный, локация – Москва

Диск:
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Read Performance]
Average: 2057.24 MB/s
pts/iozone-1.8.0 [Record Size: 4Kb — File Size: 512MB — Disk Test: Write Performance]
Average: 21.23 MB/s

ОЗУ:
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Integer]
Average: 14828.04 MB/s
pts/ramspeed-1.4.0 [Type: Average — Benchmark: Floating Point]
Average: 12659.67 MB/s

Читайте также:  Установка windows 10 с айфона

Процессор:
pts/compress-gzip-1.1.0
Average: 24.91 Seconds

Сеть:
Download: 67.37 Mbits/s
Upload: 10.87 Mbits/s
Share results:

Сводные таблицы тестирования vps серверов

Чтение и запись дисковых систем

Тесты оперативной памяти

Производительность процессора виртуального сервера

Тесты скорости сетевого соединения linux vps серверов

Из-за Hetzner картина получилась немного смазанной 🙂

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

Итого:

Для подведения итога все графики были сделаны разноцветными.
Зеленый цвет – параметр выше среднего (последний столбец — Average)
Красный цвет – соответственно ниже среднего.

Шесть раз зажигал зеленый цвет провайдер flops.ru
Пять раз – vpsville.ru, digitalocean.com, Hetzner.com
Три – 1Gb.ru
Два – timeweb.ru и selectel.ru

Этот итог, как и все выше изложенное не претендует на 100% объективность, так как при выборе сервера кому то важна скорость дисков, а кто-то обращает внимание на процессор. Для кого-то основной фактор это цена…

Всем удачи в выборе хостера и стабильных пингов 🙂

Источник

Домашний linux сервер своими руками

Хочется поделиться с хабросооществом информацией о том как я собирал домашний сервер.

Из софта на домашнем сервере будет «крутиться» следующий набор:

  • torrent клиент с web-мордой
  • DHCP — раздаем ip адреса и сетевые настройки
  • TFTP — для сетевой загрузки
  • OpenVPN — для хождения в сеть с нетбука из недоверенных сетей
  • FTP/Samba/NFS — сетевые шары для доступа с домашних машин
  • Radius — для WPA2 авторизации
  • DigiTemp — мониторинг домашней температуры

Аппаратная часть

При выборе аппаратной части, вариантов было несколько:

  • старенький комп
  • самосбор на базе mini-ITX
  • тонкий клиент HP T5000
  • тонкий клиент на базе Neoware CA2

Первый вариант был сразу же отброшен из-за шума, пыли и энергопотребления. Второй был заказан, пока шли комплектующие, я успел передумать (захотелось шум и энергопотребление свести до минимума). В итоге, на Ebay были куплены тонкие клиенты HP t5000 и Neoware CA2. Месяц спустя пришли тонкие клиенты и из двух, после долгих размышлений, был выбран Neoware CA2. В него идеально поместился 2.5′ HDD и вторая сетевая карта.

После допиливания, в буквальном смысле, Neoware CA2 я принялся ставить на него Ubuntu 9.10 с офисного TFTP сервера. Установку производил самую минимальную. Если бы не было набора для сетевой установки, ставил бы Debian с USB CD-ROM и netinstall диска. Сам я ярый фанат RHEL/CentOS, но на домашний сервер решил ставить что-то из debian семейства, для расширения кругозора.

Torrent клиент и вебморда

Теперь перейдем к установке torrent клиента и вебморды. Была выбрана связка rtorrent + rutorrent, установка из репозитариев была отметена сразу, т.к. «родной» пакет был собран без xmlrpc-c который расширяет функционал rutorrent. Ниже фактически, скрипт для авто-установки rtorrent+rutorrent+lighttpd+php.

Устанавливаем всё что необходимо для компиляции xmlrpc-c, libtorrent, rtorrent
apt-get install checkinstall subversion build-essential make autoconf autotools-dev automake libtool libcurl4-openssl-dev libsigc++-2.0-dev pkg-config libncurses5-dev
apt-get remove rtorrent libtorrent11 libxmlrpc-c3 libxmlrpc-c3-dev libxmlrpc-core-c3 libxmlrpc-core-c3-dev

Компилируем и «заворачиваем» в .deb пакет xmlrpc-c, libtorrent, rtorrent
svn co xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c
cd xmlrpc-c
./configure —prefix=/usr && make && checkinstall -D

Читайте также:  Способы загрузки приложения windows

cd ..
wget libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
tar zxfv libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
rm -f scripts/.m4 # для Debian
./autogen.sh && ./configure —prefix=/usr && make && checkinstall -D

cd ..
wget libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz
tar zxfv rtorrent-0.8.6.tar.gz
cd rtorrent-0.8.6
rm -f scripts/.m4 # для Debian
./autogen.sh && ./configure —with-xmlrpc-c —prefix=/usr && make && checkinstall -D

К сожалению, rtorrent не умеет работать в режиме daemon, по этому будем использовать screen
apt-get install screen -y
wget libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh —output-document=/etc/init.d/rtorrent
chmod +x /etc/init.d/rtorrent
sed -i ‘s/»user»/»torrents»/’ /etc/init.d/rtorrent
update-rc.d rtorrent defaults
useradd -d /torrents -m torrents

Создаем конфиг и папки для сессий и готовых торрент закачек, после чего стартуем rtorrent.
mkdir /torrents/.rtorrent_session
cat >> /torrents/.rtorrent.rc

Теперь займемся вебмордой rutorrent. Для работы rutorrent необходим вебсервер и интерпретатор php.
apt-get install lighttpd php5-cgi php5-cli php5-curl curl -y
lighty-enable-mod fastcgi
echo ‘server.modules += ( «mod_scgi» )’ >> /etc/lighttpd/lighttpd.conf
cat >> /etc/lighttpd/lighttpd.conf
( «127.0.0.1» =>
(
«host» => «127.0.0.1»,
«port» => 5000,
«check-local» => «disable»
)
)
)
EOF
/etc/init.d/lighttpd force-reload

Вебсервер готов, теперь будем ставить rutorrent и несколько полезных плагинов к нему.
cd /var/www/
svn checkout rutorrent.googlecode.com/svn/trunk/rutorrent
cd /var/www/rutorrent/plugins/
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/tracklabels
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/cookies
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/autotools
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/erasedata
chown -R www-data:www-data /var/www/

Теперь можно заходить по server_ip/rutorrent и начинать пользоваться.

Теперь установим DHCP сервер и создадим для него конфиг таким образом чтобы клиенты получали:
router 192.168.1.1
dns сервер 8.8.8.8
сервер времени time.nist.gov
tftp сервер 192.168.1.1
и для примера фиксированная выдача 192.168.1.100 клиенту с MAC-адресом 00:1B:FC:33:F0:25
aptitude install dhcp3-server
cat >> /etc/dhcp3/dhcpd.conf
строчки с option-150 нужны для моего VoIP телефона Cisco 7940.

TFTP и сетевая установка

aptitude install xinetd atftpd atftp

cat >> /etc/xinetd.d/tftp
Теперь проверим, работает ли tftp сервер
root@dvr:

# echo bla > /tftpboot/123
root@dvr:

# atftp 127.0.0.1
tftp> get 123
tftp>
root@dvr:

# cat 123
bla

Всё нормально, теперь создадим netinstall наборы для нескольких ОС: Ubuntu karmic, Ubuntu lucid, Debian lenny, Debian sid, Debian squeeze, Fedora 13, CentOS 5.5, Mandriva 2010.0, Suse 11.2, Slackware 13.1, Hardware Detection Tool, memtest и MHDD. Для этого предлагаю использовать слегка модифицированный скрипт который я взял с HowtoForge.
apt-get install lftp -y

wget itblog.su/tftpboot_installs.sh
bash tftpboot_installs.sh

Теперь добавим SystemRescueCd в PXE меню
wget «http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/1.6.3/systemrescuecd-x86-1.6.3.iso?use_mirror=citylan»
mount -o loop systemrescuecd-x86-1.6.1.iso /mnt/
cp /mnt/sysrcd.* /var/www/
cp /mnt/isolinux/initram.igz /tftpboot/
cp /mnt/isolinux/rescuecd /tftpboot/

cat >> /tftpboot/pxelinux.cfg/default
Без особого труда в это меню можно добавить продукты Acronis, инсталляцию и запуск Windows XP и прочее.

Вот так будет выглядеть наше меню:

Продолжение в следующей части. А именно:

  • OpenVPN сервер для «хождения» в сеть из не доверенных сетей (например из гостиницы)
  • FTP/Samba/NFS сетевые шары
  • Radius для авторизации wi-fi клиентов
  • DigiTemp зачатки умного дома, мониторинг температуры в квартире и за окном
  • festival — говорящий будильник
  • бакапы с хостинга

и подытожит статью скрипт который всё это установит в «два клика».

С удовольствием выслушаю замечания и дополнения.

Источник

Оцените статью