First we need to look at the concept of virtualisation.
Traditionally, operating systems run on a dedicated, physical server or workstation. In most cases this is a very inefficient use of the server or workstation’s hardware resources, typically between 5 – 10 percent of the physical server capacity is used in normal operation leaving an enormous amount of resources sitting idle.
Running a large number of physical servers, for instance in a data centre , also creates excessive overheads in terms of rack space, cooling, cabling, power consumption, support and maintenance costs to name but a few. A large proportion of these overheads would be reduced if you could run multiple servers or workstations on a reduced amount of physical hardware; this is where virtualisation comes in.
Imagine taking a physical server with its operating system, applications and data then creating a copy of that complete server in software. Imagine that this software, or now let’s call it a virtual machine, is then loaded onto a physical piece of hardware, let’s call it a host machine, you can then allocate a portion of the hosts machine’s physical cpu, memory, disk drive and other resources to that virtual machine. You could then create another virtual machine, because it’s just software, and load that onto the same hardware (or host), allocating this new virtual machine its own region of memory, disk space etc. Using this concept you could have multiple virtual machines running different operating systems (because it’s only software) on a single piece of physical hardware.
In traditional architectures, the operating system interacts directly with the hardware that it is loaded onto. It schedules processes, allocates memory to applications, reads and writes data to a disk drive and sends and receives packets of information on the connected network interface card. In a virtual environment, a host machine interacts with its hardware through a thin layer of software called a hypervisor. The hypervisor provides physical hardware resources dynamically to virtual machines but at the same time providing an element of detachment allowing features that weren’t available before, using dedicated hardware, to now be available to you. For example you can now support legacy applications and operating systems on the latest hardware when this hardware maybe would not have supported the application or operating system if loaded directly.
With this virtualisation concept and the fact that in essence, each virtual machine is isolated from each other, it is now possible to run multiple servers on the same piece of physical hardware. The isolation between machines means that conflicts between software do not exist, so you could have an exchange server, database server, SCADA server and ERP server all running on the same piece of physical hardware yet still running as an independent machine.
VMware vSphere is a suite of products that provides a complete virtualisation environment. This environment enables the virtualisation of machines, provides the management, resource aggregation and optimisation, and operational capabilities needed for a fully virtualised infrastructure.
It also provides a set of services that enable such features as high availability, load balancing and scalability of the complete infrastructure.