Назад | Перейти на главную страницу

KVM и libvirt: как настроить новое дисковое устройство на существующую виртуальную машину?

У меня есть сервер Ubuntu 9.04 с двумя виртуальными машинами. В /etc/libvirt/qemu/machine1.xml два дисковых устройства определены следующим образом:

<devices>
 <emulator>/usr/bin/kvm</emulator>
 <disk type='file' device='disk'>
   <source file='/vserver/machine1/disk0.qcow2'/>
   <target dev='hda' bus='ide'/>
 </disk>
 <disk type='file' device='disk'>
   <source file='/vserver/machine1/disk1.qcow2'/>
   <target dev='hdb' bus='ide'/>
 </disk>

Мне нужно больше места для хранения хотя бы на одном из устройств, и я подумал о добавлении третьего устройства hdc, просто добавив его в том же стиле, что и выше, и реорганизовав структуру монтирования (виртуальные размеры текущих файлов qcow2, к сожалению, ограничены).

Моя проблема в том, что перезагрузка libvirtd и перезапуск виртуальной машины не приводят к появлению нового видимого устройства (проверено с помощью fdisk).

Мне известно о расширении существующего файла qcow2 (преобразование в необработанный формат, добавление / добавление нового, используя что-то вроде gparted) - но только в крайнем случае.

Надеюсь, мне не хватает чего-то очень простого?

Войдите в виртуальную машину и выключите ее.

Создайте новый виртуальный диск.

qemu-img create -f qcow2 /vserver/machine1/disk2.qcow2 $SIZE

Принудительно выключите виртуальную машину.

virsh destroy machine1

Откройте конфигурацию виртуальной машины в редакторе по умолчанию.

virsh edit machine1

Добавьте новый раздел диска, как показано ниже.

<disk type='file' device='disk'>
    <source file='/vserver/machine1/disk2.qcow2'/>
    <target dev='hdc' bus='ide'/>
</disk>

Закройте ваш редактор. libvirt автоматически перезагрузит конфигурацию.

Запустите виртуальную машину.

virsh start machine1