а что это вы тут делаете,а? (original) (raw)

От теории к практике

Для начала важно понять, что мир изменился, и будет меняться дальше. Раньше подавляющее большинство людей занимались работой с материальными вещами: ходили на заводы и фабрики, добывали полезные ископаемые. Сейчас же их сфера деятельности смещается в сторону обработки информации.
Множество людей создает, обрабатывает и разрушает различные данные и тем самым зарабатывает себе на жизнь. Причем если раньше для работы необходимо было ежедневно ходить в офис, то теперь мир приходит к тому, что мы можем работать удаленно. Создаются гигантские центры обработки информации, виртуальные рабочие места.
И я думаю, что скоро настанет тот день, когда люди поймут, что совсем не обязательно торчать в душных офисах, а человек может работать где угодно. Лишь бы у него был доступ к сети. Какая разница, где физически находится сотрудник, если он может выполнять свои функции по обработке информационных потоков? Офис будет там, где ваш ноутбук: на океанском пляже, высоко в горах, в лесу… В общем, в тех местах, где вам комфортно находиться.
Вы можете спросить: «А причем здесь VPS?» Отвечаю. Виртуальный сервер как раз и дает старт новому информационному миру. Именно благодаря этой технологии появляются удаленные офисы, сотрудники которых могут перемещаться по всему миру. Если создать комфортную информационную среду для себя и своих клиентов, то можно неплохо зарабатывать и при этом жить там, где вам удобно.

[**Spoiler (click to open)**]
Что-то меня занесло немного в будущее. Поэтому давайте спустимся с небес на землю и для начала разберемся, какие все-таки бывают типы VPS, что обозначают загадочные названия «OpenVZ» , «XEN», «KVM», «VMWARE» и для решения каких задач они могут использоваться. Сегодня мы научимся выбирать виртуальный сервер, тестировать его и проверять, не обманул ли нас хостер.
Виртуализация и ее типы
Виртуализация – это создание на одном физическом сервере большого количества виртуальных машин. Достигается это за счет того, что ресурсы обычного сервера зачастую простаивают. Поэтому и была разработана технология, которая позволяет «уплотнить» железо и перераспределить мощность.
Какие же бывают типы виртуализации? Сегодня коммерческие хостинги используют 4 основных типа VPS:
• OpenVZ;
• XEN;
• KVM;
• VMWARE.
Рассмотрим каждое решение и его применение подробнее.
OpenVZ. Эта технология чем-то похожа на коммунальную квартиру с тонкими стенами. Жить в ней можно, переночевать есть где, но комфорт времяпрепровождения очень зависит от соседей. Если они любят выпить или постоянно устраивают дебоши, то вы ощутите все это на себе.
Ресурсы такого «коммунального» VPS делятся между всеми участниками и ограничиваются достаточно тонкими «стенами» операции «chroot». Поэтому хостер не может гарантировать стабильную мощность OpenVZ-сервера, одно крупное приложение, запущенное на нем, может потреблять много ресурсов, в то время как другие клиенты будут ограничены в их использовании.
Эту технологию любят многие недобросовестные хостинги, так как она позволяет оверселить: продавать ресурсов больше, чем есть на самом деле. Казалось бы, подобное решение совершенно не пригодно для использования. Но подождите отказываться. OpenVZ дешев и вполне подойдет для старта новых проектов, обучения работе с VPS или создания прокси. В общем, для всего того, что не требует полного использования всех ресурсов сервера и 100%-ного аптайма.
Впрочем, стоит отметить, что бывают и честные хостеры с OpenVZ, которые ограничивают недобросовестных соседей четко заданными лимитами и продают ровно столько ресурсов, сколько у них есть.
XEN. Бывает двух типов:
• XEN PV или Paravirtualization. Эта технология чем-то похожа на OpenVZ, только имеет более жёсткие лимиты. Возвращаясь к нашей квартирной аналогии, подобное решение - это комфортная коммуналка с толстыми стенами, которые не дают полной тишины, но шум от соседей все же немного приглушают.
• XEN HVM, или так называемая контейнерная виртуализация. Это означает, что у вас будет изолированный сервер, который больше похож на физический. Вы сможете установить на него, например, операционную систему, которую захотите, со своего собственного ISO-образа.
KVM. Это уже полноценная отдельная квартира. Соседи могут мешать, но они жестко ограничены. У вас полностью изолированный контейнер, который обеспечивает гарантированные хостером ресурсы. Очень неплохое сочетание цены и качества.
VMWARE. Это коммерческий гипервизор с кучей плюшек (увы, платных), этакая квартира с улучшенной планировкой. Из-за своей стоимости для наших целей эта технология сейчас не представляет никакого интереса и выгоды.
Жесткий диск
Следующий важный параметр после типа виртуализации - это тип жесткого диска. Современные сервера используют в основном накопители трех видов:
• SSD (высокая скорость работы, но и высокая цена).
• SAS (лучший выбор, как про производительности, так и стоимости).
• SATA (устаревшая технология, не рекомендую ею пользоваться).
На что же влияет тип жесткого диска? Прежде всего, на скорость обработки вашим сервером большого количества информации. Например, если у вас посещаемый интернет-магазин, то веб-сервер создает множество запросов к базе данных, которая, в свою очередь, активно обращается к накопителю и создает уйму процессов чтения-записи. С обработкой такого потока информации лучше всего справляется SSD-диск, SAS тоже вполне неплох в этом плане, он надежен, хоть и уступает по скорости твердотельным накопителям.
Технологию SATA использую на серверах разве что для создания бэкапов, для чего-либо еще, по моему мнению, она непригодна.
Процессор
Тут все предельно понятно – чем современнее процессор и чем больше у него ядер - тем лучше. Как узнать эти параметры, мы рассмотрим чуть ниже.
Оперативная память
Ситуация та же, что и с процессором – дайте побольше.
Скорость соединения сервера с внешним миром
На этот параметр тоже стоит обратить внимание. Здесь важно то, какую скорость вам гарантирует хостер. Понятно, что он в документации может указать и 1 Gbps. Но если на этом гигабитном канале будет сидеть тысяча человек, то вам от него ничего не останется.
Проверка параметров
Итак, по советам из прошлого поста мы взяли самый дешевый VPS, для настройки VPN и обучения начальным принципам работы с Linux нам его вполне хватит. Использоваться на сервере будет, конечно же, технология OPenVZ и SAS-диски.
Следующий шаг - выбор операционной системы при установке. Сейчас не особо критично, какой дистрибутив Linux вы предпочтете, поэтому давайте начнем с Debian. Для этого скачиваем SSH-клиент PuTTY или KiTTY, в поле «hostname or ip address» указываем адрес нашего сервера и набираем «login as: root password». Эти данные для идентификации вам должен предоставить ваш хостер. Закончив настройку, мы наконец-то может проверить, что за железо стоит у нашего VPS.
Итак, для начала посмотрим, какой используется процессор. Для этого вводим команду
cat /proc/cpuinfo в SSH-клиент и видим что-то вроде этого:

