We're considering building a virtual machine host to use for QA testing. Our primary goal is to be able to easily configure a set of virtual machines in a self-contained environment, that will simulate the main machines in our enterprise. We'll likely have a database machine, an app server, a web server, and one or two client machines within each environment.
We'd like to have between two and four environments active at any one time (i.e. up to twenty VMs simultaneously) with disk space for perhaps another 4 environments to be offline.
This is going to require a lot of horse power just for the basics. We're not going to be testing performance in these environments, it'll mostly be automated functional and integration testing, and possibly some manual testing performed by actual humans. The VMs don't need to behave like they have fast processors, but we would prefer to not have them bogged down by slow disk latency.
Given these goals, what do you think we should consider from a hardware standpoint? Is it worth splitting this over several 'smaller' machines rather than one honking great big one?