VMWare ESX has been released for free for a while, since version 3.5 as I recall, under the name ESXi. It has some limits if used with a 'free' license: no clustering, no storage clustering, no hotplug for hard disks, maximum VCPU limitation, etc, but overall is a very good starting point with a low investment. It is well known that VMWare ESXi doesn't accept any network card or any storage adapter, making it somehow incompatible with the term 'cheap', but one looking for a start point can begin without spending a lot of money on a certified server. Of course, there will be no support from VMWare if the platform is not certified, but ESXi free itself is not supported, unless you subscribe for a support contract.
The most interesting components of a physical platform are:
A plaform built for VMWare ESXi should be able to execute 32 and/or 64 bit programs ( AMD64 / EM64T ), and optionally it must support hardware assisted virtualization (AMD Pacifica / Intel VT). AMD implements Pacifica on most CPUs, except the low end series. Intel has similar approach, not implementing VT on low-end series. ESXi version 3.5 is able to run on 32-bit-only CPUs, but since ESXi version 4 a 64-bit ( EM64T / AMD64 ) capable CPU is required. VT / Pacifica is desirable, but ESXi 4 is able to start and run 32 bit VMs without these virtualization extensions.
A VMWare server needs two types of storage: one for operating system's files, one for virtual machine image files and other data. The most important is the virtual machine store, which should be placed on a protected RAID volume. Hypervisor's console files can be placed anywhere, even on a USB stick. For virtual machine files, you need a storage adapter with RAID, excluding software-based. If you attempt to use a softRAID controller, you may be surprised to see each of your drives instead of the logical volume and your data sitting on only one of the drives. The physical drives could be SCSI, SAS, and even SATA. If you afford to keep your virtual machine's files unprotected, you may use an onboard ICH9 or ICH10 SATA controller for VMFS storage. Since SCSI and/or SAS drives are generally expensive, I think it's a good idea to use on a small server a pair or two of SATA drives. A pair good performing 7200 RPM SATA drive is absolutely suitable for a server which will host few VMs, like a FTP server, a web server, a small web server and maybe a file server. Adaptec PCI Express SAS/SATA RAID adapter can be found on retail channels, but there may be places selling server parts, certified by VMWare as compatible.
VMWare ESXi has been built for servers. That means that most of the server class network adapters are supported. I've seen even desktop adapters working: Intel Pro/1000 GT desktop adapter is recognized by ESXi 4. If your server platform doesn't have at least one supported network adapter, the installer will throw an error related to lvmconfig, which may be somehow misleading. If you encounter a lvmconfig error durring installation, this is the reason. Lvmconfig tries to obtain a MAC address from a supported adapter, and if it does not succeed, it will show you this error and stop.
The most popular network adapters for servers are built around chips from Broadcom, Intel and few others. I don't know any Realtek adapters recognizable by any VMWare ESXi server, meaning that Realtek desktop onboard solutions aren't suitable. I believe that the same thing happens with desktop-class Broadcom 8xxx based network adapters. Server adapters are harder to find, making Intel Pro/1000 GT an excellent choice. The network adapter problem may be solved by using a workstation class motherboard, built with compatible network controller.
The remaining components are the usual: a motherboard equipped with a single CPU socket if it's used only by ESXi free, a lot of RAM, preferably with some error-corection mechanism but supported by the motherboard, a CD/DVD drive, a power supply, etc.
I was able to start few VMs on a DIY ESXi 4 server built with:
|| Gigabyte G33M S2
|| Intel DualCore E2xxx series
|| 2 x 2 GB + 2 x 1 GB DDR2
| Hard disk
|| 2 x 250 GB SATA
| Storage adapter
|| HP SmartArray E200
| Network adapter
|| Intel Pro/1000 GT, HP NC373T
| Case, PSU
|| Antec NSK 4480
| CD/DVD drive
So... it can be done, an ESXi server under $1000, with RAID mirroring too! Of course, the prices may vary, depending on your hardware source.
To be continued (screenshots from VSphere Client)