VMware

Build a Flexible, Efficient Datacenter

vSphere with Operations Management combines the world’s leading virtualization platform with VMware’s award winning management capabilities. This new solution enables IT to gain operational insight into the virtual environment providing improved availability, performance, and capacity utilization. Run business applications confidently to meet the most demanding service level agreements at the lowest TCO.


VMware vSphere, the industry-leading virtualization platform for building cloud infrastructures, enables you to run business critical applications with confidence and respond to the business faster. (4:15 mins.)
Share
       

vSphere Compute Features: Virtual Machines and Virtual Hardware

In the physical world, an operating system is installed directly on a server and interacts with the server hardware through drivers. Each operating system must have the correct drivers and capabilities to support the physical hardware and the specific I/O components, such as host bus adapters, network adapters, etc.

Once an operating system is installed on a physical system, it is very difficult to move or migrate it to another physical host, as the operating system is uniquely configured for that specific hardware.

A virtual machine (VM) is a software construct controlled by the vSphere hypervisor (known as the “VMkernel”). All virtual machine configuration information, state information and data are encapsulated in a set of discrete files stored on a datastore. This encapsulation makes virtual machines portable, easily backed up or cloned.

Each virtual machine has virtual hardware that appears as physical hardware to an installed guest operating system and its applications. Each guest operating system sees ordinary hardware devices and does not know that these devices are virtual. Virtual machines have uniform hardware (with a small number of possible options controlled by the system administrator). Uniform hardware makes virtual machines portable across vSphere hosts.

 

Virtual Machine Components

VMs typically have an operating system, VMware Tools and virtual resources and hardware you manage much the same as you would a physical computer. You install a guest operating system on a virtual machine the same way as you install an operating system on a physical computer. You must have a CD/DVD-ROM or ISO image containing the installation files from an operating system vendor.

VMware Tools enhances the performance of the virtual machine's guest operating system and improves management of the virtual machine, giving you more control over the virtual machine interface.

All VMs have a hardware version, which indicates virtual hardware features that the virtual machine supports, such as BIOS or EFI, number of virtual slots, maximum number of CPUs, maximum memory configuration and other hardware characteristics. The version of the vSphere host on which you create the virtual machine determines the virtual machine hardware version.

Virtual CPU

A virtual machine is configured with at least one virtual CPU (VCPU). When a VCPU needs to run, the VMkernel maps the VCPU to an available hardware execution context (HEC). A HEC is a processor’s capability to schedule one thread of execution, which corresponds to a CPU core or a hyperthread (if the CPU supports hyperthreading). Hyperthread or multicore CPUs provide two or more HECs on which VCPUs can be scheduled to run.

Using vSphere’s virtual symmetric multiprocessor feature (VMware® Virtual SMP) means virtual machines can be configured with 1 to 64 VCPUs. For example, a single-VCPU virtual machine gets scheduled on one HEC at a time. A two-vCPU virtual machine gets scheduled on two HECs at a time, and so on. The maximum number of VCPU that can be assigned to a virtual machine corresponds to the maximum HECs available in your server hardware.

 

Virtual Memory

Although physical servers in a datacenter are often configured with large amounts of memory, only a small portion is typically active at any one time. Higher active memory use is achieved by combining multiple virtual machines on one physical server. This efficient use of memory resources reduces datacenter capital and operating costs.

The vSphere VMkernel manages the server’s RAM. vSphere uses several features that are designed by VMware to support efficient use of RAM and higher consolidation ratios, including transparent page sharing, guest memory reclaim and memory compression.

A virtual machine may have up to 1TB RAM configured.

 

Shares and Limits

vSphere uses shares and limits to make sure virtual machines running together on a host (or in a cluster) are given adequate access to resources, such as CPU, memory, network and storage.

Shares guarantee that a virtual machine is given a certain percentage of a resource (CPU, RAM, network or storage I/O). With defaults in place, each virtual machine will be able to access an equal percentage of resources. For example, if 4 virtual machines were running on a vSphere host, each would have access to 25% of available CPU resources. If there is excess capacity available, virtual machines are able to utilize more.

Limits provide a hard ceiling for resource allocation. You can configure a virtual machine to get no more than 1GHz of virtual CPU power, even if more CPU capacity is available. Limits are often used in shared infrastructure configurations where customers are charged for resource use.

 

Resource Pools

Resource pools let you divide and allocate CPU and memory resources hierarchically by business need. Reasons to divide and allocate CPU and memory resources include maintaining administrative boundaries, enforcing chargeback policies or accommodating geographic locations or departmental divisions. Resource pools are also used to delegate privileges to other users and groups.

Configuring CPU and memory resource pools is possible on non-clustered (standalone) vSphere hosts or in a cluster enabled for VMware Distributed Resource Scheduler (DRS).

Like virtual machines, a resource pool has reservation, limit and share values for both CPU and memory resources:

  • Shares – They guarantee that the resource pool is given a certain amount of CPU and memory resources.
  • Reservation – This is the minimum amount of CPU and memory resources that are required by the resource pool.
  • Limit – This is the maximum amount of CPU and memory resources given to this resource pool. By default, the resource pool is given “unlimited” access to the maximum amount of resources.
  • Expandable reservation – This allows a resource pool that cannot satisfy a reservation request to search through its hierarchy to find unreserved capacity to satisfy the reservation request.

Shares, reservations, and limits can also be applied at the virtual machine level and are constrained by the resources of each virtual machine's resource pool.

 

Virtualization Advantages

 

Compatibility

Just like a physical computer, a virtual machine hosts its own guest operating system and applications and has all the components found in a physical computer (CPU, video card, hard disk, network card, etc). Virtual machines are completely compatible with all standard x86 operating systems, applications and device drivers and can run all the same software as a physical x86 computer.

 

Isolation

While virtual machines can share the physical resources of a single computer, they remain completely isolated from each other as if they were separate physical machines. If there are four VMs on a single physical server and one of them crashes, the other three remain available. The availability and security of applications running in a virtual environment is far superior to applications running in a traditional, non-virtualized system due to isolation.

 

Encapsulation

A virtual machine is essentially a software container that bundles or encapsulates a complete set of virtual hardware resources with an operating system and all its applications. Encapsulation makes virtual machines incredibly portable and easy to manage. You can move and copy a virtual machine from one location to another like any other file or save it on a standard data storage medium, from a pocket-sized USB flash memory card to an enterprise storage area networks (SANs).

 

Hardware Independence

Virtual machines are completely independent from their underlying physical hardware. You can configure a virtual machine with virtual components (for example, CPU, network card, SCSI controller) that are completely different from the physical components that are present on the underlying hardware. Virtual machines on the same physical server can even run different kinds of operating systems (Windows, Linux, etc).

When coupled with the properties of encapsulation and compatibility, hardware independence gives you the freedom to move a virtual machine from one type of x86 computer to another without making any changes to the device drivers, operating system or applications. In fact, you can run a heterogeneous mixture of operating systems and applications on a single physical computer.