Возможно ли установить виртуальную машину внутри другой виртуальной машины?

Я играл с виртуальными машинами latley и задавался вопросом, могу ли я запустить виртуальную машину внутри виртуальной машины?
Это возможно?
Это практично?

27 голосов | спросил Tester101 28 J000000Tuesday09 2009, 17:50:26

9 ответов


23

Вложенные виртуальные машины - это то, что было сделано навсегда на оборудовании IBM Mainframe. Это оборудование делает много вещей, чтобы сделать процесс очень эффективным. Вы можете иметь ВМ, вложенные на произвольную глубину, и она работает очень хорошо.

Аппаратное обеспечение ПК совсем недавно сделало это едва ли возможным. документ на веб-сайте VMware обсуждает его, но суть в том, что вы можете иметь вложенные виртуальные машины 2, но только на очень современном оборудовании, поддерживающем истинную аппаратную виртуализацию (VT-x или AMD-V), а вторая глубина VM должна запускать виртуализацию стиля стиля BT /бинарного стиля. Существуют также серьезные ограничения на виртуальные мониторы, которые вы можете запустить на внутреннем гостевом компьютере.

Излишне говорить, что он не поддерживается, и я ожидаю, что он будет действительно чешуйчатым, если вы сделаете что-нибудь даже отдаленно странное (например, Hyper-V под ESX). И производительность не будет хорошей, независимо от того, стабильно ли она.

ответил chris 28 J000000Tuesday09 2009, 19:28:07
2

Если вам нужна какая-то конкретная, скажем, устаревшая система, которая будет виртуализирована, вы всегда можете это делать в программном обеспечении, тогда вложенность не является проблемой. Попробуйте qemu, я сделал это на 2 уровня с ним, но вы можете пойти глубже, но производительность, вероятно, сделает его бесполезным. BTW, архитектура ПК была номенклатурой IBM, но для совершенно разных применений по сравнению с тем, что она используется на сегодняшний день.

ответил MichaelS 1 J0000006Europe/Moscow 2012, 10:32:33
1

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

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

ответил baumgart 28 J000000Tuesday09 2009, 17:55:10
1

Да, вы МОЖЕТЕ, но так много всего не значит, что вам следует. Я видел виртуальный ESX-сервер, на котором работает виртуальная машина, в которой есть еще один виртуальный ESX-сервер. Конечно, это был тест, чтобы посмотреть, можно ли это сделать (и это может быть), я бы действительно не рекомендовал его.

ответил SQLChicken 28 J000000Tuesday09 2009, 17:57:11
1

Да, это возможно, но очень медленно.

Особенно полезно, если вы арендуете сервер с ограниченным распределенным публичным IP-адресом (который, например, зависит от вашего MAC-адреса, чтобы не отравить сеть вашего поставщика сервера); и что вы хотите, чтобы ваш виртуальный IP-адрес был подключен к Интернету напрямую. Поэтому, когда у вас не может быть больше, чем, например, 3 общедоступного IP-адреса, но вам нужно 10 виртуальных машин, довольно хорошая идея иметь виртуальные машины в глобальной виртуальной машине: вы будете использовать только один из ваших общедоступных IP-адресов, а затем имеют много подстроенных виртуальных машин.

Но вы действительно можете использовать сочетание моста и маршрутизируемой сетевой конфигурации, это просто более сложно в отношении конфигурации.

ответил Yannovitch 9 ThuEurope/Moscow2010-12-09T18:00:02+03:00Europe/Moscow12bEurope/MoscowThu, 09 Dec 2010 18:00:02 +0300 2010, 18:00:02
0

Насколько я знаю, это невозможно, но VMware ESX может запустить в VMware Workstation, например. ИМХО это полезно только для тестирования.

ответил Saabi 28 J000000Tuesday09 2009, 17:58:19
0

Как и многие люди, все готовы сказать: конечно, это возможно. Это зависит от того, насколько эмулируется аппаратное обеспечение VM и какое программное обеспечение для виртуализации вы используете. VMWare Workstation, по крайней мере, не хочет, чтобы вы ее виртуализировали.

Что касается, если это практично, может быть, мы должны задать вопрос вам: зачем вам это делать? Что не так, просто запустив две виртуальные машины рядом? И в какой степени вы спрашиваете, насколько это практично? То есть, если вы обеспокоены тем, что это практично настраивать и настраивать, возможно, нет. Если вас больше беспокоит это практическое использование, опять же, я не могу придумать ничего, что мне нужно сделать, если я не буду искать ошибки в программном обеспечении для виртуализации или что-то в этом роде.

ответил mrduclaw 28 J000000Tuesday09 2009, 18:05:45
0
ответил Massimo 16 FebruaryEurope/MoscowbTue, 16 Feb 2010 23:30:08 +0300000000pmTue, 16 Feb 2010 23:30:08 +030010 2010, 23:30:08
0

Вы можете, но я не рекомендую его.

Производительность обычно сильно ударяется в этом процессе на машине «гость гостя». Если вам действительно нужно сделать это без специального оборудования и программного обеспечения, удачи вам. Однако, как правило, это не очень хорошая практика, особенно с распространенными методами, используемыми для достижения виртуализации.

Я знаю, что если вы попытаетесь запустить VMWare в системах VMWare, он будет жаловаться и не позволит вам это делать. Я не уверен в VirtualBox. Я знаю нескольких людей, которые по какой-то причине развертывают контейнеры Docker в контейнерах Docker (или, как они говорят). Мораль истории: хотя это возможно, возможно, это не разумно делать, если вы действительно не знаете, что делаете.

Я лично не знаю какой-либо фактический прецедент для этого, помимо сетевого взаимодействия.

ответил Mythical Juggernaut 31 +03002015-10-31T07:40:49+03:00312015bEurope/MoscowSat, 31 Oct 2015 07:40:49 +0300 2015, 07:40:49

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132