pengembangan-web-mp.com

Apakah mungkin untuk memasang mesin virtual di dalam mesin virtual lain



30
Tester101

Nesting VMs adalah sesuatu yang telah dilakukan untuk selamanya pada perangkat keras IBM Mainframe. Perangkat keras itu melakukan banyak hal untuk membuat prosesnya sangat sangat efisien. Anda dapat membuat VM bersarang ke kedalaman yang arbitrer dan berfungsi dengan sangat baik.

Perangkat keras PC baru-baru ini agak membuat ini hampir tidak mungkin. A document pada situs web VMware membahasnya, tetapi intinya adalah Anda dapat memiliki VM yang bersarang 2 dalam, tetapi hanya pada perangkat keras yang sangat modern yang mendukung virtualisasi perangkat keras yang sebenarnya (VT-x atau AMD-V), dan yang kedua VM kedalaman harus menjalankan gaya lama BT/virtualisasi gaya terjemahan biner. Ada juga pembatasan ketat pada monitor virtual yang dapat Anda jalankan pada tamu dalam.

Tak perlu dikatakan, itu tidak didukung dan saya berharap itu akan menjadi sangat flakey jika Anda melakukan sesuatu yang aneh bahkan jauh (seperti Hyper-V di bawah ESX). Dan kinerjanya tidak akan baik, terlepas dari apakah itu stabil.

27
chris

Jika Anda memerlukan beberapa spesifik, katakanlah legacy, sistem yang akan divirtualisasi Anda selalu dapat melakukannya dalam perangkat lunak, bersarang bukanlah suatu masalah saat itu. Coba qemu, saya melakukannya 2 level dengan itu, tetapi Anda bisa masuk lebih dalam, kinerja mungkin akan membuatnya tidak berguna, meskipun. BTW, arsitektur PC adalah pertanda yang dibuat oleh IBM, tetapi untuk penggunaan yang sama sekali berbeda dibandingkan dengan apa yang digunakan untuk hari ini.

2
MichaelS

Ya kamu bisa. Sebagai contoh, di Linux, Anda dapat menjalankan Xen dengan banyak VM yang menjalankan OpenVZ, VirtualServer atau sejenis lain dari sistem VM. Ini sangat mungkin dan juga sangat praktis tergantung pada tujuan Anda.

Salah satu alasan yang dapat saya pikirkan untuk melakukan ini adalah menjalankan beberapa server pada satu mesin fisik. Apakah Anda menjalankannya sebagai tingkat tunggal VM hierarki atau beberapa yang tergantung pada rencana isolasi sumber daya Anda.

2
sybreon

Saya tidak percaya sebagian besar paket virtualisasi akan memungkinkan Anda untuk menjalankan VM dalam VM. Saya tahu bahwa VMware akan memeriksa ketika diinstal untuk melihat apakah itu diinstal dalam VM, dan saya harap produk lain melakukan hal yang sama. Saya tidak berpikir instruksi CPU yang diperlukan akan disajikan melalui dari hypervisor yang berjalan pada perangkat keras melalui VM untuk mencapai VM kedua. Jika itu berhasil, Anda juga akan menambahkan overhead tanpa imbalan apa pun.

Adapun apakah itu praktis - saya tidak mengerti mengapa. Jika Anda membutuhkan VM lain, Anda bisa menjalankannya di sebelah yang sudah Anda jalankan. Saya tidak bisa membayangkan kasus di mana Anda harus memiliki VM berjalan di dalam VM lain. Biaya tambahan tambahan tanpa keuntungan proporsional dari beberapa sumber daya akan membuat ini tidak praktis.

1
baumgart

Iya. Bahkan ada cara untuk menjalankan VMware ESX/vSphere di mesin virtual. Saya tidak tahu mengapa Anda ingin berlatih, tetapi itu sudah dilakukan.

1
Kevin Kuphal

