Потеря ресурсов при виртуализации - PullRequest
3 голосов
/ 10 июня 2010

Я не уверен, что это место для записи, чтобы задать вопрос.Однако я надеюсь, что это так.

Когда я искал VPS сегодня, я пытался понять, как каждый контейнер будет работать в фоновом режиме.Принимая во внимание тот факт, что операционная система потребляет большую часть мощности и мощности в системе, отсутствие нескольких операционных систем на одном компьютере означает большую потерю ресурсов.

Например, если бы я использовал centOSна выделенной коробке, и она работала, скажем, 20 фоновых процессов на уровне ОС.Затем я иду и устанавливаю платформу виртуализации и устанавливаю еще 5 виртуальных машин centOS в той же системе, которые в точности совпадают с операционной системой хоста.Разве это не означает дублирование этих 20 процессов 6 раз?Так что внутренне переключение контекста происходит между 120 процессами вместо 20?

1 Ответ

2 голосов
/ 10 июня 2010

Во-первых, ваш вопрос затрагивает две темы: полная виртуализация и паравиртуализация. Большинство VPS предоставляют паравиртуализированную среду, которая (для очень широкого обобщения) виртуализирует только части ОС, она представляется пользователю как полностью виртуализированная система, но с точки зрения процессов, ввода-вывода, она может быть сильно различается в зависимости от ОС и способа реализации.

При работе с полной гостевой виртуализацией основной причиной и преимуществом виртуализации является использование недостаточно используемых ресурсов. Использование этой простоя емкости.

Например, 5 компьютеров, работающих со средним использованием ресурсов 15%, могут быть виртуализированы на одном сервере и использовать в среднем 75% ресурсов, при этом все еще остается 25% накладных расходов для обработки пиковой емкости.

Если ваши процессы могут сосуществовать в одной и той же системе, все они зависят от одних и тех же библиотек, параметры конфигурации и т. Д. Могут быть включены / выключены и перезапущены без влияния друг на друга - тогда вы можете «тратить» ресурсы на их виртуализацию.

Однако, если вам нужно перезагрузить / перезапустить сервер A, не влияя на сервер B, и они оба имеют довольно низкое использование, или два приложения зависят, например, от разных версий ядра - тогда это хороший кандидат для виртуализации.

Когда вы переходите к виртуализации на уровне предприятия и начинаете думать о вычислительных затратах в центах в час и долларах на гигабайт, тогда эти «издержки» ничто по сравнению с экономией и другими преимуществами. У вас нет дисков наполовину пустых, процессоры работают на холостом ходу, потраченные впустую ресурсы, конкуренция за то, кто что настраивает. Виртуальные хосты могут перемещаться между хостами в зависимости от нагрузки, отказоустойчивости, высокой доступности, автоматической подготовки.

...