Те же принципы, по которым работает виртуализация, провайдеры и много много вещей.
Итак, имеем некоторый сервер, на котором исполняется гипервизор. Предположим, что на нем имеется 64Г памяти, и 8 ядерный процессор. В качестве клиентский виртуалок нарезаем 2Г памяти и 2 ядра. Так вот, абсолютно не значит, что мы не сможем запустить не более 32 машин. В любом случае - клиентская виртуалка использует свои ресурсы не на 100%, поэтому фактически виртуалка будет занимать столько памяти и столько ресурсов процессора, сколько требует выполняемая ей задача.
Поэтому количество виртуалок больше, чем 32. Сколько точно - надо смотреть, собственно чем администраторы хостингов и занимаются. Кроме того, очень часто в тарифах vps встречается строка - нагрузка на процессор не более XX%. Это тоже способ ограничения..
Аналогично и по ширине канала и по остальным ресурсам.
Из личного опыта - на работе на кластере из 10 серверов исполняется 180 виртуалок. Оверселлинг по памяти - примерно в 10 раз. И ничего, все работает корректно...