I fear this question is already answered, but I couldn't find it. So here is my qauestion:
I want to use HP DL585G2 (AMD Opteron 8220) and HP DL385G1 (AMD Opteron 285) in one cluster with the possibility of VMotion on running VMs.
So what CPU mask do I have to use on my VMs? And what is the easiest way to ditribute it to all VMs?
Thanks and regards
Dietmar
Hello,
Yes you will have to do this or write a script to do it using the SDK or vmperl.
Best regards,
Edward
If you're running VC 2.0.1 Patch 2 you can do it at this level instead of per VM:
>>Modifications are made at the VirtualCenter Server level but can be defined by processor manufacturer, by version number, and other criteria.
http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1993
Here is the AMD doc to start with.
VMotion CPU Compatibility Requirements for AMD Processors (http://kb.vmware.com/kb/1992)
This KB articles are hard stuff. It's really not easy to filter out the matching informations.
If you're running VC 2.0.1 Patch 2 you can do it at
this level instead of per VM:
>>Modifications are made at the VirtualCenter Server
level but can be defined by processor manufacturer,
by version number, and other criteria.
This does not match for me. Yes, I run this VC, but this kind of modifications work with ESX 2.x. So I think I have to do it by VM.
http://kb.vmware.com/selfservice/microsites/search.do?
cmd=displayKC&externalId=1993
Here is the AMD doc to start with.
VMotion CPU Compatibility Requirements for AMD
Processors (http://kb.vmware.com/kb/1992)
Okay, it seems as I am in the AMD groups C and D. And I need the RDTSCP mask. Does this mean that I have to make this change
RDTSCP 80000001 edx -
0--- -
-
-
-
-
-
manually for every VM in my cluster?
Hello,
Yes you will have to do this or write a script to do it using the SDK or vmperl.
Best regards,
Edward
Okay, I will think about scripting in my next three holiday weeks, and then I will try it out.
problem with CPU compatibility discussed at http://www.vmware.com/community/message.jspa?messageID=508886#636800
DL585 G1 and DL385 G1 should have same CPU type.
I uses -
0-0- -
-
-
-
-
---0 too and it works fine for me (we have DL585 G1, DL585 G2 and DL585 G2)
CU
esxfan
But in the VMware article
http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1993
they say that you only need to change the RDTSCP mask (if I understood it correct this means to change RDTSCP 80000001 edx -
0--- -
-
-
-
-
-
)
Why did you change to -
0-0- -
-
-
-
-
---0 ? (the first 0 is RDTSCP, the second 0 is FFXSR, but for what is the 0 at the end?)
Regards, Dietmar
P.S.: I have DL385G1 and DL585G2, this means different CPU types
Now my experience:
I put the mask RDTSCP 80000001 edx -
0--- -
-
-
-
-
-
to all my VMs (W2kServer, W2003Server EE and Standard, WinXP SP2, Ubuntu, Debian, SLES) and they all migrated fine in both directions.
But attention:
Many forum threads (and also the KB articles) let you think that the CPU mask works as a mask between the CPU and the VM. And the guest OS sees a masked CPU. This is not true \!!!
Meanwhile I found out that the CPU mask does not work between the CPU and the VM. The CPU mask only works for the Vmotion compatibility check![/b] The CPU mask hides the feature only to the compatibility check but not to the VM (Reason: the CPU is a socalled passthrough device for the VM)
This means: with a CPU mask Vmotion will migrate the VM unless the guest OS in the VM matches to the new CPU or not
Regards, Dietmar