Муки вибору сисадміна
Напевно, кожен помітний проект або просто кожна велика організація рано чи пізно стикається з вибором: купувати фізичний або орендувати віртуальний сервер? Давай спробуємо розібратися, що краще і економічно виправдано.
Вартість фізичного сервера
Перш за все потрібно доглянути фізичний сервер, який буде відповідати твоїм очікуванням, - щоб перед очима в тебе була якась сума і щоб ти міг ясно бачити, який варіант економічно більш доцільний саме в твоєму випадку.
Потрібно визначитися, що ми вважаємо сервером. Якщо просто комп в звичайному тауер-корпусі, який буде припадати пилом в дальньому кутку твого офісу, - це одне. По суті, можна і на мій ноутбук встановити MS SQL Server і зробити його сервером баз даних. Ось тільки як швидко така база «впаде» при реальному навантаженню навіть в 5-10 користувачів при одночасній роботі в 1С?
На рис. 1 зображений сервер HP ProLiant DL180 Gen9:
- Восьміядерний Intel Xeon E5-2620 v4 (2,1-3 ГГц)
- Реєстрова (Registered) пам'ять з ECC, 16 Гбайт
- Smart Array P440 / 2G 12 Гбайт Controller
- Форм-фактор корпуса 2U
А чи потрібен фізичний сервер?
Тепер, коли у тебе є вартість заліза, давай подумаємо, а чи потрібне воно тобі взагалі? Дуже часто людина мучиться над вибором сервера, хоча насправді може прекрасно без нього обійтися. Аргументи «у сусіда є», «мені порадили» краще відразу відкинути. Коли ж варто задуматися про придбання власного сервера?
VDS або VPS
VPS (Virtual Private Server - віртуальний приватний сервер) являє собою програмну віртуалізацію і реалізується на рівні ядра операційки. Всі машини створюються на базі одного серверного ядра, кожна віртуальна машина (це і є VPS, який ти візьмеш в оренду) являє собою сервер з програмним оточенням, проте без права зміни ядра і самої операційної системи. Найбільш часто використовуються платформи віртуалізації OpenVZ і Virtuozzo.
Перевага у цього рішення одне, і воно дуже суттєва, - низька вартість. А ось недоліків набагато більше:
- Оверселлінг. Ресурси оперативки і ядра виділяються без прив'язки до конкретної машини. Наприклад, ти і твій сусід орендуєте два VPS-сервера однаковою конфігурації. Нехай у кожного сервера 2 Гбайт оперативної пам'яті. Ось тільки твій сайт споживає 500-800 Мбайт пам'яті, а сайт твого сусіда - 3 Гбайт. Виходить, що ти платиш за ресурси, які реально твоїм сайтом не використовуються.
- Залежність від сусідів. З попереднього пункту випливає ще одна проблема. Надмірне навантаження на одну машину може привести до збоїв в роботі сусідніх VPS. Наприклад, сусідський VPS навантажив процесор, а твій сайт буде через це гальмувати. А навантажити процесор дуже легко - достатньо встановити яку-небудь ненажерливу CMS на зразок Magento, і постійний перевитрата процесорного часу і оперативної пам'яті тобі гарантований.
- Обмеженість настройки. Частина налаштувань VPS змінити неможливо - коренева файлова система і ядро тобі непідвладні. Звичайно, ядро і кореневу файлову систему доводиться змінювати далеко не завжди, і це не те щоб недолік, просто особливість використання VPS.
Зовсім інша справа - VDS. Це вже апаратна віртуалізація і реалізується засобами гипервизора (VMware, KVM, XEN, Hyper-V). Переваг безліч:
Недолік тільки один - вартість. Вона вище, ніж у VPS (на варіанти з VPS я б взагалі не дивився, хіба що для особистого застосування або якихось експериментів). Однак вартість оренди VDS останнім часом постійно зменшується, тому навіть зараз можна орендувати «майже фізичний» сервер за помірні гроші.
Скільки коштує VDS?
Тепер настав момент істини. Давай порахуємо, що вигідніше - фізичний сервер або VDS. Нагадаю, фізичний сервер (тільки залізо, без вартості операційної системи і розміщення в дата-центрі) обійдеться в 162 250 рублів, в комплекті є два жорсткі диски по 300 Гбайт, з яких ти будеш використовувати тільки один, а другий послужить дзеркалом. Власне, від розміру дискового простору і будемо відштовхуватися: чим більше місця на диску, тим дорожче VDS.
Скільки простору необхідно для твого проекту в даний момент? Саме зараз, а не через рік або два - на відміну від фізичного сервера, де ти купуєш 300 Гбайт відразу, у випадку з VDS ти можеш купувати ресурси поступово, коли вони тобі знадобляться.
Якщо тобі буде достатньо 16 Гбайт, вартість оренди складе всього тисячі двісті двадцять одна рубль на місяць. Компаній, що надають послуги VDS, досить багато, ми будемо орієнтуватися на ціни компанії RackStore. В цьому випадку рік оренди сервера тобі обійдеться в 13 186,8 рубля (при оплаті за рік надається знижка 10%). Іншими словами, суми, що дорівнює вартості твого фізичного сервера, вистачить на дванадцять років оренди VDS. За цей час твій фізичний сервер не просто застаріє, а буде знаходитися на стадії напіврозпаду. А ціни на VDS постійно знижуються, дорожчати вони не будуть - конкуренція не дозволить.
Для більших проектів підійде інший тариф, до якого включено більш потужний процесор з 2 Гбайт оперативної пам'яті, а не 1 Гбайт, а також 32 Гбайт дискового простору. Правда, вартість складе 2297 рублів на місяць, або 24 807,6 рубля в рік (з урахуванням 10% -ї знижки). Але, незважаючи на це, еквівалента вартості твого фізичного сервера вистачить на шість з половиною років оренди VDS - і зауваж: тобі не доведеться витрачати всі кошти відразу.
Коли потрібно купувати фізичний сервер
На мій погляд, фізичне обладнання доцільно купувати, якщо вартість річної оренди VDS потрібної конфігурації перевищує вартість фізичного обладнання або приблизно їй дорівнює. Давай порахуємо: VDS з 256 Гбайт дискового простору і 8 Гбайт оперативної пам'яті обійдеться в 126 867,6 рубля за рік (це вже зі знижкою 10%), а такий же VDS, але з 16 Гбайт оперативної пам'яті в рік буде коштувати 142 786,8 рубля . Ці цифри впритул наближаються до вартості фізичного сервера.
В цьому випадку є сенс задуматися про покупку фізичного обладнання. Якщо порівнювати з найдорожчою конфігурацією VDS (16 Гб RAM, 256 Гбайт HDD), то він окупить себе вже через 13 місяців (я вважаю 11 898,9 рубля на місяць з урахуванням знижки 10%; якщо без знижки, то і того раніше) . Звичайно, реальний термін окупності буде трохи довше, але про це ми поговоримо пізніше.
Що ж стосується часу окупності в 24-36 місяців, то тут потрібно враховувати ще й гарантійний термін. На сервер HP, описаний вище, він становить 36 місяців. А це означає, що через три роки сервер, можливо, зажадає додаткових «вливань» - той самий жорсткий диск може вийти з ладу або блок живлення.
Фізичний сервер vs VDS
У кожного з рішень є свої переваги (якщо забути про вартість). До переваг фізичного сервера можна віднести продуктивність і більше дисковий простір.
Як не крути, хоч продуктивність віртуального сервера і буде високою, але вона все одно нижче, ніж у фізичного сервера. Це факт. До того ж навіть якщо порівнювати наш фізичний сервер з найдорожчою конфігурацією VDS, то ти отримуєш 44 (300 - 256) Гбайт додаткового дискового простору - це досить відчутно.
Ще у фізичної сервера є перевага в тому, що він фізичний. Що його можна помацати. Спробуй шістдесятирічної тітоньці з бухгалтерії пояснити, за що потрібно платити 142 тисячі рублів на рік. А тут все-таки буде ящик, іменований сервером.
Зате до переваг VDS можна сміливо віднести простоту обслуговування. Тобі не потрібно турбуватися, що жорсткий диск вийде з ладу, - якщо навіть і вийде, то це проблеми провайдера, а ти зможеш відновити свою віртуальну машину з резервної копії. Про клонування сервера натисканням однієї кнопки я вже мовчу - віртуальна машина на те і віртуальна. Тобі не потрібно ні про що піклуватися - ні про перепадах напруги, ні про відключення електрики. Все це проблеми провайдера, які буде вирішувати саме він.
Модернізувати VDS теж дуже просто: замовив в адмінці додаткові ресурси, і відразу після оплати вони стали доступні. Так, за 1 Мбайт оперативки доведеться доплатити 0,18 рубля на місяць, а за 1 Мбайт місця на диску - 0,02 рубля на місяць. Не потрібно зупиняти сервер, переносити дані на інший жорсткий диск або просто конфігурувати інший жорсткий диск. Все дуже просто.
VDS ти отримуєш відразу після оплати. Купив - і тут же можеш використовувати. З фізичним сервером все не так просто. Після оплати його потрібно доставити, на що може піти кілька днів. Потім потрібно його налаштувати - встановити операційну систему, задати параметри сервісів.
VDS відразу готовий до використання - залив свій контент, налаштував DNS, і твій сайт вже працює.
Що ще ми не врахували, або вартість існування фізичного сервера
Мало купити сервер. Потрібно ще платити за його існування. Як мінімум тобі потрібно забезпечити:
- резервний інтернет-канал;
- резервне живлення (ІБП коштують дорого, можливо доведеться встановлювати дизель-генератори);
- систему кондиціонування - підтримувати оптимальну для роботи сервера температуру.
З системою кондиціонування все просто, з резервним інтернет-каналом трохи складніше, але вирішуване. А ось забезпечити резервне живлення вийде не завжди. Якщо відключать світло, ти залишишся без сервера, а по репутації твого ресурсу буде завдано величезного удару. З тих чи інших причин резервну лінію можна організувати не завжди, а ДБЖ достатньою для роботи сервера потужності буде коштувати дорожче самого сервера. Подивися на ИБП APC серії Symmetra MW. Відразу кажу: купувати їх тобі не захочеться. Вихід один - дизель-генератори. Якщо у тебе власне приватну будівлю, такий варіант можливий. Але якщо ти орендуєш офіс в бізнес-центрі або квартиру, то навряд чи сусіди будуть раді твоєму генератору. Та й по пожежним нормам установка такого генератора заборонена.
Коли потрібен саме потужний фізичний сервер, орендувати VDS не хочеться, а організувати резервне живлення неможливо, є варіант скористатися послугою розміщення сервера (colocation).
Твій сервер фізично поміщається в дата-центр провайдера, де забезпечується резервування інтернет-каналу і харчування, а також підтримується оптимальна температура.
Коштують послуги з розміщення сервера відносно недорого. Саме розміщення сервера обійдеться в 2500 рублів на місяць. Інтернет з гарантованими 10 Мбіт / с або негарантованими 100 Мбіт / с йде безкоштовно при оренді порту комутатора Ethernet - 500 рублів на місяць. Якщо такого каналу тобі мало, то можна або купити гарантований канал 50 Мбіт / с (3500 рублів на місяць), або взяти порт з негарантованої смугою 1 Гбіт / с за 5000 рублів на місяць.
Виходить, що існування сервера обійдеться тобі як мінімум в 3000 рублів на місяць. Даний момент потрібно враховувати при підрахунку рентабельності покупки фізичного обладнання. Адже за ці гроші можна орендувати (навіть дешевше) VDS з 2 Гбайт оперативної пам'яті і 32 Гбайт дискового простору!
Все це я до того, що з вартості оренди VDS можеш сміливо віднімати ціну розміщення сервера, - адже у випадку з фізичним сервером тобі все одно б довелося платити ці гроші.
Так, якщо взяти тариф 11 747 рублів на місяць (256 Гбайт HDD і 8 Гбайт оперативної пам'яті) і відняти 10% (знижка при оплаті за рік) і 3000 рублів (розміщення), то виходить 7572,3 рубля. Візьмемо нашу суму 162 250 рублів і розділимо її на вийшло значення. Результат - майже два роки (більше 21 місяці) оренди VDS майже максимальній конфігурації. Якщо ж тобі прямо зараз не потрібно 256 Гбайт, можна вибрати більш дешевий тариф з 128 Гбайт простору: з 7899 віднімаємо 10% і 3000 рублів, вийде сума досить скромна, як за оренду сервера такій конфігурації, - 4109 рублів. При вартості сервера в 162 250 рублів цієї суми вистачить на 39 місяців оренди VDS з 128 Гбайт HDD, трьома ядрами і 8 Гбайт оперативної пам'яті. Два ядра з тими ж параметрами оперативки і HDD обійдуться ще дешевше (2950 рублів, якщо вважати за нашою методикою). Не варто забувати, що після трьох років закінчується гарантія і фізичний сервер може зажадати вкладень. Напевно за три роки вже порядком зносилися жорсткий диск і потрібно його заміна.
Тим не менш, якщо потрібен залізний сервер з плат і проводів і ти хочеш, щоб він був твоїм і тільки твоїм, можеш орендувати фізичний сервер з подальшим викупом за 1 рубль. Зрозуміло, щомісячна плата за такого розкладу буде вище, зате почекав рік і забрав свій сервер додому, в офіс, залишив в дата-центрі. Холішь і плекаєш його сам - втім, як і обслуговуєш. Іншими словами, твій віртуальний сервер може перетворитися в реальний!
Мал. 2. Ціни на VDSМал. 3. Ціни на додаткові опції
Орендувати VDS в більшості випадків не тільки простіше, але і вигідніше. Що ж стосується фізичних серверів, то їх використання доцільно, тільки якщо планована навантаження настільки висока, що з нею не впорається віртуальний сервер (якщо плануєш, що всі вісім ядер твого фізичного процесора будуть використані) і відразу необхідно все дисковий простір. У всіх інших випадках вигідніше орендувати VDS. При виборі на користь фізичної сервера не варто забувати про ціну розміщення сервера в дата-центрі, яка порівнянна з вартістю оренди не найслабшої VDS.
Покажи цю статтю друзям: