vCPU (виртуальный процессор) – единица вычислительной мощности, которую гипервизор выделяет виртуальной машине. Как правило, один vCPU соответствует одному аппаратному потоку физического ядра процессора, но на одном физическом ядре могут работать несколько vCPU разных машин по очереди.
Как это работает
- Гипервизор распределяет время физических ядер между vCPU всех виртуальных машин.
- Переподписка (overcommit) – ситуация, когда суммарное число vCPU больше числа физических потоков; она допустима для нагрузок, которые не используют процессор постоянно.
- При высокой переподписке растёт время ожидания процессора, и приложения начинают работать медленнее.
- Производительность одного vCPU зависит от модели процессора, частоты и настроек гипервизора, поэтому у разных провайдеров она может отличаться.
Зачем это заказчику
В облачных тарифах (IaaS, ГЕОП, частное облако) стоимость виртуальной машины рассчитывается в том числе по числу vCPU. Требования к ресурсам в документации ПО (например, «4 vCPU, 16 ГБ RAM») задают минимальный размер машины. Неверная оценка приводит либо к переплате, либо к медленной работе системы.
Что важно при выборе и закупке
- Уточните у провайдера, какие процессоры используются и есть ли гарантированная доля ресурсов (выделенные ядра или ограничение переподписки).
- Сравнивайте тарифы с учётом реальной производительности: проведите нагрузочное тестирование.
- Проверьте, как лицензируется прикладное ПО: по vCPU, по физическим ядрам хоста или по пользователям. Для ряда СУБД и платформ это существенно влияет на стоимость.
- Для нагрузок с жёсткими требованиями к задержкам выбирайте выделенные ядра или выделенный сервер.
При переносе системы с физических серверов в облако сопоставляйте не только число ядер, но и частоту и поколение процессоров: одинаковое число vCPU не гарантирует одинаковую производительность.