Crmgo Blog

KVM, chyba při klonování v CentOS 7

KVM, chyba při klonování v CentOS 7

Při klonování virtuálního stroje dochází k nepříjemné chybě související s jeho konfiguračním souborem. V tomto souboru je sekce, kde „test“ je název virtuálního stroje. Při klonování pomocí příkazu: `virt-clone -o test -n test2 -f /tmp/test2.img` se toto jméno v cestě nemění z…

KVM, chyba při klonování v CentOS 7

Při klonování virtuálního stroje (VM) se vyskytuje nepříjemná chyba související s jeho konfiguračním souborem. V tomto souboru je sekce:

<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>

kde test je název VM. Při klonování příkazem:

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

se v cestě tento název nezmění z test na test2 a pokud VM test neběží, nová VM test2 se nespustí a zobrazí se chyba:

Citace
chyba: Nepodařilo se spustit doménu test2 chyba: interní chyba: Proces ukončil činnost při připojení k monitoru: 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

Abychom to napravili, musíme ručně změnit název VM v cestě z test na test2, tedy výsledkem bude:

<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>

a poté spustit příkaz:

systemctl restart libvirtd.service
Abychom nemuseli restartovat systém, můžeme provést úpravu pomocí příkazu virsh edit.
Při klonování se také někdy stane, že odkaz zůstává na starý soubor qcow2: <source file='/var/lib/libvirt/images/Old.qcow2'/>
S tímto problémem si poradím následovně:
cp /var/lib/libvirt/images/Old.qcow2 /var/lib/libvirt/images/New.qcow2
A v editoru virsh edit upravím New:
<source file='/var/lib/libvirt/images/New.qcow2'/>

Poznámka: příspěvek mohl vzniknout s pomocí AI a lidskou redakcí. Odpovědný: Dmytro Lomaka, Kaltenkirchen.