Some virtualization software (like VMware's server products)
replace the host OS completely.
No, they run a hypervisor or virtual machine manager. They do not
replace the OS, the OS runs on a "Virtual Machine", hence the name
for the technology.
Virtualization for server environments is handy because you can run
> 1 isolated OS environments on one physical (high performance)
computer, which saves rack space and power. There are other
reasons to run services on a virtual machine:
- Sometimes it's not good to run all your services on one machine
- Botched updates can be rolled back to a known good state since a
lot of virtualization systems allow the creation of VM snapshots
- Trying new things out doesn't require a separate test machine
- Better machine utilization, a lot of times our systems are
twiddling their thumbs
...stuff like that.
The trend, especially in Windows server environments, was to place
individual service on individual "boxes" since, among other reasons,
the OS sucked so bad and crashes are so common. This way if your
Exchange server crashed your Firewall box and web box didn't die too.
So there soon became rooms full of servers.
On top of this server hw became more powerful and power hungry. The
servers were no longer utilizing their full resources, but continued
to chew the same power. By consolidating them back onto less hardware
the resources can be utilized and the power savings and space savings
are huge.
As for "testing" things on production VM boxes -- well that's just
stupid.
If it was just about running all your services on one machine, well
you can do that already w/o VMs.