Crmgo Блог

KVM, ошибка клонирования в CentOS 7

KVM, ошибка клонирования в CentOS 7

При клонировании ВМ возникате не приятный баг связанный с её конфигурационным файлом, в этом фале есть секция: где test имя ВМ, так вот при клонировании командой: virt-clone -o test -n test2 -f /tmp/test2.img в пути это имя не меняется с…

KVM, ошибка клонирования в CentOS 7

При клонировании ВМ возникате не приятный баг связанный с её конфигурационным файлом, в этом фале есть секция:

<channel type='unix'>
<source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-test/org.qemu.guest_agent.0'/>
<target type='virtio' name='org.qemu.guest_agent.0'/>
<address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>

где test имя ВМ, так вот при клонировании командой:

virt-clone -o test -n test2 -f /tmp/test2.img

в пути это имя не меняется с test на test2 и если ВМ test не запущена новая ВМ test2 не стартанёт и будет выведена ошибка:

Цитата
ошибка: Не удалось запустить домен test2 ошибка: внутренняя ошибка: Процесс завершился при подключении к монитору: 2016-02-12T06:02:41.024054Z qemu-kvm: -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channel/target/domain-test/org.qemu.guest_agent.0,server,nowait: Failed to bind socket: No such file or directory 2016-02-12T06:02:41.024121Z qemu-kvm: -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channel/target/domain-test/org.qemu.guest_agent.0,server,nowait: chardev: opening backend "socket" failed

Чтобы это исправить нужно в ручную поменять имя ВМ в пути с test на test2 т.е. получится

<channel type='unix'>
<source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-test2/org.qemu.guest_agent.0'/>
<target type='virtio' name='org.qemu.guest_agent.0'/>
<address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>

и выполнить команду:

systemctl restart libvirtd.service
Чтобы не перезагружаться, нужно править командой virsh edit
Еще бывает при клонировании ссылка остается на старый qcow2 <source file='/var/lib/libvirt/images/Old.qcow2'/>
Я с этим борюсь так:
cp /var/lib/libvirt/images/Old.qcow2 /var/lib/libvirt/images/New.qcow2
И исправляю в virsh edit New
<source file='/var/lib/libvirt/images/New.qcow2'/>

Примечание: материал мог быть создан с помощью ИИ и затем отредактирован человеком. Ответственный: Dmytro Lomaka, Kaltenkirchen.

Рубрики: KVM