AddThis Social Bookmark Button

May 2013 Meeting Commentary

Hypervisors

 

Our esteemed Executive VP and Web Master, Bernard Igiri, spoke about the current status of hypervisors. 

Software virtualization has been a major topic in the enterprise space for quite some time, but has become an important technology for embedded systems only in the last few years.

System virtualization enables you to consolidate systems, workloads, and operating environments, optimize resource use, and improve IT flexibility and responsiveness.

System virtualization creates many virtual systems within a single physical system. Virtual systems are independent operating environments that use virtual resources. System virtualization can be approached through hardware partitioning or hypervisor technology.

Hardware partitioning subdivides a physical server into fractions, each of which can run an operating system. These fractions are typically created with coarse units of allocation, such as whole processors or physical boards. This type of virtualization allows for hardware consolidation, but does not have the full benefits of resource sharing and emulation offered by hypervisors.

Hypervisors use a thin layer of code in software or firmware to create and run  virtual machines  to achieve fine-grained, dynamic resource sharing.  Because hypervisors provide the greatest level of flexibility in how virtual resources are defined and managed, they are the primary technology of choice for system virtualization.

A hypervisor provides a software virtualization environment in which other software, including operating systems, can run with the appearance of full access to the underlying system hardware, but in fact such access is under the complete control of the hypervisor. The software running in such a hypervisor managed environment is said to be executing within a virtual machine (VM). Multiple VMs may be managed simultaneously by a hypervisor.

 

Internet hosting service companies use hypervisors to provide virtual private servers. Amazon EC2, Liquid Web, Fujitsu Global Cloud Platform,[33] Linode, SparkNode, and Rackspace Cloud use Xen as the VM hypervisor.[34]

Hypervisors also often operate on mainframes and large servers running IBM, HP, and other systems.

 

Hypervisor Types

 

There are two types of hypervisors. Type 1 hypervisors (or  bare metal which means a computer without its operating system, native) run directly on the host's system hardware to control the hardware and to manage guest operating systems.  A guest operating system thus runs on another level above the hypervisor.  The classic implementation of virtual machine architectures; the original hypervisors were the test tools.  Modern equivalents of this are Oracle VM Server for SPARC, Oracle VM Server for x86, the Citrix XenServer, VMware ESX/ESXi, KVM, and Microsoft Hyper-V hypervisor.

Type 1 hypervisors are typically the preferred approach because they can achieve higher virtualization efficiency by dealing directly with the hardware. Type 1 hypervisors provide higher performance efficiency, availability, and security than type 2 hypervisors.

 

Type 2 hypervisors (or hosted) run within a conventional operating system environment. With the hypervisor layer as a distinct second software level, guest operating systems run at the third level above the hardware. Each virtual machine is called a guest machine. The hypervisor presents the guest operating systems with a virtual operating platform and manages the execution of the guest operating systems. Multiple instances of a variety of operating systems may share the virtualized hardware resources.  BHyVe, VMware Workstation and VirtualBox are examples of Type 2 hypervisors. 

The hypervisors run on a host operating system that provides virtualization services, such as I/O device support and memory management. Type 2 hypervisors are used mainly on client systems where efficiency is less critical. Type 2 hypervisors are also used mainly on systems where support for a broad range of  I/O devices is important and can be provided by the host operating system.

Type 1 hypervisor runs directly on the hardware.  Type 2 hypervisor runs on another operating system, such as FreeBSD, Linux, or Windows.

 

 
Hypervisor Examples

 Examples of  Type 1 Hypervisors are

  • NVIDIA Grid VGX
  • Xen
  • Citrix Xen Server
  • VMware ESX Server
  • MS Hyper-V
  • IBM Power Hypervisor
  • Parallels Server
  • Oracle VM Server

 

 Examples of  Type 2 Hypervisors are

  • Oracle VirtualBox
  • VMware Player
  • MS Virtual PC
  • Parallels Workstation

 

 Hypervisor Uses

 

Development Uses for Hypervisors

