virshakan memungkinkan Anda untuk mengedit, mengekspor, dan mengimpor definisi XML untuk server Anda. Saya akan menggunakan virt-cloneuntuk menghasilkan file gambar kloning, dan mengekspor XML. Agar aman saya akan menghapus konfigurasi klon dari server asli.
Yang akan membuat salinan this-vm, bernama that-vm, dan menangani duplikasi perangkat penyimpanan. Tidak ada yang baru di sini kecuali detail.
Lebih penting lagi, Apa yang dikatakan FAQ adalah bahwa deskripsi domain XML tidak dapat langsung diedit, Anda harus melalui libvirt. Untuk menyelesaikan langkah-langkah yang diambil oleh virt-cloneperintah, Anda dapat:
source_vm=vm_name
new_vm=new_vm_name
# You cannot "clone" a running vm, stop it. suspend and destroy
# are also valid options for less graceful cloning
virsh shutdown "$source_vm"
# copy the storage.
cp /var/lib/libvirt/images/{"$source_vm","$new_vm"}.img
# dump the xml for the original
virsh dumpxml "$source_vm" > "/tmp/$new_vm.xml"
# hardware addresses need to be removed, libvirt will assign
# new addresses automatically
sed -i /uuid/d "/tmp/$new_vm.xml"
sed -i '/mac address/d' "/tmp/$new_vm.xml"
# and actually rename the vm: (this also updates the storage path)
sed -i "s/$source_vm/$new_vm" "/tmp/$new_vm.xml"
# finally, create the new vm
virsh define "/tmp/$new_vm.xml"
virsh start "$source_vm"
virsh start "$new_vm"
Ini juga berfungsi untuk menyalin melalui VM ke host lain: gunakan sftp alih-alih cp, (mungkin) ubah jalur gambar sebelum 'mendefinisikan' vm baru dan sftp juga the-vm.xml ke host lain.
Andreas Florath
Terima kasih untuk ini, menyelamatkan saya banyak waktu. Masalah yang saya miliki adalah mengkloning vs membuat yang baru, karena jika saya membuat node baru, versi paket akan tidak sinkron dengan node lain yang menggunakan mirror lokal.
Mike Purcell
Apakah virt-clonemenangani enkripsi disk lengkap dengan benar? Artinya, akankah ia meminta saya mendekripsi sebelum melakukan hal itu?
seorang pembuat kode
Saya pikir itu sed -i "s/$source_vm/$new_vm" "/tmp/$new_vm.xml"harus membaca sed -i "s/$source_vm/$new_vm/" "/tmp/$new_vm.xml"atau setidaknya pada sed turunan debian saya tentang trailing yang hilang /. Terima kasih atas informasinya juga, klon virsh saya tidak berfungsi sama sekali.
nomor
2
Selain "virt-clone" Anda dapat menduplikasi VM dengan cara ini:
Pastikan bahwa VM yang ada (akan diduplikasi) dimatikan.
lakukan "sudo virsh dumpxml <domid>" dari VM yang ada, dan simpan file output xml.
Ubah tag <name> di bawah tag <domain>.
Gunakan "uuidgen" untuk menghasilkan ID unik baru, dan menggunakannya untuk memodifikasi tag <uuid> yang ada.
Buat salinan dari gambar virtual qcow yang ada yang digunakan VM, (biasanya disimpan di / var / lib / libvirt / images, tetapi untuk memastikan hanya membaca file XML Anda untuk lokasi yang tepat). Perintahnya adalah "sudo cp /var/lib/libvirt/images/xxx.qcow2 yyyy.qcow2", dan isi file baru yyyy.qcow2 dalam file XML.
Selain dari nama VM pseudo, ini identik dengan perintah dari jawaban tiga tahun - tetapi tidak memiliki informasi tambahan dari jawaban itu.
G-Man Mengatakan 'Reinstate Monica'
0
virt-clone --auto-clone tampaknya tidak bermain bagus dengan LVM. Saya mengharapkannya untuk membuat snapshot dan menggunakannya, tetapi malah menyalin semua data.
Lebih baik melakukan rute dumpxml / define; dan ingat untuk memasang sistem file root klon dan mengubah alamat IP dan nama host dengan benar sebelum memulai yang asli dan klon.
virt-clone
menangani enkripsi disk lengkap dengan benar? Artinya, akankah ia meminta saya mendekripsi sebelum melakukan hal itu?sed -i "s/$source_vm/$new_vm" "/tmp/$new_vm.xml"
harus membacased -i "s/$source_vm/$new_vm/" "/tmp/$new_vm.xml"
atau setidaknya pada sed turunan debian saya tentang trailing yang hilang /. Terima kasih atas informasinya juga, klon virsh saya tidak berfungsi sama sekali.Selain "virt-clone" Anda dapat menduplikasi VM dengan cara ini:
sumber
Tampaknya kloning adalah jalan yang harus ditempuh.
Saya mencoba menduplikasi XML tetapi tidak akan muncul di bawah virt-manager.
Saya masih bertanya-tanya bagaimana saya bisa mentransfer XML + .img ke sistem baru yang mengatakan ...
sumber
Perintah berikut ini berfungsi untuk saya (Harus mematikan VSA / Vm sebelum menjalankan perintah)
sumber
virt-clone --auto-clone tampaknya tidak bermain bagus dengan LVM. Saya mengharapkannya untuk membuat snapshot dan menggunakannya, tetapi malah menyalin semua data.
Lebih baik melakukan rute dumpxml / define; dan ingat untuk memasang sistem file root klon dan mengubah alamat IP dan nama host dengan benar sebelum memulai yang asli dan klon.
sumber