Недавно на одном очень популярном форуме вебмастеров клиент задал интереснейший и, казалось бы, простой вопрос. Что выбрать? Виртуальный сервер в облаке или же виртуальный сервер на отдельно взятом «железном» сервере? Хранилище на накопителях какого типа предпочтительнее и в каких случаях? Постараемся сегодня найти ответ на этот вопрос совместно. Будем признательны, если каждый после прочтения, выскажет свое мнение. Также хотим попросить Вас принять участие в обсуждении темы «О восстановлении. Целесообразен ли RAID на VPS SSD в случае выделенных накопителей?» на Хабре, которая частично связана с текущей.
К каждому виртуальному серверу с выделенным накопителем можно докупить до 3-х IPv4-адресов и увеличить трафик из расчета +$15 за каждые дополнительные 10ТБ.
Но вернемся к основным нашим вопросам. В каких случаях целесообразно выбирать VPS в «облаке» и на «железном» сервере, какие накопители должны быть?
Об облаках в целом.
Мое личное мнение, что «облака» — большой marketing bullshit.
И сейчас я постараюсь объяснить почему. Облаком сейчас принято называть любую распределенную программную среду, поднятую на некотором физическом оборудовании в количестве более 1. Остальное — лишь эффективность взаимодействия и принципы тарификации, они могут различаться. Так же, как и выделенные серверы, применяемые для построения облачных решений и другое дополнительное оборудование, такое, к примеру, как СХД, firewall и аппаратные балансеры нагрузки.
Рассмотрим преимущества и недостатки облачных решений. Наш партнер LeaseWeb, с которым мы сотрудничаем по предоставлению облачных решений в нидерландском дата-центре EvoSwitch, построил облако для предоставления VPS с применением виртуализации KVM и различных дополнительных программных решений, которые позволяют обеспечить:
— перезапуск виртуальной машины на другом железе, в случае аппаратных проблем с железом;
— фильтрацию DDOS-атак до 1 Гбит / с бесплатно (без учета трафика), атака митигируетя на пограничном маршрутизаторе и попросту не доходит до облачной среды;
— временную блокировку виртуальной машины или перезапуск виртуальной машины в другом сегменте облака, в случае аномальной нагрузки на хранилище по IOPS, которая идентифицируется превышением различных заданных пороговых величин (treshhold);
— надежное хранение данных на дублированном хранилище корпоративного класса, с применением исключительно твердотельных накопителей SSD, обеспечивающих до 1000 раз большую производительность, в сравнении с SATA HDD.
В результате получилось довольно отказоустойчивое решение, и мы были рады закупить большую часть облака для наших абонентов, предоставив при этом решение по довольно интересным ценам:
Ядра (vCPU) 1 Core
Память (vRAM) 1 GB
Квота 40 GB (SSD Storage)
Порт 1000 Mbps
Премиум трафик 4 TB
Фильтрация DDOS-атак до 1 Гбит / с бесплатно
От $3,99 / месяц в зависимости от локации
[M]
Ядра (vCPU) 2 Core
Память (vRAM) 2 GB
Квота 60 GB (SSD Storage)
Порт 1000 Mbps
Премиум трафик 6 TB
Фильтрация DDOS-атак до 1 Гбит / с бесплатно
От $7,99 / месяц в зависимости от локации
Преимущества и недостатки этого решения? Они очевидны.
Преимущества.
1. Цена. Спорный момент, зависит от облака и принципов тарификации, на некоторых облаках выгодно использовать ресурсы только для мгновенных пиков, но при значительном потреблении ресурсов, все же решения на железных серверах (bare metal) будут дешевле.
2. Отказоустойчивость. Также спорный момент, если ничего не ломается серьезно — довольно высока, но если ломается… Тем не менее мы в который раз хотим напомнить о важности резервного копирования, так как в случае программных проблем все же неоткуда будет восстановить данные, даже если ничего аппаратно не ломалось или ломалось, но резервирование сработало должным образом.
3. Легкость масштабирования.
Недостатки.
1. В случае серьезных проблем, как и у любого облака, время недоступности (даунтайм) может составить часы и даже сутки. Как показал опыт коллег, если что-то ломается — то серьезно ломается, а рано или поздно все самые надежные облака могут выйти из строя. Вспомнить тот же Amazon, когда они пролежали 2 дня и тот же сервис по сбору кардиостатистики оказался недоступным. Более того, проблемы были и на облаке нашего партнера из-за проблемы с хранилищем, примерно 2 года назад, когда использовалось хранилище гибридного типа SSD+HDD.
2. Ежемесячная тарификация. В нашем случае может быть, как преимуществом, так и недостатком, так как из-за особенностей системы тарификации — все же ниже цена. Однако некоторые потенциальные клиенты высказывали недовольство по этому поводу и даже говорили, что это не облако, потому, что нет почасовой тарификации и невозможно в любой момент удалить виртуальную машину, чтоб она перестала тарифицироваться и добавить новую.
3. Общее хранилище в нашем случае, из-за чего IOPS одного клиента все же может оказывать влияние на других. И хотя установлены различные пограничные значения во избежании проблем (treshold) — проблема может быть, причем, вызванная сбоем на самом хранилище.
4. В случае bare metal (выделенных серверов) Вы сами можете определить узлы своего кластера (облака), сделать их ближе к аудитории и избежать излишних трат, так как в конце концов, при большом потреблении ресурсов на постоянной основе, bare metal будет дешевле значительно.
Тем не менее, в целом, в нашем варианте получилась довольно неплохая услуга, ведь у нас не применяется хитрых схем тарификации, когда за всплеск потребления ресурсов в облаке приходят счета на десятки тысяч долларов, как это имело место быть у некоторых коллег.
Однако следует понимать, что за $4 не следует выставлять сверх требований к облачным серверам. К примеру, на этом облаке не получится линейно копировать файл со скоростью свыше 240 Мбит / с, так как IOPS для каждого виртуального сервера ограничены treshold в 1000. Это довольно большое значение, так как в случае случайных операций записи и чтения — оно эквивалентно массиву RAID10 из 16 HDD SATA накопителей (IOPS каждого около 70 в случайном варианте и, к слову, зависит еще и от размера кластера и многих других факторов). В последовательной записи или чтении — решение может проиграть из-за этого ограничителя тем же не нагруженным HDD (который также может обеспечить даже больше тысячи IOPS в таких случаях, для лучшего понимания вопроса рекомендую свою статью Какие факторы влияют на производительность систем хранения и как?), но ведь таких операций практически нет в случае реальных веб-проектов, потому 1000 случайных IOPS за $4 — на самом деле очень круто.
Однако есть проекты, которым этого недостаточно, в таких случаях стоит рассмотреть размещение на виртуальных серверах, которые размещаются не в облаках (ибо в облаках с гарантированным нужным Вам количеством IOPS будет дорого), а на выделенных серверах. Но тут уже возникают моменты, связанные с честностью хостинг-провайдера, так как при применении общего хранилища, производительность будет зависеть от типа используемых накопителей, а также количества абонентов на хранилище.
Гораздо лучше — размещение на виртуальных серверах с выделенными накопителями, когда не только ресурсы CPU / RAM выделены, но выделен ресурс и самого хранилища, все IOPS накопителя Ваши, Вы реально не зависите от нагрузки соседей. Получается аналог выделенного сервера, так как все ресурсы выделены, а возможности порой даже более обширны.
Таким образом мой ответ на вопрос, вкратце:
Если же рассматривать обычные VPS SSD и cloud — лучше все же брать VPS в облаке (cloud), так как структура более распределенная, больше ресурсов можно получить, лучше отказоустойчивость, чем у отдельно взятой SSD-ноды. Облака хоть и выходят из строя — но это крайне редкое явление. На VPS SSD на выделенном сервере хостинг-провайдеры могут напихивать безгранично клиентов с целью увеличения маржи, платя за это падением производительности отдельно взятых виртуалок.
А вот если мы рассматриваем VPS SSD с выделенным накопителем, то ситуация противоположна, у Вас получаются выделенные гарантированные ресурсы, если провайдер честный, включая все IOPS накопителя, и даже если не честный — количество накопителей в сервере ограничивает максимальное количество пользователей, меньше возможностей для обмана клиентов.
P.S. Будем благодарны за Ваши отзывы. Хотим поблагодарить за внимание и рассказать об условии предоставления бонуса. Все, как и в прошлые разы, для любого из виртуальных серверов в Нидерландах на выделенных накопителях:
VPS (KVM) — E5-2650 v4 (6 Cores) / 10GB DDR4 / 240GB SSD / 1Gbps 10TB — $29 в месяц; VPS (KVM) — E5-2650 v4 (12 Cores) / 20GB DDR4 /480GB SSD / 1Gbps 20TB — за $49 в месяц; VPS (KVM) — E5-2650 v4 (6 Cores) / 10GB DDR4 / 4TB SATA / 1Gbps 10TB — $29 в месяц; VPS (KVM) — E5-2650 v4 (12 Cores) / 20GB DDR4 / 2 x 4TB RAID1 SATA / 1Gbps 20TB — за $49 в месяц.
Мы готовы предоставить пользование до 01.02.2017 без оплаты, в случае заказа в любой срок до конца января (чем раньше оформите, тем больше бесплатного пользования получите). Номер заказа укажите в комментарии к этому посту и Вы получите бонус — уже проведенная оплата будет учтена, как оплата за февраль (продление на март либо отказ от услуги, нужно осуществить до 20-го февраля), а аренда до февраля будет абсолютно бесплатной. Также мы гарантируем возврат средств по любой причине в течении месяца для всех участников акции, если услуга Вам не понравится. Будем признательны за отзывы и сравнения, на подобии этого:
Но критика также допустима, мы работаем для Вас и хотим быть лучше, нужно — критикуйте, будем воплощать Ваши пожелания в реальность, ua-hosting.company — рады сделать Вас счастливее!