You can think of a virtual machine as workstation or server that runs, as a program, on a physical server or other 'powerhouse' machine.
A virtual machine is a program that acts as a virtual computer and runs on multiple servers in the data center. The server host operating system provides virtual hardware to guest operating systems, or virtual machines. The guest OS, or VM, runs as one program of many running on the server.
From the guest operating system’s perspective, the virtual machine is a real, physical computer.
The virtual machine’s emulation engine, called a hypervisor, handles the virtual hardware, including a CPU, memory, hard drive, network interface, and other devices. The virtual hardware devices provided by the hypervisor map to real hardware on the physical machine. For example, a virtual machine’s virtual hard disk is just stored in a file located on storage accessible to the host server.
You can have several virtual machines running on a single host. You’re only limited by the amount of storage, processor, and memory resources available on the physical host for them.
There are many advantages to virtual machines, including, but not limited to:
- They reside in the data center
- They have a faster connection speed to storage than does your workstation
- Work can run on the VM in the background and not impact, or require, your local workstation to be connected or powered on
- Redundancy and fault tolerance is built in
- An entire virtual machine, in it's entire state, can be restored, quickly
- Snapshots can be used to capture a virtual machine's state before making significant changes (to allow for rollback)
- Portability. VMs can be migrated to run on other hosts and in other environments without impacting the state of the Virtual Machine