Hardware requirements for a Virtual Server
Solution 1:
Virtual servers take advantage of the fact that most servers do not run at capacity for any length of time, and cpu cycles / memory can be shared. Therefore, it REALLY depends on how busy your virtual machines are.
It also depends on which virtual environment you are using, as to how well it can share memory. (I seem to recall that when I experimented with XEN there was no memory sharing at all - but I think that has now changed).
A development environment is a perfect place to get your feet wet with a virtual environment, and it's real handy to be able to "create a new server" in about 5 minutes if it is needed (even allowing you to over-allocate your resources temporarily in a pinch).
By way of example, we can host approximately 100 virtual machines using VMWare Infrastructure on 5 physical servers. Each of these physical machines has 4 dual core Xeon 2.6Ghz CPUs, 16Gb Ram, and 8 - Gigabit nics. (so an average of 20 VMs on each of these). We find our biggest limitation to be the amount of available memory.
I can say that having worked in a virtual environment for several years now, I wouldn't want to go back.
Hope this helps.
Solution 2:
Cross-posted from How to improve Hyper-V performance:
From my experience, disk I/O is the largest bottleneck. After much experimentation, here's what we settled on for our standard Hyper-V server:
- Dell PowerEdge 2970
- Dual quad-core AMD procs
- 16GB RAM
- 8 x 146GB SAS 15,000 drives in RAID 10
- Cost after discounts: $3000
We're able to comfortably run 6-10 guests on each box, doing similar things (CI, dev servers, load testing, etc).