it-swarm-ru.tech

Запуск 100 виртуальных машин на одном сервере VMWare Host

Я много лет использую VMWare, работаю с десятками производственных серверов с очень небольшим количеством проблем. Но я никогда не пытался разместить более 20 виртуальных машин на одном физическом хосте. Вот идея:

  1. Урезанная версия Windows XP может вместить 512 МБ RAM и 4 ГБ дискового пространства).
  2. За 5000 долларов я получаю 8-ядерный компьютер класса сервера с 64 ГБ RAM и четырьмя SAS зеркалами).
  3. Поскольку 100 вышеупомянутых виртуальных машин вписываются в этот сервер, стоимость моего оборудования составляет всего $ 50 за VM, что очень приятно (дешевле, чем аренда виртуальных машин в GoDaddy или любых других хостинговых магазинах).

Я хотел бы посмотреть, сможет ли кто-нибудь достичь такой масштабируемости с помощью VMWare? Я сделал несколько тестов и столкнулся со странной проблемой. VM производительность начинает резко снижаться после запуска 20 виртуальных машин. В то же время сервер хоста не обнаруживает узких мест в ресурсах (диски простаивают на 99%, загрузка ЦП ниже 15%). и там много свободной оперативки).

Буду признателен, если вы поделитесь своими историями успеха в масштабировании VMWare или любой другой технологии виртуализации!

24
Dennis Kashkin

Да, ты можешь. Даже для некоторых рабочих нагрузок Windows 2003 достаточно 384 МБ, поэтому 512 МБ - довольно хорошая оценка, пусть и немного высокая. RAM не должно быть проблемой, как и процессор.

100 виртуальных машин немного крутые, но это выполнимо, особенно если виртуальные машины не будут очень заняты. Мы легко запускаем 60 серверов (Windows 2003 и RHEL) на одном сервере ESX.

Предполагая, что вы говорите о VMware ESX, вы также должны знать, что может перегружать память. Виртуальные машины почти никогда не используют свой полностью выделенный объем памяти, поэтому ESX может передать больше, чем доступное количество RAM) на виртуальные машины, и запустить больше виртуальных машин, чем фактически "официально" имеет RAM для.

Скорее всего, вашим узким местом будет не CPU или RAM, а IO. VMware может похвастаться огромным количеством операций ввода-вывода в секунду в своем маркетинге, но когда дело доходит до толчка, конфликты резервирования SCSI и ограниченная пропускная способность остановят вас на месте, прежде чем вы приблизитесь к хвастовству IOPS, которое VMware предлагает.

В любом случае, мы не испытываем снижения производительности в 20 VM. Какую версию ESX вы используете?

15
wzzrd

Одной из основных проблем такой большой среды является предотвращение стихийных бедствий и защита данных. Если сервер умирает, то вместе с ним умирает 100 виртуальных машин.

Вам необходимо спланировать отказоустойчивость виртуальных машин и запланировать управление дополнительными виртуальными машинами, которое защитит виртуальные машины в случае сбоя. Разумеется, такой вид избыточности означает увеличение затрат, и, вероятно, именно поэтому такие затраты часто не утверждаются до тех пор, пока их преимущества не будут видны на практике (из-за их отсутствия).

Помните также, что хост VM) - это только одна из нескольких точек отказа:

  • Сеть - что делать, если VM Сетевая карта хоста выходит из строя?
  • Память - что делать, если часть VM Память хоста выходит из строя?
  • CPU - если умирает ядро ​​CPU, что происходит с виртуальными машинами?
  • Питание - есть только один или два кабеля питания?
  • Порт управления - предположим, вы не можете получить доступ к управлению хостом виртуальной машины?

Это лишь некоторые из них: массивная VM инфраструктура требует пристального внимания к предотвращению потери данных и предотвращению VM потери).

11
Mei

