Saya mencoba untuk menambahkan file berbasis disk ke server virtual KVM yang sedang berjalan. Saya telah membuat disk baru dari awal menggunakan perintah
dd of=/home/cloud/vps_59/test.img bs=1 seek=5G count=0
dan saya berharap untuk menambahkannya ke tamu dengan melakukan ini di shell virsh:
virsh # attach-disk vps_59 /home/cloud/vps_59/test.img \
vdd --driver=file --subdriver=raw
Definisi XML dari domain tersebut kemudian menjadi:
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/home/cloud/vps_59/root.img'/>
<target dev='vda' bus='virtio'/>
</disk>
<disk type='file' device='disk'>
<driver name='file' type='raw'/>
<source file='/home/cloud/vps_59/test.img'/>
<target dev='vdd' bus='virtio'/>
</disk>
Seperti yang Anda lihat, nama pengemudi menjadi salah, seharusnya begitu driver name='qemu'
seperti vda
disk yang ada . Saya sudah mencoba --drive=qemu
tetapi menyatakan tidak didukung.
Kedua, saya hanya "melihat" drive yang baru ditambahkan setelah saya reboot mesin virtual yang menjalankan Ubuntu 10.04.4 LTS. Bagaimana saya bisa membuat drive "hotplug"? Saya ingin mesin virtual "melihat" drive baru segera tanpa reboot.
virtualization
virtual-machines
storage
kvm-virtualization
libvirt
Daniele Testa
sumber
sumber
qemu-img
sebagai gantidd
- argumennya menjadi lebih alami dan melakukan hal yang sama:qemu-img create test.img 5G
Jawaban:
Saya ingin memulai dengan catatan bahwa Anda harus menghindari penggunaan
virsh attach-disk
dengan jumlah opsi yang terbatas. Sebagai gantinya, saya sarankan untuk menentukan format disk persis yang Anda inginkan dalam file XML sementara yang terpisah atau dengan menggunakan aplikasi GUI virt-manager (untuk yang terakhir, lewati langkah pertama).Buat file sementara dengan definisi disk seperti ini di bawah ini.
sesuaikan properti agar sesuai dengan situasi Anda
Kiat: Mengintip konfigurasi domain XML Anda saat ini dan menyalin
<disk>
bagian dari sana.Sekarang, sebelum menambahkan disk ke domain saat ini, pastikan modul kernel hotplug yang diperlukan dimuat di tamu.
Beberapa distribusi Linux seperti CentOS / RHEL / Fedora baru-baru ini memiliki bawaan di dalam kernel. Dalam hal ini, periksa
CONFIG_HOTPLUG_PCI_ACPI
. Jika sudahy
, maka Anda sudah siap dan Anda dapat melewati langkah ini.Pertimbangkan untuk menambahkan kedua modul ini
/etc/modules
jika Anda ingin mereka dimuat saat boot secara default.Tambahkan disk ke VM yang sedang berjalan menggunakan
Secara opsional, tambahkan
--persistent
opsi untuk membiarkan Libvirt memperbarui definisi XML domain 'persisten'.Akhirnya, periksa di dalam tamu apakah disk itu memang dimasukkan dengan hotplug. Kernel harus dipicu, karena dapat diperiksa dengan
dmesg
:Dalam contoh di atas saya telah menambahkan disk seperti
vdb
dengan dua partisi di tabel partisi.Referensi
sumber
--persistent
untuk memastikan konfigurasi ini tidak hilang ketika Anda mematikan mesin virtual?