The usual IT babble
Posts tagged VMware ESX
Extending VMotion compatiblity
Jul 4th
Today I did something horrible. I yet again noticed that I bought the wrong CPU’s (basically I bought Xeon DP’s with four cores). Those have apparently a feature called SSSE3, which makes VMotion with our old Xeon DP’s (dual cores) fail before even trying.
But as we had a cooling outage today (basically ’cause it broke), I needed to turn off some ESX servers. Thus leaving me with the new ones and one of the old ones. *yuck*
So after a bit of googling, I found this VMware KB entry, which luckily lists the registers (on level 1) you need to zero out.
ecx ---- ---- ---- -0-- ---- --0- ---0 -0--
edx ---- ---- ---- --0- ---- ---- ---- ----
Only problem after that was that it still wasn’t enough. So back to the drawing board. The final solution came rather quick and looks like this:
eax ---- ---- ---- ---- ---- 0--0 ---- ----
ecx ---- ---- ---- -0-- ---- --0- ---0 -0--
edx ---- ---- ---- --0- ---- ---- ---- ----
The only stupid thing about this is, that
- it ain’t supported by VMware (as in if you’re having trouble with your ESX/VC and you have a VM running with this, you’re shit outta luck!)
- you have to define this on a *per VM basis*, which really is a pain in the ass for larger installations
True, I just should’ve bought VMotion compatible CPU’s, that would have spared me the hassle … but it’s too late now, I have to live with those ones.
VMware design rules
Jun 20th
I’m just got back from four days in Rostock over at S&N, where I was attending a VMware design course and here’s a list of questions I did ask the trainer:
- What’s the disadvantage of having a 1016 ported vSwitch ?
- Any clues on how to exchange the default certificate of the Virtual Center ?
- Are there any tools to stress test the virtual system ?
- Are there any performance impacts of having more than 10 users in Virtual Center ?
- Any clues and/or guides on how to do time synchronization in VMware guests, especially Linux guests ?
- What’s the preferred NIC type for Linux guests ?
- Any clues to using Raw Device Mappings with VMotion ?
- Is there a way of defining CPU masks on a global level ?
Answers:
- There might be a small overhead, though that’s limited to a really, non-measureable amount
- Hasn’t done it yet.
- Yes, there are free stress test tools like cpubusy.vbs, cpubusy.pl, iometer.exe, ..
- Nope, you should only experienece load problems starting at 25 or so users
- Select *one* variant, either time synchronization by use of the VMware tools or ntpupdate; if ntpupdate, select a single time source for your whole environment
- For ESX 3.5.0 that would be “Flexible” (as per VMware Knowledgebase), as the vmxnet type is a leftover from ESX 3.0
- Raw device mappings are *absolutely* supported by VMware, and also work without any troubles (when mapping/zonig is correctly configured)
- Currently there’s no known way of doing this
- When adjusting the CPU afinity of a VM, *always* completely stop the virtual machine afterwards
- When trying to figure out CPU bottlenecks, check whether or not hyperthreading is enabled. The hyperthreaded (second) core is only giving you a CPU with 15% of the first.
Also, here are some guidelines on how the trainer extended the defaults:
ESX Server:
- Extend the “/” size to 10GiB
- Extend the “swap” partition to about 1GiB
- Extend the “/var/log” partition to about 4 GiB
- don’t mess around with creating too many vSwitches; just keep it simple
- set the duplex mode manually if the ESX is giving you any trouble
- disable the Traffic Shaping, unless you *really* need it
VirtualCenter:
- There’s two options when installing VirtualCenter: either install it on a physical box or simply put it into a virtual machine itself
A problem with putting it into a virtual machine is, when the VM is shutting down or powered off due to isolation of the ESX running it, any ESX Server powering up isn’t going to start any virtual machines as that in return requires the License Server(as Michael pointed out in #c1, the VM is still gonna start as the HA agent is able to start virtual machines on the basis of the 14-day grace period)- Only use the SQL Server Express variant if you really have to. It’s limited to 4GB database size, so if your installation grows above say 50 hosts and 2000 VM’s, this is gonna break the limits of SQL Server Express