Pages

Tuesday, December 20, 2005

VMotion to different CPU types!

Found this out there and boy howdy it works!!! Now we can VMotion to ANY of our production VMWare hosts. We used to not be able to transfer between blade servers and non-blade servers. And the brand new HP DL580 G3 wouldn't allow us to VMotion from the G2 boxes. hehehehe. It is like Christmas!

The default VirtualCenter settings restrict migrations with VMotion to source and destination CPUs that VMware can guarantee are always compatible with the virtual machines being migrated.
The following knowledge base articles contain additional details specific to Intel and AMD processors:


Intel VMotion Compatibility (knowledge base article 1991)
AMD VMotion Compatibility (knowledge base article 1992)
VirtualCenter identifies processors with the SSE3 instructions and those without the SSE3 instructions as incompatible for migration with VMotion because the SSE3 instructions are application-level instructions that access the CPU directly and bypass the virtualization layer.

Additional details regarding the SSE3 instructions can be found at:


SSE3 Overview
SSE3 Technical Details


Adjusting VMotion Compatibility Settings to Ignore SSE3 Restrictions

The following instructions are provided for non-production use. The configuration changes described below cause the VirtualCenter management server to ignore the VMotion compatibility constraints which are specific to the SSE3 instructions.

If user-level applications running in a virtual machine that use the SSE3 instructions were to be migrated with VMotion from CPUs that do support the SSE3 instructions, to CPUs that do not support the SSE3 instruction, they would likely fault on an undefined instruction code. VMware does not provide general support for this modification because the resulting faults on the destination host could cause applications and guest operating systems to fail.

To relax the VMotion compatibility constraints and allow migration with VMotion between incompatible servers:


Locate the VirtualCenter configuration file called config.ini (usually located at C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter).
If the config.ini file does not exist, create a text file and save it with that name.
Add the following line to the file:
migrate.ignore.extfeature.bits = 0x65BD
Restart the VirtualCenter management server.
To undo the configuration change and restore to the default VMotion compatibility constraints:


Locate the VirtualCenter configuration file called config.ini (usually located at C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter).
Remove the migrate.ignore.extfeature.bits = 0x65BD line from the file.
Restart the VirtualCenter management server.
Note: Knowledge base articles 1991, 1992, and 1993 replace article 1377.