Virtualisasi: Tamu di tamu?

9

Apakah masuk akal untuk menjalankan mesin virtual dengan tamu "master",
dan di tamu master itu menjalankan banyak tamu lain?

Adakah yang menguji ini? Apakah itu mungkin?
Adakah cara yang lebih baik untuk mencapai tujuan saya? (Baca terus.)
(Saya mencari Google "guest in guest" dan tidak menemukan apa pun)

Apa yang ingin saya lakukan : Saya ingin mengatur dan menguji berbagai jaringan virtual, dengan database dan server aplikasi, dan menguji berbagai firewall, server DNS, konfigurasi server database, dll.

Saya bisa melakukan ini dengan menjalankan tamu secara langsung di komputer host saya, tetapi kemudian saya mungkin perlu memodifikasi konfigurasi jaringan pada host saya (misalnya mengkonfigurasi dnsmasq ?), Tergantung pada pengaturan jaringan apa yang akan saya uji. Saya juga harus memulai setiap tamu secara individual. Sedangkan jika semua tamu berlari di dalam tamu utama, maka saya dapat mengkonfigurasi jaringan pada tamu utama itu, dan saya hanya perlu memulai dan menghentikan tamu utama itu, dan mengambil snapshotnya, untuk memulai & menghentikan & memotret semua tamu yang berjalan di dalamnya secara implisit .

(Saya akan memiliki banyak tamu utama, mungkin hanya satu berlari pada suatu waktu.)

Saya menggunakan Ubuntu 11.4 dan KVM, dengan dukungan virtualisasi perangkat keras (AMD-V).
Apakah Anda pikir tamu-tamu akan mendapat manfaat dari virtualisasi?

Pembaruan : Saya seharusnya mencari Google untuk "Nested Virtualization" bukan "guest in guest". Sekarang saya menemukan banyak tautan :-) Misalnya contoh ini benar-benar memigrasi VM yang sedang berjalan dari mesin host ke host VM bersarang: VMotion dari ESX fisik ke ESX 4 virtual.
Anda yang menjawab, terima kasih telah menyebutkan "Nested Virtualisasi": - )

Pembaruan : Info kinerja, untuk prosesor AMD, dari 2008 : [...] hingga sekarang, ketika kvm memvirtualisasi prosesor, tamu tersebut melihat cpu yang mirip dengan prosesor host, tetapi tidak memiliki ekstensi virtualisasi. Ini berarti bahwa Anda tidak dapat menjalankan hypervisor yang membutuhkan ekstensi virtualisasi ini di dalam tamu (Anda masih dapat menjalankan hypervisor yang tidak bergantung pada ekstensi ini, seperti VMware, tetapi dengan kinerja yang lebih rendah). Dengan tambalan baru, cpu tervirtualisasi menyertakan ekstensi virtualisasi; ini berarti tamu dapat menjalankan hypervisor, termasuk kvm, dan memiliki tamu sendiri. (terima kasih "wzzrd")

Pembaruan : Info kinerja pada prosesor Intel, dari 2011 : "Tidak ada dukungan untuk virtualisasi bersarang dengan intel vmx dalam versi kvm saat ini di repositori Ubuntu. Dengan tambalan terbaru untuk kvm dimungkinkan, tetapi masih ada pengembangan"

KajMagnus
sumber
3
Siapkan top spinning.
nedm
Virtualisasi bersarang dimungkinkan, tetapi Anda menggandakan hukuman kinerja terkait CPU Anda, buang RAM karena dalam konfigurasi default, baik tamu host, tamu master dan "tamu" akan saling cache data yang sama beberapa kali, dan kinerja IO akan menjadi bencana. untuk data yang tidak di-cache.
André Borie

Jawaban:

3
  1. Ini mungkin, baca lebih lanjut di sini - http://blog.jasonruiz.com/2011/01/24/kvm-nested-virtualization-support/

  2. tujuan saat ini adalah pengujian bersarang, tapi saya pikir itu dimaksudkan untuk menguji hypervisor bukan database, dns, dll ...

untuk menguji layanan tersebut saya pikir virtualisasi "normal" akan dilakukan.

Anda dapat memiliki beberapa jaringan virtual yang berbeda, dengan layanan dhcp / dns / routing yang berbeda.

John
sumber
7

Apa yang ingin Anda lakukan adalah mungkin, hanya saja tidak benar-benar praktis dari sudut pandang kinerja.

user9517
sumber
2
Ringkas, to the point and true :)
wzzrd
6

ESXi dapat melakukan virtualisasi sendiri. Jadi, Anda dapat menjalankan ESXi sebagai tamu di ESXi (atau ESX dalam hal ini).masukkan deskripsi gambar di sini

Petunjuk ditemukan di sini

JamesBarnett
sumber
3

Saya tidak tahu tentang hypervisor lain, tapi itu pasti mungkin dengan ESX / i, seperti yang dibahas di sini . Juga, sudah pasti tidak mungkin dengan Hyper-V, seperti yang dibahas di sini .

Namun, jika ini memungkinkan, itu sama sekali tidak didukung dan juga sangat tidak berguna, kecuali untuk tujuan pengujian. Saya pribadi melakukannya dengan ESX untuk menguji cluster VMware, yang membutuhkan setidaknya dua host ESX, mesin Pusat Virtual dan beberapa penyimpanan bersama; Saya tidak memiliki lebih dari satu server atau penyimpanan "nyata" yang tersedia pada saat itu, jadi saya menggunakan host ESX virtual dengan disk virtual bersama (seperti yang akan saya lakukan untuk menguji cluster Microsoft). Itu berhasil, dan itu juga tidak terlalu buruk pada kinerja. Tapi saya tidak bisa memikirkan alasan apa pun di dunia untuk menggunakan pengaturan seperti ini di lingkungan produksi.

Massimo
sumber
1
Ini adalah contoh yang menarik. Saya akan menggunakan VM bersarang untuk pengujian juga, seperti Anda, bukan untuk produksi.
KajMagnus
0

kvm dalam kvm tidak akan berfungsi, meskipun tamu-tamu dalam dapat berjalan di qemu murni, dalam mode emulasi.

Saya akan meninggalkan VM di satu host, tanpa hal-hal rumit

dyasny
sumber
Tidak Benar. Sangat mungkin dan sudah sejak 2008 atau lebih. Tautan: linux-kvm.com/content/kvm-nested-virtualization-works
wzzrd
1
ya, dengan set instruksi CPU yang sangat spesifik, dan tempat produksi atau lingkungan pengujian yang serius. T / S ingin menguji konfigurasi jaringan dan layanan, bukan hypervisor tambahan, jadi mengapa rumit sejauh ini? Terutama karena alat manajemen standar. Anda benar karena akun kvm dalam kvm dapat bekerja, dalam kondisi tertentu, itu adalah kesalahan saya, tetapi untuk menjawab pertanyaan awal - ini bukan ide terbaik di bawah hypervisor apa pun
dyasny
"ini bukan ide terbaik di bawah hypervisor apa pun": sekarang itu benar :) di sini, dapatkan upvote :)
wzzrd
LOL, bukan berarti upvote yang penting :)
dyasny
0

KVM mungkin bukan pilihan terbaik untuk tujuan Anda, Anda harus mencoba Virtualbox.

Dengan Virtualbox, Anda dapat membuat mesin virtual di dalam mesin virtual, dan alat-alat jaringan sangat nyaman.

erickzetta
sumber
1
Sampah. KVM akan cukup sempurna.
wzzrd
@ wzzrd Saya tidak mengatakan KVM tidak cukup. Saya katakan Virtualbox mungkin pilihan yang lebih baik, dalam hal ini, karena ini adalah konfigurasi yang kompleks.
erickzetta
Sebenarnya, saya suka mengkonfigurasi VM KVM dengan virsh:-)
KajMagnus
dukungan untuk VMX, terjemahan alamat tingkat kedua (SLAT), para-ops, halaman bersarang, mesin dalam mesin - ini adalah fitur yang diperkenalkan pada versi 2.0 VirtualBox. virtualbox.org/wiki/Changelog-2.0
Bent Cardan
0

Sudahkah Anda memeriksa XenServer? Versi beta baru disebut "XenServer boston" Baca lebih lanjut di sini:

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

Dalam catatan rilis, Anda akan melihat yang berikut:

Dukungan Alat Virtual. Di dalam XenCenter Anda dapat membuat peralatan virtual multi-VM (vApps), dengan hubungan antara VM untuk digunakan dengan urutan boot selama Pemulihan Situs. vApps dapat dengan mudah diimpor dan diekspor menggunakan standar Open Virtualization Format (OVF)

Menggunakan fitur ini dikombinasikan dengan Virtual Lans, Anda akan dapat mencapai apa yang Anda inginkan. Saya tidak positif, tetapi saya yakin Anda juga dapat membuat snapshot dari semua Vm di Virtual Appliance sekaligus.

Tolong beri tahu saya jika Anda memiliki pertanyaan lebih lanjut tentang XenServer (saya menggunakannya 2x setiap hari)

portforwardpodcast
sumber
-1

Apakah mungkin atau tidak tidak relevan. Itu tidak masuk akal. Anda mendapatkan apa-apa dengan bersarang VM, sambil kehilangan banyak.

John Gardeniers
sumber
Sebenarnya, / beberapa pengembang KVM berpikir itu masuk akal: di mailing list KVM dev, ada utas ini dengan tambalan untuk dukungan virtualisasi bersarang. Saya pikir para pengembang tampaknya cukup senang, jika Anda terus membaca beberapa balasan.
KajMagnus
Pengembang non-KVM yang suka virtualisasi bersarang: "Penggunaan lain adalah memiliki beberapa jaringan tervirtualisasi di dalam satu mesin. Setiap jaringan akan memiliki konfigurasi host yang berbeda. Saya sudah menunggu ini." (Dari sini .)
KajMagnus
@KajMagnus, hanya karena orang menginginkannya, bukan berarti itu masuk akal. Beberapa orang sederhana tidak dapat melihat kayu untuk hutan.
John Gardeniers
Masuk akal untuk skenario pengujian. Ingin menggunakan penyebaran uji hypervisor hanya untuk melihat bagaimana fitur tertentu berperilaku dalam versi baru? Putar VM. Anda benar bahwa itu tidak banyak digunakan untuk penggunaan khusus OP.
Chris Thorpe
Orang-orang IBM VM biasa melakukan ini setiap saat ketika mengembangkan versi baru VM. Ada kertas bagus di atasnya (mis. Hal. 28), jika Anda tertarik.
fisi