Monday 10 September 2012

Why Use VM?

Physical Machine Virtual Machine


Difficult to Move or Copy Easy to Move and Copy

Encapsulated into files

Independent of Physical Hardware
Bound to a specific set of hardware components Easy to Manage

Isolated from other Vms running on the same physical hardware

Insulated from physical hardware changes
Often has short life cycle
Require personal contact to upgrade hardware

What is a VM?


What is a VM?

  • From the user's perspective, a VM is software platform that ,like a physical computer runs an OS and applications.
  • From the perspective of hyper visor, a VM is a discrete set of files, including s configuration file, virtual disk, an NVRAM setting file and log file.
  • Virtual machines are separated into two major categories
  1. System Virtual Machines
  2. Process Virtual Machines
System Virtual Machines:
A system virtual machine provides a complete system platform which supports the execution of a complete operating system (OS).

advantages:
  • multiple OS environments can co-exist on the same computer, in strong isolation from each other
  • the virtual machine can provide an instruction set architecture (ISA) that is somewhat different from that of the real machine
  • application provisioning, maintenance, high availability and disaster recovery.
disadvantages :
  • a virtual machine is less efficient than a real machine when it accesses the hardware indirectly
  • when multiple VMs are concurrently running on the same physical host, each VM may exhibit a varying and unstable performance (Speed of Execution, and not results), which highly depends on the workload imposed on the system by other VMs, unless proper techniques are used for temporal isolation among virtual machines.
Process Virtual Machines:

  • A process VM, sometimes called an application virtual machine
  • Runs as a normal application inside a host OS and supports a single process. It is created when that process is started and destroyed when it exits. 
  • Its purpose is to provide a platform-independent programming environment that abstracts away details of the underlying hardware or operating system, and allows a program to execute in the same way on any platform.
  • A process VM provides a high-level abstraction — that of a high-level programming language (compared to the low-level ISA abstraction of the system VM). 
  • Process VMs are implemented using an interpreter; performance comparable to compiled programming languages is achieved by the use of just-in-time compilation.
  • This type of VM has become popular with the Java programming language, which is implemented using the Java virtual machine. Other examples include the Parrot virtual machine, which serves as an abstraction layer for several interpreted languages, and the .NET Framework, which runs on a VM called the Common Language Runtime.



Virtualization classifications

Virtualization classifications

  1. Hypervisor
  2. Host based
Hypervisors:
  • also called bare metal.
  • A hypervisor is the primary component of virtualization that enables basic computer system partitioning (CPU,Memory and I/O).
  • hypervisor is an architecture installs the virtualization layer directly on a clean x86 based system.
  • It has a direct access to the hardware resources, rather than going through an OS.
  • Examples : Oracle VM Server for SPARC, the Citrix XenServer, KVM, VMware ESX/ESXi, and Microsoft Hyper-V hypervisor.
         Benefits:
  • More efficient
  • Delivers greater scalability
  • Robustness
  • Performance
Hostbased:
  •  Host operating system based  virtualization also called host based virtualization.
  • Installs and runs the virtualization layer as an application on top of an OS and supports the broadest range of hardware configurations.
  • BHyVe, VMware Workstation and VirtualBox are examples.

Why Virtualize ?

Why Virtualize ?


  • Reduce costs by increasing energy efficiency and requiring less hardware with server consolidation.
  • Build up business continuity through improved disaster recovery solutions and deliver high availability throughout the datacenter with VMware Site Recovery Manager.
  • Virtualize enterprise apps, including Oracle, Exchange, SQL Server, Sharepoint and SAP, and deliver the highest SLAs and top performance.
  • Use policy-based automation and ensure compliance and performance with a zero-touch infrastructure using the vCenter Product Family for virtualization management
  • Idle Resources are not wasted.
Examples of virtualization scenarios:
  • Running one or more applications that are not supported by the host OS: A virtual machine running the required guest OS could allow the desired applications to be run, without altering the host OS.
  • Evaluating an alternate operating system: The new OS could be run within a VM, without altering the host OS.
  • Server virtualization: Multiple virtual servers could be run on a single physical server, in order to more fully utilize the hardware resources of the physical server.
  • Duplicating specific environments: A virtual machine could, depending on the virtualization software used, be duplicated and installed on multiple hosts, or restored to a previously backed-up system state.
  • Creating a protected environment: if a guest OS running on a VM becomes damaged in a way that is difficult to repair, such as may occur when studying malware or installing badly behaved software, the VM may simply be discarded without harm to the host system, and a clean copy used next time.

Sunday 9 September 2012

How Does Virtualization Work?


How Does Virtualization Work?

With x86 computer virtualization, a virtualization layer is installed between hardware and the operating system. This virtualization layer allows multiple system instances to run concurrently within VMs on a single computer, dynamically partitioning and sharing the available resources such as CPU, Storage, and I/O devices.

Virtualization approaches use either a hosted or hyper visor architecture.

What is Virtualization?


What is Virtualization?
  • Virtualization is a technology that transforms hardware into software.
  • virtualization allows you to run multiple OS as VM on a single computer.
  • Virtualization is neither Simulation or Emulation.
Simulation: is something that looks like something else. Eg; Flight simulator
Emulation: require software to translate commands for emulated hardware into commands the physical hardware can understand.