Процессор X5550 с тактовой частотой 2.6 Ghz в принципе неплох для дешевой виртуалки, он далеко не топовый, но и не откровенное старье.
Далее с помощью команды «speedtest» для Linux проверим скорость канала. Для этого введем в командную строку следующее:
wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py --no-check-certificate
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.
Эта операция покажет примерно следующее:

И что же мы видим? Скорость загрузки данных на сервер - 465 Mbps, весьма неплохой показатель, который говорит о том, что хостер ничем не ограничивает этот параметр. Отдача сервера составляет 25.5 Mbps - тоже неплохо. Ping в пределах нормы. Теперь можем ввести вот такую команду:
speedtest-cli –share
Она представит всю полученную информацию в виде картинки, с помощью которой можно рассказать на любом форме, насколько у вас быстрый канал.

А теперь проведем финальную комплексную проверку. Для этого введем в командную строку:
wget --no-check-certificate https://github.com/rafa3d/vHWINFO/raw/master/vhwinfo.sh -O - -o /dev/null|bash
Расшифруем полученную с помощью команды информацию:
Hostname: mega. (public ip ) – имя вашего сервера.
SO: Debian GNU/Linux 8.3 (jessie) 64 bits – операционная система.
kernel: 2.6.32-042stab113.11 – версия ядра.
virtual: OpenVZ – тип виртуализации.
cpu: Intel(R) Xeon(R) CPU X5550 @ 2.67GHz – процессор.
vcpu: 1 core / 5333.97 bogomips – количество ядер и скорость процессора.
RAM: 256 MB (28% used) / swap 0 MB (0% used) – оперативная память и подкачка страниц.
HDD: 3.6G (10% used) / inkling speed 947 MB/s – размер диска и его скорость.
cachefly 10MB: 13.2 MB/s (probably Gigabit Port) – номинальная скорость интернет-соединения, может быть изменена скриптом.

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

Ну и видео для более легкого освоения )