Віртуальний хостинг чи віртуальний сервер - що вибрати?

Незважаючи на появу дешевих VPS, традиційний веб-хостинг вмирати не збирається. Спробуємо розібратися, у чому полягають різницю між двома підходами до розміщення сайтів і який з них кращий.

Віртуальний хостинг чи віртуальний сервер - що вибрати?

На сайті кожного провайдера, що поважає себе, обов'язково знайдеться порівняння традиційного веб-хостингу з віртуальними серверами. Автори статей відзначають схожість VPS з фізичними машинами та проводять паралелі між ними та власними квартирами, відводячи веб-серверам колективного користування роль комуналок. Посперечатися з таким трактуванням важко, хоч ми спробуємо все не так однозначно. Давайте заглянемо трохи глибше поверхневих аналогій і розберемо для користувачів користувачів кожного варіанту.

Як улаштований традиційний хостинг?

Щоб веб-сервер міг обслуговувати різні сайти, було придумано т.зв. name базується на virtual host. Протокол HTTP передбачає можливість передачі у складі запиту URL (єдиного покажчика ресурсу) — це дозволяє сервісу зрозуміти, до якого сайту звертається браузер або інша клієнтська програма. Залишається лише прив'язати доменне ім'я до потрібної IP-адреси та прописати в конфігурації кореневий каталог для віртуального хоста. Після цього можна розкласти файли сайтів різних користувачів у їхні домашні каталоги та відкрити доступ до FTP для адміністрування. 

Щоб веб-застосунки на стороні сервера (різні скрипти або навіть системи керування контентом — CMS) запускалися з правами того чи іншого користувача хостингу, в Apache був створений спеціальний механізм suexec. Зрозуміло, що налаштування безпеки веб-сервера не дозволяють користувачам лізти в чужий город, але загалом це справді схоже на комунальну квартиру з окремими кімнатами та загальною адресою (IP) на сотні сайтів. Сервер баз даних (зазвичай MySQL) для віртуальних хостів теж загальний, але доступ у користувача хостингу є лише для його особистих баз. Все програмне забезпечення сервера, крім скриптів сайту, обслуговується провайдером, змінювати його конфігурацію на свій розсуд клієнти не можуть. Процес керування обліковими записами автоматизований: для цих цілей у кожного хостера є спеціальна веб-панель, через яку можна керувати послугами.

Як влаштовані VPS?

Порівняння віртуальних серверів із фізичними не цілком коректно, оскільки на одному «залізному» хості працює безліч VPS. Образно кажучи, це вже не комуналка, а багатоквартирний будинок із загальним під'їздом та єдиними конструкціями, що несуть. Для створення окремих «квартир» (VPS) у межах одного «будинку» (фізичного сервера) задіяні засоби встановленої на хості операційної системи та різні технології віртуалізації. 

Якщо застосовується віртуалізація рівня ОС, процеси клієнта просто працюють в ізольованому оточенні (або певному контейнері) і не бачать чужих ресурсів та процесів. Окрема гостьова ОС у цьому випадку не запускається, а значить програмне забезпечення в гостьовому оточенні має бути бінарно сумісним із системою на фізичному хості — як правило клієнтам пропонують спеціально модифіковані під такий спосіб експлуатації дистрибутиви GNU/Linux. Є й більш просунуті варіанти, аж до емуляції фізичної машини, де можна запустити майже будь-яку гостьову ОС навіть із власного інсталяційного образу.

З погляду адміністратора будь-який VPS мало чим відрізняється від фізичного сервера. Під час замовлення послуги хостер розгортає обрану конфігурацію, а далі обслуговування системи лягає на плечі клієнта. При цьому можна встановити потрібне програмне забезпечення і як завгодно його налаштувати повна свобода вибору веб-сервера, версії PHP, сервера баз даних і т.д. IP-адреса у VPS теж своя, її не доведеться ділити з сотнею — інший сусідів. На цьому з описом основних відмінностей ми закінчимо та перейдемо до переваг та недоліків, від яких залежить вибір рішення.

Який варіант простіше та зручніше?

