Since my shiny new Dell servers with the Core 2 CPUs haven’t arrived yet I decided to take a spare server in the office and try out VMWare Server. VMWare server for Linux is very easy to install. The only way it could have been easier if it was drag & drop like OS X apps.
This is my testing server:
- Server hardware is pretty standard and medium level:
- Dual Xeon 64-bit 3.0Ghz (no hardware virtualization acceleration)
- 4GB of RAM
- AMCC 9550SX RAID 5 configuration
- RedHat Enterprise Linux 4.0 (ES)
- VMWare Server 1.0.1
Good Points:
- VMWare Server is really easy to use and it works well. For a free product it is impressive.
- It works great through VNC through an SSH tunnel.
- Like so:
ssh -L 5901:localhost:5901 -C -c blowfish benwong@domain.com
- Like so:
- There is a very small learning curve.
- Tested with W2K3 Server, Thinstation (iso), FreeBSD 6.1 and Ubuntu Server with no problems.
- Multi-user. I can be logged on and see my sysadmin buddy working on the virtual console. This was really cool. It just worked.
Bad Points:
- Disk access really slow. When creating new fixed sized disks it took forever and the load on the server went as high as 35!
- Load of 35 = completely unresponsive server!
- Not sure if this because of the RAID array, Linux, the disks or whatever but it brought the server to its knees
- In normal operation there was little performance hit. Load was low even with 4 VMs running.
- Permissions for sharing VMs is a little confusing. Unix permissions, we had to do a bit of juggling.
Interesting Points:
- Disks were the major bottleneck not CPU.
- Probably because of: guest OS file system -> VMWare -> virtual disk -> host OS -> host OS file system -> physical disk, it has a lot more layers to go through.
- In VMWare server you can give a VM a physical disk. Makes me wonder how the performance will be in the real world. What will it be if I plugged each VM into a dedicated RAID array in a SAN?
- CPU impact in our limited testing was quite low. Negligible compared to hard drives. Curious what the improvements would be with hardware virtualization acceleration. Check out this interesting article on software vs hardware emulation.
- Works great over VNC + SSH! Use blowfish and SSH compression.
- Probably works even better as SSH + VMWare Server Console
Screenshots:
Having used Server as well as ESX2.5.x and ESX3.x, I will have to say that when the hard disk is moved to SAN storage(via fiber), the performance issues go away. Installing the VMware tools for the guest will likewise improve performance. The key item is the VMware memory control module in the tools.
Trying to run VMware Server on a single hard drive on a home desktop resulted in the performance issues you described in your post. Basically, the hard disk becomes the bottleneck.
I’m planning on making use of a striped RAID to see if improved disk io would help.
Dedicating a physical disk to the VM would help performance, but it would also make migrating the VM to another machine, later, much more difficult. :/ On that note, if you plan on migrating the machine to another server or to the ESX product, go with scsi disks in the VM. :)
Good luck and happy VM’ing!
Wing.
Good points Wing. When running the VMs we’re haven’t noticed any major performance problems (yet?). It’s only when pre-allocating the very large virtual disk files. I’m sure if we used another set of disks for just the VMs we’d get rid of the blocking issues caused by one array.
In terms of striped, RAID1 is fast. RAID10 faster, but more expensive.