System Virtualization also has benefits when working on development (including the development of operating systems): running the new system as a guest avoids the need to reboot the physical computer whenever a bug occurs.   Other uses include:

  • Cross platform testing
  • Software performance testing
  • Virtual network testing
  • System configuration testing
  • Server virtualization

 

 Server Virtualization

  • Increased utilization
  • Rapid provisioning
  • Dynamic fault tolerance against software failures (through rapid bootstrapping or rebooting)
  • Hardware fault tolerance (through migration of a virtual machine to different hardware)
  • Securely separate virtual operating systems
  • Support legacy software as well as new OS instances on the same computer
  • Development and test servers for everyone
  • Minimize production and test environment differences.
  • Server replication
  • Cloud computing

 

 Hypervisor Uses in Cloud Computing

  • Virtualized grid computing
  • Pay for what you use
  • Automatic scaling

 

Security

A use case for an embedded hypervisor is System security. An embedded hypervisor is able to provide secure encapsulation for any subsystem defined by the developer, so that a compromised subsystem cannot interfere with other subsystems. For example, an encryption subsystem needs to be strongly shielded from attack to prevent leaking the information the encryption is supposed to protect. As the embedded hypervisor can encapsulate a subsystem in a VM, it can then enforce the required security policies for communication to and from that subsystem. (adapted from Wikipedia). 

Sandboxed guest systems can also help in computer-security research, allowing study of the effects of some virus or worm without the possibility of compromising the host system.

 

 Hypervisor Benefits


Hypervisors (system virtualization) yields the many benefits.

 

Consolidate systems, workloads, and operating environments

  • Multiple workloads and operating systems can be combined onto one physical server, reducing the costs of hardware and operations.
  • New versions of software can be tested on the hardware that they will later use in production mode without affecting production workloads.
  • Virtual systems can be used as low-cost test systems without jeopardizing production workloads.
  • Multiple operating system types and releases can run on a single system. Each virtual system can run the operating system that best matches its application or user requirements.

 

Optimize resource use

  • Hypervisors can achieve high resource use by dynamically assigning virtual resources (such as processors and memory) to physical resources through mechanisms such as dispatching and paging. The virtual resources that they provide can exceed the physical system resources in quantity and functionality.
  • System virtualization enables the dynamic sharing of physical resources and resource pools. This results in higher resource use, especially for variable workloads whose average needs are much less than an entire dedicated resource.
  • Different workloads tend to show peak resource use at different times of the day and week, so implementing multiple workloads in the same physical server can improve system use, price, and performance.

 

Improve IT flexibility and responsiveness

  • Service providers can create one virtual system or clone many virtual systems on demand, achieving dynamic resource provisioning.
  • Virtual systems with variable resources enable the manual or automated management of workload resources
  • Different workloads tend to show peak resource use at different times of the day and week, so implementing multiple workloads in the same physical server can improve system use, price, and performance.
  • Hardware appliance vendors may decide to ship their appliance running several guest systems, so as to be able to execute various pieces of software that require different operating systems.

 

Contact

 

For additional information on hypervisors, contact Bernard Igiri

http://www.linkedin.com/in/bernardigiri

 

Additional  Links.

 

Use the links below to learn more about the invention of hypervisors and to download hypervisors.

 

Ubuntu (/ʊˈbʊnt/ uu-BUUN-too)[7][8] is a computer operating system based on the Debian Linux distribution and distributed as free and open source software, using its own desktop environment. It is named after the Southern African philosophy of ubuntu, which can be translated as "humanity towards others" or "the belief in a universal bond of sharing that connects all humanity".[9]

As of 2012, according to online surveys, Ubuntu is the most popular Linux distribution on desktop/laptop personal computers,[10][11][12][13] and most Ubuntu coverage focuses on its use in that market. However, it is also popular on servers and for cloud computing.[14]

 

Oracle VM VirtualBox (formerly Sun VirtualBox, Sun xVM VirtualBox and innotek VirtualBox) is an x86 virtualization software package, created by software company Innotek GmbH, purchased in 2008 by Sun Microsystems, and now developed by Oracle Corporation as part of its family of virtualization products. Oracle VM VirtualBox is installed on an existing host operating system as an application; this host application allows additional guest operating systems, each known as a Guest OS, to be loaded and run, each with its own virtual environment.

Supported host operating systems include Linux, Mac OS X, Windows XP, Windows Vista, Windows 7, Windows 8, Solaris, and OpenSolaris; there is also a port to FreeBSD.[3] Supported guest operating systems include versions and derivations of Windows, Linux, BSD, OS/2, Solaris and others.[4] Since release 3.2.0, VirtualBox also allows limited virtualization of Mac OS X guests on Apple hardware, though OSX86 can also be installed using VirtualBox.[5][6]