Назад | Перейти на главную страницу

Виртуализация: гость в гостях?

Есть ли смысл запускать виртуальную машину с "главным" гостем,
а в этом хозяине-госте запускается много других гостей?

Кто-нибудь это тестировал? Это вообще возможно?
Есть ли лучшие способы достичь моих целей? (Читай дальше.)
(Я погуглил "гость в гостях" и ничего не нашел)

Что я хочу сделать: Я хотел бы настроить и протестировать различные виртуальные сети с серверами баз данных и приложений, а также протестировать различные брандмауэры, DNS-серверы, конфигурации серверов баз данных и т. Д.

Я мог бы сделать это, запустив гостей прямо на моем хост-компьютере, но тогда мне может потребоваться изменить конфигурацию сети на моем хосте (например, настроить dnsmasq?), в зависимости от того, какую сеть я собираюсь протестировать. Мне также нужно запускать каждого гостя индивидуально. Принимая во внимание, что если все гости работают внутри главного гостя, я могу настроить сеть на этом главном госте, и мне нужно только запустить и остановить этого главного гостя и сделать его снимки, чтобы неявно запускать, останавливать и делать снимки всех гостей, работающих внутри него. .

(У меня было бы много хозяев-гостей, возможно, только по одному за раз.)

Я использую Ubuntu 11.4 и KVM с поддержкой аппаратной виртуализации (AMD-V).
Как вы думаете, "гости в гостях" выиграют от виртуализации?

Обновить: Мне нужно было погуглить "Вложенная виртуализация", а не "гости в гостевой системе". Теперь я нахожу много ссылок :-) Например, этот пример фактического переноса работающей виртуальной машины с хост-машины на вложенный виртуальный хост: VMotion с физического ESX 4 на виртуальный ESX 4
Вы, кто ответил, спасибо за упоминание «Вложенной виртуализации» :-)

Обновить: Информация о производительности процессоров AMD с 2008 г.: [...] до сих пор, когда kvm виртуализирует процессор, гость видит процессор, который похож на процессор хоста, но не имеет расширений виртуализации. Это означает, что вы не можете запустить гипервизор, которому необходимы эти расширения виртуализации в гостевой системе (вы все равно можете запускать гипервизоры, которые не полагаются на эти расширения, например VMware, но с меньшей производительностью). С новыми исправлениями виртуализированный ЦП действительно включает расширения виртуализации; это означает, что гость может запускать гипервизор, включая kvm, и иметь своих собственных гостей. (спасибо "wzzrd")

Обновить: Информация о производительности процессоров Intel с 2011 г.: «В текущей версии kvm в репозиториях Ubuntu нет поддержки вложенной виртуализации с Intel vmx. С новейшими исправлениями для kvm это возможно, но они все еще находятся в разработке»

То, что вы хотите сделать, возможно, но это не совсем практично с точки зрения производительности.

ESXi может виртуализировать себя. Таким образом, вы можете запускать ESXi в качестве гостя на ESXi (или ESX, если на то пошло).

Направления найдены Вот

  1. Возможно, подробнее здесь - http://blog.jasonruiz.com/2011/01/24/kvm-nested-virtualization-support/

  2. текущая цель вложенного virt - тестирование, но я думаю, что он предназначен для тестирования гипервизоров, а не баз данных, DNS и т. д.

Думаю, для тестирования таких сервисов подойдет «обычная» виртуализация.

у вас может быть несколько разных виртуальных сетей с разными службами dhcp / dns / routing.

Я не знаю о других гипервизорах, но это определенно возможно с ESX / i, как обсуждалось Вот. Кроме того, это определенно не возможно с Hyper-V, как обсуждалось Вот.

Однако там, где это возможно, он полностью не поддерживается, а также совершенно бесполезен, кроме как для целей тестирования. Я лично сделал это с ESX, чтобы протестировать кластер VMware, для которого требовалось как минимум два хоста ESX, машина Virtual Center и некоторое общее хранилище; На тот момент у меня не было более одного сервера или какого-либо «реального» хранилища, поэтому я использовал виртуальные хосты ESX с общим виртуальным диском (точно так же, как я бы сделал для тестирования кластера Microsoft). Это сработало, да и с производительностью было не так уж плохо. Но я не могу придумать какой-либо причины в мире использовать такую ​​установку в производственной среде.

kvm внутри kvm не будет работать, хотя внутренние гости могут работать на чистом qemu в режиме эмуляции.

Я бы оставил виртуальные машины на одном хосте без чрезмерного усложнения

KVM, вероятно, не лучший вариант для ваших целей, вам следует попробовать Virtualbox.

С Virtualbox вы можете превратить виртуальную машину в виртуальную машину, а сетевые инструменты очень удобны.

Вы проверяли XenServer? Новая бета-версия называется «XenServer boston». Подробнее об этом здесь:

http://blogs.citrix.com/2011/05/18/xenserver-boston-beta-program/

В примечаниях к выпуску вы увидите следующее:

Поддержка виртуального устройства. В XenCenter вы можете создавать виртуальные устройства с несколькими виртуальными машинами (vApps) с взаимосвязями между виртуальными машинами для использования с последовательностью загрузки во время Site Recovery. vApps можно легко импортировать и экспортировать с помощью стандарта Open Virtualization Format (OVF).

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

Пожалуйста, дайте мне знать, если у вас возникнут дополнительные вопросы о XenServer (я использую его дважды в день)

Возможно это или нет, не имеет значения. Это просто бессмысленно. Вы абсолютно ничего не получите, вложив виртуальные машины, и при этом много потеряете.