Hi,
your question is not easy to answer, because it depends
Basically, it is important to have lots of resources! If you want to have one Base Server with multiple VMs you have to
think about the amount of VMs and there CPU and memory usage. Also the disk usage regarding size and performance
is very important.
I'm running my Home Server with an
AMD Phenom II X6 1090T with 3214 MHz
8 GB Ram for the first shot (16 GB max on that motherboard)
4x1TB Disk different series, because of disk production failures
zfs file system (RAID-Z)
2x 250 GB Disk for root disk mirror
external disks for backups with zfs
you may use zfs send/receive to transfer zfs clones to different Server
up to 6 sata slots on board
4 sata ports on an PCI card
grafix on board
sound on board (not needed for server)
1GB Ethernet
Solaris 11 Express b150
using zfs, zones, cifs (samba), iscsi, apache, Jommla, VirtualBox
VirtualBox 4.0.4 is running headless in a zone
VirtualBox is configured with iscsi devices, which are hosted on the underlaying server.
each iscsi device is an zfs and could there for be snapshoted and cloned by zfs and also be compressed.
For test VMs I normaly only use a zfs snapshot/clone , distribute it as iscsi device and boot that
Image with VirtualBox. The golden base image has a size of 3.2GB (compressed to 2.8GB for a Win7).
The snapshot starts by 120MB and grows, depending of the tests. After testing I throw the entire
snapshot away and create a new one.
You could also boot the iscsi devices from client hosts and run the local client resources, but not at the
same time and not with very different hardware architectures. This is because of reconfiguring the guest
system.
If you use to identical server hosts, you can also "teleport" a running VM from one host to the other, by
using iscsi as shared storage. Please have a special look to the iscsi disk performance. You will need a
pretty good running iscsi san, to have fun.
My conclusion on that is, you first need a concept for your business needs. If you will centralize your
resources it is important to have a redundant and high performance environment. Keep it simple and
write down a disaster recovery concept. Do a continues backup and test your recovery.
For my home equipment I only use a basic installation without any funny modifications. I only do changes
with a special need! I documented all single steps to come from a clean hardware to a running system,
which is my disaster recovery plan. After that I recover my data from the backup devices, follow my
iscsi instructions and boot my VMs....that's it.
That's on my home server:
CIFS share for Windows clients
Video, audio and data
iscsi shares for VirtualBox on the server or over 1GB Ethernet to the client
1x zone for VirtualBox
if you select a single USB port to a single VM, you can have a special USB device in each VM client
1x zone for VirtualBox, to test teleporting in the box
1x zone for apache with joomla, to have a private web server
1x zone to play with Oracle 11 Express and to have a scp server
Remote service by VNC using DynDns or by ssh
2x golden base image for different guests
3-5x cloned images for test and playing around
And now back to your question:
You may run Oracle 11 Express as your base server system.
Put your small business server into VirtualBox
Put other test systems also in VirtualBox
You better buy a second hot standby server with identical hardware or less ram and storage
Create a concept to teleport the small business server between both servers for maintenance requirements
or even for recovery of the business server.
In good times you may use both systems in parallel for testing (I did an Win7 sp1 update and had to reboot my hole server!),
so you better do this kind of updates not on the same system, even if it is inside a VM

.
Have a special thinking on your storage and may use zfs with mirror and raid-z . May tune it with ssd cache.
Use zfs send/receive to bring your data to the second server the first time and after that by sending snapshots.
http://www.solarisinternals.com/wiki/in ... ices_Guide
You better train your users to put no data on the local VMs. Thereby you are able to kick bad VMs and start with
a clean new clone. You may write some nice scripts, to personalize a fresh VM distribution.
that's it for the first time...