Нет никаких заявлений о его жизнеспособности в производственном процессе, но есть очень интересная демонстрация NetApp, где они предоставляют 5440 XP десктопы на 32 хостах ESX (это 170 на хост) за 30 минут, используя очень мало дисковое пространство из-за дедупликации против общих VM изображений

http://www.youtube.com/watch?v=ekoiJX8ye38

Я предполагаю, что ваши ограничения исходят от дисковой подсистемы. Вы, кажется, учли использование памяти и процессора соответственно.

4
Kevin Kuphal

Никогда не делал этого - но я обещаю, что вы потратите гораздо больше, чем на хранилище, чтобы получить достаточное количество IOP для поддержки столько виртуальных машин, сколько вы будете на серверном оборудовании. Вам потребуется много IOP, если все 100 из них активны одновременно. Не звучит негативно, но вы также подумали, что вы кладете много яиц в одну корзину?

3
Jeff Hengesbach

Больше всего меня беспокоит конфликт ЦП с 100 ВМ на одном хосте. Вы должны помнить, что процессор НЕ виртуализирован, поэтому каждой машине придется ждать доступа к процессору. Вы можете начать видеть конкуренцию, посмотрев ESXTOP. Мне сказали, что более 5 в поле% RDY очень плохо для инженеров VMWare.

По своему опыту я видел около 30-40 серверов, работающих на одном хосте (не слишком много).

1
Zypher

У меня было 10 хостов на VMWare Server 1.0.6 (под Windows 2003), и он постоянно сталкивался с проблемами IO) (и если ночные сборки когда-либо перекрывались с чем-то другим, то они есть проблемы). После обновления с Windows до ESXi U3 мы обнаружили, что наши проблемы с производительностью исчезли (ночные сборки больше не давали ошибок).

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

Я бы порекомендовал исследовать/протестировать наличие SWAP-файлов на разных дисках, если у вас возникнут проблемы.

1
Walter

Если вы собираетесь это сделать, то я настоятельно рекомендую вам использовать новые процессоры Intel Nehalem серии Xeon 55xx - они предназначены для работы виртуальных машин, и их дополнительная пропускная способность памяти также очень поможет. О, и если вы можете использовать больше, меньшие диски, чем несколько, большие, - это очень поможет. Если вы можете использовать ESX v4 более 3.5U4 тоже.

1
Chopper3

У меня есть 20 с чем-то XP виртуальных машин, работающих по 512 МБ ОЗУ на компьютере с 16 ГБ ОЗУ. Меньше, чем это, и они меняются на диск, и это дает узкое место. Это всегда активные XP виртуальные машины.

VMware и его функция OverCommit должны позволять вам выдвигать больше оперативной памяти на каждый XP компьютер. Аналогичная машина будет использовать одни и те же страницы, что может сократить объем записи на диск. Это то, что я хотел бы изучить для нашей установки, чтобы попытаться добавить больше машин, так как наши XP виртуальные машины делают 10-20 мг непрерывного дискового трафика.

1
Ryaner

Мы не смогли набрать 100 счастливых гостей на сервере VMWare, но потом обнаружили, что ESXi работает намного лучше. Итак, похоже, что 100 XP vms не проблема, если вы используете ESXi и приличный сервер (несколько зеркал диска для распределения ввода-вывода, пара микросхем I7 и 64 ГБ ОЗУ). Нет видимой задержки для конечных пользователей, и ресурсы хоста не исчерпаны (самая горячая - это процессор, но обычно она простаивает как минимум на 70%).

PS. Этот вопрос был опубликован мной еще тогда, когда мы боролись с VMWare Server.

1
Dennis Kashkin

В прошлый раз, когда я проверял, VMware рекомендует использовать не более 4 виртуальных машин на каждое ядро ​​обработки для ESX, при этом предполагается использование одного виртуального ЦП на виртуальную машину.

Это предполагает, что накладные расходы менеджмента становятся фактором.

Мне очень интересно посмотреть, сможете ли вы достичь фактора 4x на 8-ядерном процессоре.

0
Hans Malherbe