[libvirt-users] Problem to migrate virtual machine between two hosts with same uuid

hi at all, i'm trying to migrate a vm between two host but fails, this is what I did: virsh # start win2008 Domain win2008 started virsh # list Id Name State ---------------------------------- 1 win2008 running virsh # migrate --live win2008 qemu+ssh://host2/system error: internal error Attempt to migrate guest to the same host 00010203-0405-0607-0809-0a0b0c0d0e0f if I type on both hosts: host1 virsh # sysinfo ....... <system> <entry name='manufacturer'>Supermicro</entry> <entry name='product'>X9SCL/X9SCM</entry> <entry name='version'>0123456789</entry> <entry name='serial'>0123456789</entry> <entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry> <entry name='sku'>To be filled by O.E.M.</entry> <entry name='family'>To be filled by O.E.M.</entry> </system> ........ host2 virsh # sysinfo ....... <system> <entry name='manufacturer'>Supermicro</entry> <entry name='product'>X9SCL/X9SCM</entry> <entry name='version'>0123456789</entry> <entry name='serial'>0123456789</entry> <entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry> <entry name='sku'>To be filled by O.E.M.</entry> <entry name='family'>To be filled by O.E.M.</entry> </system> ........ The problem seems to be the same uuid on both hosts, 1) is correct? 2) if is correct, how I can resolve? Thanks a lot in advance Umberto -- ------------------------------------------ mediaus around the web Via Romana, 2143 - 55100 Antraccoli - LUCCA Web: http://www.mediaus.it Tel.: +39 (0) 583 493745/464501 Mob. +39 349.5422881 Fax.: +39 (0) 583 471420 Mailto:info@mediaus.it

On Tue, Aug 23, 2011 at 01:08:29PM +0200, info@umbertocarrara.it wrote:
hi at all, i'm trying to migrate a vm between two host but fails, this is what I did:
virsh # start win2008 Domain win2008 started
virsh # list Id Name State ---------------------------------- 1 win2008 running
virsh # migrate --live win2008 qemu+ssh://host2/system error: internal error Attempt to migrate guest to the same host 00010203-0405-0607-0809-0a0b0c0d0e0f
if I type on both hosts:
host1 virsh # sysinfo
....... <system> <entry name='manufacturer'>Supermicro</entry> <entry name='product'>X9SCL/X9SCM</entry> <entry name='version'>0123456789</entry> <entry name='serial'>0123456789</entry> <entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry> <entry name='sku'>To be filled by O.E.M.</entry> <entry name='family'>To be filled by O.E.M.</entry> </system> ........
host2 virsh # sysinfo
....... <system> <entry name='manufacturer'>Supermicro</entry> <entry name='product'>X9SCL/X9SCM</entry> <entry name='version'>0123456789</entry> <entry name='serial'>0123456789</entry> <entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry> <entry name='sku'>To be filled by O.E.M.</entry> <entry name='family'>To be filled by O.E.M.</entry> </system>
........
The problem seems to be the same uuid on both hosts,
1) is correct?
Yes, your hardware vendor is being very very bad :-(
2) if is correct, how I can resolve?
You could complain to the hardware vendor, but I rather doubt that they would ever do anything about it. So, libvirtd provides a way to override the default host UUID, by setting 'host_uuid' in /etc/libvirt/libvirtd.conf, which should make the migration sanity check pass. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|

On 08/23/2011 05:18 AM, Daniel P. Berrange wrote:
<entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry>
Yes, your hardware vendor is being very very bad :-(
So, libvirtd provides a way to override the default host UUID, by setting 'host_uuid' in /etc/libvirt/libvirtd.conf, which should make the migration sanity check pass.
Should we also teach libvirt to recognize this particular UUID as invalid, just as we already reject all 0's and all F's as bad (also values seen from bad hardware vendors)? -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org

On Tue, Aug 23, 2011 at 08:12:46AM -0600, Eric Blake wrote:
On 08/23/2011 05:18 AM, Daniel P. Berrange wrote:
<entry name='uuid'>00010203-0405-0607-0809-0A0B0C0D0E0F</entry>
Yes, your hardware vendor is being very very bad :-(
So, libvirtd provides a way to override the default host UUID, by setting 'host_uuid' in /etc/libvirt/libvirtd.conf, which should make the migration sanity check pass.
Should we also teach libvirt to recognize this particular UUID as invalid, just as we already reject all 0's and all F's as bad (also values seen from bad hardware vendors)?
Once we start going down this route, it'll never end IMHO. I've seen so many "bad" patterns used by various vendors... The alternate is to not use the SMBIOS uuid, but rather rely on the fact that new hosts with SystemD, have a sane UUID generated and recorded in /etc/machine-id Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|

Il martedì 23 agosto 2011 13:18:33 Daniel P. Berrange ha scritto:
The problem seems to be the same uuid on both hosts,
1) is correct?
Yes, your hardware vendor is being very very bad :-(
2) if is correct, how I can resolve?
You could complain to the hardware vendor, but I rather doubt that they would ever do anything about it.
So, libvirtd provides a way to override the default host UUID, by setting 'host_uuid' in /etc/libvirt/libvirtd.conf, which should make the migration sanity check pass.
Works!! Thanks a lot.
Daniel
Umberto
participants (4)
-
Daniel P. Berrange
-
Eric Blake
-
info@umbertocarrara.it
-
Umberto Carrara