В этой статье
На VPS и на выделенном сервере может работать один и тот же образ Linux и одно и то же приложение. Разница в том, что под ними: доля общего хоста или вся машина целиком. Для небольших нагрузок с резкими всплесками такая доля часто оказывается правильным выбором. Для нагрузок, которые круглосуточно работают на полную, bare metal обычно выигрывает и в предсказуемости, и в цене за единицу вычислительной мощности. Разберемся, какой случай ваш.
Что вы на самом деле арендуете
VPS (виртуальный частный сервер) — это виртуальная машина. Гипервизор, например KVM, запускает множество ВМ на одном физическом хосте и делит между ними его процессорные потоки, память, диски и сеть. Некоторые тарифы резервируют за вами аппаратные потоки. Многие же работают с переподпиской: продают больше vCPU, чем у хоста потоков, в расчете на то, что не все клиенты будут нагружать систему одновременно.
Выделенный сервер — это сама физическая машина. Каждое ядро, каждый гигабайт оперативной памяти, NVMe-накопители и сетевой порт принадлежат вам, а под вашей операционной системой нет никакого гипервизора, если только вы не установите его сами.
Шумные соседи и CPU steal
На общем хосте каждый vCPU — это поток, который гипервизор планирует наравне с потоками всех остальных. Когда соседи активно работают, ваш vCPU может быть готов к выполнению, но все равно будет вынужден ждать. Linux отображает это ожидание как steal time:
top -bn1 | head -n 5
vmstat 1 5В top steal — последнее поле строки %Cpu(s), а в vmstat — столбец st. В этом примере «украдено» 7,6% процессорного времени:
%Cpu(s): 41.2 us, 3.0 sy, 0.0 ni, 47.5 id, 0.3 wa, 0.0 hi, 0.4 si, 7.6 stst — это доля времени, когда ваши виртуальные процессоры хотели работать, а гипервизор обслуживал кого-то другого. Короткие всплески — обычное дело; но если steal остается высоким, пока ваше приложение нагружено, значит, вы платите за vCPU, которые стоят в очереди. На burstable-тарифах точно так же может выглядеть троттлинг после того, как закончатся CPU-кредиты.
Steal — лишь видимая часть. Даже с выделенными vCPU клиенты делят между собой кэш L3, пропускную способность памяти, а часто и пути к хранилищу и сети, поэтому пакетная задача соседа все равно может добавить джиттер во время отклика вашего сервиса. На bare metal st остается на нуле: под вами нет гипервизора.
Дисковый ввод-вывод: NVMe без чужой очереди
Дисковое пространство VPS — это обычно доля локальных NVMe-накопителей или сетевое блочное хранилище, где каждое чтение и каждая запись проходят по сети до кластера хранения. И то и другое, как правило, ограничено лимитами на каждый том, а сетевое хранилище еще и добавляет цикл туда и обратно к каждой операции ввода-вывода. Для баз данных, поисковых индексов и игровых миров задержка каждой операции важнее заявленной пропускной способности: следите за wa (ожиданием ввода-вывода) в top и за столбцами r_await и w_await в iostat -x 1.
На выделенном сервере NVMe-накопители подключены к собственной шине PCIe машины, и вся глубина их очередей работает только на вашу нагрузку. Во всех конфигурациях DediJet есть NVMe, а на серверах с двумя дисками по умолчанию настроен программный RAID 1. Не верьте спецификациям на слово — измеряйте; этот запуск fio проверяет случайное чтение блоками по 4 КБ из временного файла:
apt install -y fio
fio --name=randread --filename=/root/fio.test --size=4G --rw=randread --bs=4k --iodepth=32 --numjobs=4 --ioengine=libaio --direct=1 --runtime=60 --time_based --group_reporting
rm /root/fio.testЗапустите его и на своем текущем VPS и сравните IOPS и clat percentiles (задержку выполнения операций) в обоих выводах.
Трафик: плата за гигабайт исходящего или безлимитный порт
Облачные платформы и многие тарифы VPS учитывают исходящий трафик: вы платите за каждый гигабайт, уходящий с сервера, иногда сверх включенного в тариф объема. Стоимость растет линейно вместе с трафиком:
monthly egress cost = GB sent per month × price per GBВыделенный сервер с безлимитным портом устроен наоборот: вы платите за скорость порта, а трафик не учитывается. Все тарифы DediJet включают безлимитный трафик на скорости порта (1 Гбит/с или 10 Гбит/с) круглосуточно, в рамках Правил допустимого использования. За 30 дней работы на полной скорости порт 1 Гбит/с передает около 324 ТБ в каждую сторону.
Чтобы найти точку, где две модели сравниваются по стоимости, разделите месячную цену сервера на цену гигабайта из вашего предложения. Для Ryzen 7 9700X результат деления 149 ÷ цена за гигабайт — это объем в гигабайтах, сверх которого один только исходящий трафик стоит дороже всего сервера. Подробный расчет — в нашем руководстве по безлимитному трафику.
Root-доступ, IPMI и само оборудование
Оба варианта дают root-доступ внутри операционной системы. Разница в том, что вокруг нее:
- Внеполосный доступ. В серверы DediJet входит IPMI/KVM-over-IP: консоль в браузере, управление питанием и виртуальные носители для подключения собственного ISO-образа. Если правило файрвола или обновление ядра отрежут вам доступ, у вас все равно останутся экран и клавиатура. Консоль VPS дает доступ к ВМ, но никогда — к оборудованию.
- Собственный гипервизор. Установите Proxmox VE в один клик или VMware ESXi со своей лицензией, TrueNAS либо NixOS из ISO-образа и запускайте ВМ и контейнеры без вложенной виртуализации, которую многие тарифы VPS отключают или замедляют.
- Реальные данные об оборудовании. Состояние дисков по SMART и NVMe, топология процессора и поведение частот, настройки сетевой карты: вы видите настоящие устройства, а не виртуальные.
Обратная сторона: серверы предоставляются без администрирования, так что администратор — вы. Основы описаны в наших руководствах по первым шагам и консоли IPMI/KVM.
Считаем деньги: цена за ядро и за гигабайт RAM
Честное сравнение — это месячная цена, поделенная на то, что вы получаете. Вот три сервера DediJet (цены за месяц, без НДС):
| Сервер | Цена | Ядра / потоки | ОЗУ | Диски · порт | За ядро | За поток | За ГБ ОЗУ |
|---|---|---|---|---|---|---|---|
| Ryzen 7 9700X | 8 ядер / 16 потоков | 64 ГБ DDR5 | 2 × 1 ТБ NVMe · 1 Гбит/с | $18.63 | $9.31 | $2.33 | |
| Ryzen 9 9950X | 16 ядер / 32 потока | 128 ГБ DDR5 | 2 × 2 ТБ NVMe · 1 Гбит/с | $16.81 | $8.41 | $2.10 | |
| EPYC 9354P | 32 ядра / 64 потока | 384 ГБ DDR5 ECC | 2 × 3,84 ТБ NVMe · 10 Гбит/с | $21.84 | $10.92 | $1.82 |
В каждом столбце полная цена делится на один ресурс, поэтому складывать эти цифры нельзя. Диски, безлимитный порт, адрес IPv4, IPMI и фильтрация DDoS входят в стоимость в каждой строке.
Применяйте ту же мерку к любому предложению облака или VPS. Один vCPU — это обычно один аппаратный поток, а не целое ядро, поэтому сравнивайте цену за поток или делите число vCPU пополам, чтобы получить ядра:
price per thread = monthly cost ÷ dedicated vCPUs
price per core = monthly cost ÷ (dedicated vCPUs ÷ 2)
monthly cost = hourly price × 730Сравнивайте выделенные vCPU, а не разделяемые или burstable, и прибавляйте то, что уже входит в цену сервера: блочное хранилище, исходящий трафик в вашем реальном объеме, дополнительные IP-адреса. Например, чтобы сравняться с Ryzen 7 9700X по цене за поток, инстанс с 16 vCPU и 64 ГБ RAM должен стоить меньше $149 в месяц — еще без учета дисков и исходящего трафика.
Две оговорки. Поток на ядре Zen 5 с турбочастотой до 5,5 ГГц и vCPU на серверном процессоре с более низкой частотой выполняют за секунду разный объем работы, поэтому цена за поток — отправная точка, а не окончательный вердикт. И ядра — не единственный критерий: EPYC 9354P дороже в пересчете на ядро, зато у него самая низкая цена за гигабайт памяти из трех, а еще ECC и порт 10 Гбит/с. Проверьте свою реальную нагрузку по нашему руководству по бенчмаркам.
Когда VPS по-прежнему лучший выбор
- Нагрузка совсем маленькая. Личному сайту, боту или небольшому VPN-серверу целая машина не нужна. Самый недорогой наш сервер в наличии стоит
$59/мес .; если ваша нагрузка помещается в небольшую ВМ, VPS обойдется дешевле. - Нагрузка импульсная или кратковременная. CI-раннер на час, нагрузочный тест, еженедельная обработка данных: почасовая или посекундная оплата выгоднее помесячного сервера, который простаивает.
- Вам нужно автомасштабирование. Если ваш стек автоматически масштабируется вслед за трафиком или сжимается до нуля, под эту модель подходят облачные инстансы; DediJet выставляет счета помесячно.
- Вы опираетесь на управляемые сервисы. Для некоторых команд управляемые базы данных, очереди и объектное хранилище на той же платформе стоят того, чтобы за них переплачивать.
- Вы хотите, чтобы сбои оборудования брала на себя платформа. Некоторые платформы при отказе оборудования перезапускают ВМ на другом хосте. Выделенный сервер — это одна машина: мы заменяем вышедший из строя компонент в течение 4 часов после диагностики, но настоящую доступность обеспечивают резервные копии и второй сервер.
Многие команды в итоге приходят к гибридной схеме: выделенные серверы — под стабильную базовую нагрузку, облачные инстансы — под всплески.
Чек-лист: что выбрать?
Скорее всего, bare metal для вас выгоднее, если верно большинство пунктов:
- Нагрузка держится круглосуточно на стабильном базовом уровне.
- Вы видите устойчивый steal time или джиттер задержки, который не объясняется вашим собственным кодом.
- Важна задержка дисков: базы данных, поиск, игровые миры, кэши сборки.
- Исходящий трафик — большая или непредсказуемая часть вашего счета.
- Вам нужен собственный гипервизор, свой ISO-образ или консоль внеполосного управления.
- Ваше предложение в пересчете на выделенный vCPU, с учетом дисков и исходящего трафика, дороже наших цен за поток.
- В команде есть человек, который уверенно администрирует серверы.
Оставайтесь на VPS, если вам нужны почасовая оплата, автомасштабирование или всего один-два vCPU.
Готовы сравнивать? Сопоставьте конфигурации на странице сравнения или начните с линеек «Производительные» и «Корпоративные». Оплата помесячная, без платы за установку, так что месячный тест на реальной нагрузке почти ни к чему не обязывает.
Серверы из этой статьи
- AMD Ryzen 7 9700X8 ядер / 16 потоков · 64 ГБ DDR5 · 2 × 1 ТБ NVMe · 1 Гбит/с$149/мес.В наличииЗаказать AMD Ryzen 7 9700X
- AMD Ryzen 9 9950X16 ядер / 32 потока · 128 ГБ DDR5 · 2 × 2 ТБ NVMe · 1 Гбит/с$269/мес.В наличииЗаказать AMD Ryzen 9 9950X
- AMD EPYC 9354P32 ядра / 64 потока · 384 ГБ DDR5 ECC · 2 × 3,84 ТБ NVMe · 10 Гбит/с$699/мес.В наличииЗаказать AMD EPYC 9354P