Віртуальний хостинг не вимагає адміністрування сайту, що забезпечує роботу оточення. Клієнту не доведеться самому встановлювати, налаштовувати та оновлювати системне та прикладне ПЗ, а в ряді випадків панель управління хостингом дозволяє встановлювати і CMS – такий варіант виглядає привабливим для новачків. З іншого боку завдання тонкого налаштування CMS все одно доведеться вирішувати самостійно, до того ж, за відносно низьким порогом входу ховається менша гнучкість рішення. Вибір софту буде обмежений: на віртуальному хостингу не можна, наприклад, за власним бажанням поміняти версію PHP або MySQL, а тим більше встановити якийсь екзотичний пакет або вибрати альтернативну панель управління - доведеться користуватися запропонованими постачальником послуг засобами. Якщо провайдер проведе оновлення сервера, у ваших веб-застосунках можуть виникнути проблеми програмної сумісності. 

VPS позбавлений цих недоліків традиційного хостингу. Клієнт може сам вибрати потрібну йому ОС (необов'язково Linux) та встановити будь-яке програмне забезпечення. Налаштовувати та адмініструвати оточення доведеться самостійно, проте процес можна спростити – всі хостери пропонують одразу інсталювати на віртуальний сервер панель управління, яка автоматизує процес адміністрування. Завдяки їй великої різниці у складності управління між традиційним хостингом та VPS не буде. До того ж, ніхто не забороняє встановити власну панель, що не входить до списку пропозицій провайдера. Загалом накладні витрати на адміністрування VPS не такі великі, а велика гнучкість рішення з лишком окупає деякі додаткові трудовитрати.

Який варіант безпечніший і надійніший?

Може здатися, що розміщення сайтів на традиційному хостингу безпечніше. Ресурси різних користувачів надійно ізольовані один від одного, а за актуальністю програмного забезпечення сервера стежить провайдер – це відмінний варіант, але лише на перший погляд. Зловмисники далеко не завжди експлуатують уразливості у системному ПЗ, зазвичай сайти зламують, використовуючи незакриті дірки у скриптах та небезпечні налаштування систем керування контентом. У цьому сенсі жодних переваг у традиційного хостингу немає — ресурси клієнтів працюють на тих самих CMS — натомість недоліків вистачає. 

Головна проблема віртуального хостингу полягає у загальній IP-адресі для сотень сайтів різних користувачів. Якщо когось із ваших сусідів зламають і почнуть, наприклад, розсилати через нього спам або проводити інші шкідливі дії, загальна адреса може потрапити до різних чорних списків. У цьому випадку постраждають усі клієнти, чиї сайти використовують ту саму IP. Якщо сусід потрапить під DDoS-атаку або створить надмірне навантаження на обчислювальні ресурси, постраждають решта мешканців сервера. Керувати виділенням квот для окремих VPS провайдеру набагато простіше, до того ж віртуальному серверу надається окремий IP і необов'язково один: можна замовити будь-яку їх кількість, додатковий сервіс захисту від DDoS, антивірусний сервіс і т.д. У сенсі безпеки та надійності VPS перевершує традиційний хостинг, потрібно лише своєчасно оновлювати встановлені програми.

Який варіант дешевший?

Ще кілька років тому відповідь на це питання була однозначною — при всіх її недоліках кімната в комуналці була набагато дешевшою за окрему квартиру. Галузь не стоїть на місці і зараз на ринку з'явилося багато бюджетних VPS: у нас можна орендувати власний віртуальний сервер на Linux за 130 карбованців на місяць. В середньому місяць роботи бюджетного VPS обійдеться клієнту в 150 - 250 рублів, за таких цін миритися з проблемами традиційного хостингу немає сенсу, крім випадку, коли на сервері потрібно розмістити найпростіші сайти-візитки. До того ж тарифні плани віртуального хостингу обмежують кількість сайтів та баз даних, а на VPS клієнт обмежений лише ємністю накопичувача та обчислювальними можливостями сервера.

Віртуальний хостинг чи віртуальний сервер - що вибрати?

Джерело: habr.com

Додати коментар або відгук