Ya, Anda BISA tetapi menyukai banyak hal tidak berarti Anda harus melakukannya. Saya telah melihat server ESX tervirtualisasi menjalankan mesin virtual yang memiliki server ESX virtual lain di dalamnya. Memang itu adalah tes hanya untuk melihat apakah itu bisa dilakukan (dan bisa) saya benar-benar tidak akan merekomendasikannya.

1
SQLChicken

Itu tergantung pada teknik virtualisasi. Jika Anda menggunakan solusi yang bukan virtualisasi "nyata" seperti UML maka Anda dapat menjalankannya di dalam, katakanlah, VMWare. Atau diri mereka sendiri dalam hal ini.

Instalasi berbasis UML dapat berjalan di dalam VM VMware dan instalasi berbasis UML lainnya (bahkan bersarang). Metrik kinerja tidak akan cantik!

1
David Spillett

Ya, itu mungkin tapi sangat lambat.

Ini sangat berguna jika Anda menyewa server dengan IP publik yang dialokasikan terbatas (yang tergantung misalnya pada alamat MAC Anda untuk tidak meracuni jaringan penyedia server Anda); dan Anda ingin VM IP Anda dijembatani untuk berkomunikasi langsung dengan internet. Jadi ketika Anda tidak dapat memiliki lebih dari, misalnya, 3 alamat IP publik, tetapi Anda memerlukan 10 VM, itu ide yang cukup bagus untuk memiliki VMs di global VM: Anda hanya akan menggunakan satu IP publik yang diberikan dan kemudian memiliki banyak VM sub-jembatan.

Tapi Anda benar-benar bisa menggunakan campuran bridge dan konfigurasi jaringan yang dirutekan, itu hanya lebih sulit tentang konfigurasi.

1
Yannovitch

Sejauh yang saya tahu itu tidak mungkin, tetapi VMware ESX dapat menjalankan di VMware Workstation misalnya. IMHO itu hanya baik untuk pengujian.

0
Saabi

Seperti banyak orang sudah siap mengatakan: tentu saja itu mungkin. Itu tergantung pada seberapa baik perangkat keras VM ditiru dan perangkat lunak virtualisasi apa yang Anda gunakan. VMWare Workstation, setidaknya, tidak ingin Anda melakukan virtualisasi.

Adapun jika itu praktis, mungkin kita harus mengajukan pertanyaan kembali kepada Anda: mengapa Anda perlu melakukan hal semacam itu? Apa yang salah dengan menjalankan dua VM secara berdampingan? Dan sampai tingkat berapa Anda bertanya apakah ini praktis? Artinya, jika Anda khawatir praktis mengatur dan mengkonfigurasi, mungkin tidak. Jika Anda lebih khawatir tentang penggunaan praktisnya, sekali lagi, saya tidak bisa memikirkan apa pun yang saya perlukan untuk melakukan ini kecuali saya mencari bug dalam perangkat lunak virtualisasi atau sesuatu.

0
mrduclaw
0
Massimo

Anda bisa, tetapi saya tidak merekomendasikannya.

Performa biasanya sangat populer di seluruh proses ini pada mesin "guest of the guest". Jika Anda benar-benar harus melakukan ini tanpa perangkat keras dan perangkat lunak khusus, semoga sukses untuk Anda. Namun, ini umumnya bukan praktik yang baik terutama dengan metode umum yang digunakan untuk mencapai virtualisasi.

Saya tahu bahwa jika Anda mencoba menjalankan VMWare dalam sistem VMWare, itu akan mengeluh dan tidak membiarkan Anda melakukannya. Saya tidak yakin tentang VirtualBox. Saya tahu beberapa orang yang, dengan alasan apa pun, menyebarkan kontainer Docker dalam kontainer Docker (atau begitulah kata mereka). Moral dari cerita ini adalah: walaupun mungkin, mungkin tidak pintar untuk melakukannya kecuali Anda benar-benar tahu apa yang Anda lakukan.

Saya pribadi tidak tahu ada kasus penggunaan aktual untuk ini di luar jaringan.

0