Hi,
Thanks for the suggestion, but it’s still not working. I have changed both
nodes to use the Westmere CPU model, which is the lowest common CPU instruction
set. The following is in the nova.conf on both nodes;
cpu_mode = custom
cpu_model = Westmere
libvirt_cpu_mode = custom
libvirt_cpu_model = Westmere
I'm beginning to suspect that because the VM has "cpu mode='host-model'" in its
xml CPU definition, libvirt is incorrectly comparing the current host CPU to
the target host instead of comparing the guest CPU to the target host CPU. This
would be consistent with the error message which states that target host
(Westmere) isn't compatible with the 'Broadwell-noTSX' CPU model, even though
the VM is configured as Westmere (<model fallback='allow'>Westmere</model>).
Original Error Message;
Host CPU does not provide required features: fma, x2apic, movbe, tsc-deadline,
xsave, osxsave, avx, f16c, rdrand, fsgsbase, tsc_adjust, bmi1, hle, avx2, smep,
bmi2, erms, invpcid, rtm, rdseed, adx, smap, xsaveopt, abm, 3dnowprefetch; try
using 'Broadwell-noTSX' CPU model
As mentioned previously, when the VM is booted on a compute node with
"cpu_model = Westmere" in its nova.conf, the VMs XML CPU definition contains
the following and DOES live migrate;
<cpu mode='custom' match='exact'>
<model fallback='allow'>Westmere</model>
Therefore it appears if a VM XML CPU definition contains "cpu
mode='host-model'" the cpu model is ignored and the 2 host CPU models are
compared. And if "cpu mode='custom'", guest and target CPU models are
compared. This would also be consistent with the fact I can migrate from a
Westmere to a Broadwell, as Broadwell is a superset of Westmere but not the
other way around.
Any suggestions with dealing with this? Rebooting all hosted instances isn't
really an option for us.
Regards,
Oisin
>From: [email protected] [mailto:[email protected]]
>Sent: Tuesday, 4 July 2017 9:41 AM
>To: Oisin O'Malley <[email protected]>
>Subject: Re: [Openstack] Live Migration and LibVirt CPU Mode
>
>Hello Malley, excuse me for delay...
>
>for resolve your problem consider change architecture in 2 compute nodes..
>
>compute1
>
>cat /proc/cpuinfo
>compute2
>
>cat /proc/cpuinfo
>
>search middle architecture for this processor..
>my example in my situation
>
>1º compute
>model name : AMD Phenom(tm) II X6 1090T Processor
>2º compute
>model name : AMD A8-7600 Radeon R7, 10 Compute Cores 4C+6G
>
>and de nova in 2 compute:
>libvirt_cpu_mode = custom
>cpu_mode = custom
>libvirt_cpu_model=Opteron_G3
>cpu_model=Opteron_G3
>
>Custom:
>
>If your nova.conf file contains cpu_mode=custom, you can explicitly specify
>one of the supported named models using the cpu_model configuration option.
>For example, to configure the KVM guests to expose >Nehalem CPUs, your
>nova.conf file should contain
>
>Nova cpu
>
>that's all. Search compatible architecture
Oisin O'Malley
Systems Engineer
Iocane Pty Ltd
763 South Road
Black Forest SA 5035
Office:+61 (8) 8413 1010
Fax:+61 (8) 8231 2050
Email:[email protected]
Web:www.iocane.com.au
Better for business
_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to : [email protected]
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack