2.2) CLOUD COMPUTING

1.1.2)Operating system level virtualization

  • There is no Virtual Machine manager and the virtualisation is done within a single operating system OS kernel allows multiples separated address spaces.
  • The kernel layer is responsible for sharing the system resources among instances and for limiting the impact of instances on each other.
  • OS provide separate execution environment for application running concurrently.
  • OS is supporting this type of virtualisation all general purpose, time shared operating system with the capability to provide stronger namespace and resource isolation.
  • Evolution of the chroot mechanism in UNIX systems. In case of chroot operation, root of file system is changed for a particular application. This also includes various device drivers, process cannot address spaces those are not exposed by OS. Thus process can run incomplete isolation with each other.
  • OS itself provides segregated containers for application execution, there is no need for VMM.performance is significantly improved.
  • On the other hand, OS level virtualisation does not provide flexibility of hardware virtualisation as all the address space created on same operating system.
  • Examples of operating system level virtualisation or freeBSD jails, IBM logical partition solarisZones and containers, parallels virtuozzo containers, openVZ, iCore virtual accounts, free virtual private servers and others.

1.1.3)Programming language level virtualisation

  • Helps in ease of deployment and managed execution.
  • Also known as process virtual machines or high level virtual machines.
  • Provides uniform execution environment across different platforms.
  • Hello Sumo control over execution of application thereby providing more security.
  • Examples include Java with its Java Virtual Machine and. NET with its common language infrastructure.
  • Figure below shows representation of JVM. It consists of virtual machine executing the bytecode of the program, which is result of the compiling process. Java provides, write once run anywhere.

                                          

  • . NET on other hand provides a common language infrastructure which provides ability to support multiple languages.

                                                    

                                                        Fig: .NET structure

1.1.4)Application level virtualisation

  • These techniques are mostly conserved with partial file systems, libraries and operating system component emulation.
  • Allows application to be run in runtime environments that do not natively support all the features required by such applications.
  • Emulation can be used to execute programming binaries compared from different hardware architectures.
  • Application virtualisation is a good solution in The Case of Missing libraries in the host operating system. In this case a replacement library can be linked with the application or library calls can be remapped to existing functions available in the host system.
  • VMM is much lighter in this case.
  • Like programming level virtualisation that works for all the applications for a particular language or platform come application level virtualisation works for single specific application.
  • Example:Wine which is a software application that allows Unix operating system executive Windows applications. On MAC OS X, application called crossover can be used for such a purpose. Application programmers have to build their application using library is provided by Wine or crossover in order to make their applications usable on their other platforms.

Other type of virtualisation

          Apart from execution virtualizations error where is different types of virtualisation they include

  • storage virtualisation: one of the example include Storage Area Network. This uses high bandwidth network to provide access to storage capacity in network. Users do not have to be worried about the data storage location. That is accessed using logical paths.
  • Network virtualisation: combines hardware application and specific software for the creation and management of a virtual network. Aggregate different physical network into single logical network. Example virtual LAN. A VLANis an aggregation now post that communicate with each other as though they were located under the same broadcasting domain.
  • Desktop virtualisation: Desktop virtualisation abstracts the desktop environment available on a personal computer in order to provide access to it using a client or server approach. Example includes Windows remote desktop service where in , Remote Desktop can be accessed as if it is presently physical with us. Sun virtual desktop interface, parallels virtual desktop infrastructure a some of the other examples.
  • Application server virtualisation: Abstracts collection of application server to provide all the services as if they are a single service.

Virtualisation and cloud computing

  • virtual reservation is critical aspect of cloud computing as it provides a degree of flexibility in security, manageability and isolation.
  • Virtualisation is primarily used to offer configurable computing environment and storage.
  • Execution and computing environment virtualizations are more popular than network virtualisation.
  • Hardware virtualisation enabled infrastructure as a service.
  • Programming language virtualisation enabled platform as a service.
  • Capability to provide configurable and customisable solution provide attractive business opportunity to businesses.
  • Virtualisation alone isolation and finer control, thus simplifying the leasing of services and their accountability on the vendor side.
  • Virtualisation is an enabler for computation on demand.
  • Virtualization provide sufficient computer systems by means of consolidation of various subsystems in a fashion that is transparent to users.
  • Using a virtualization variety of environment can be served using same resources this is possible because virtualizations allows us to create isolated and controllable environments.
  • Virtual Machine migration: process of moving virtual machine from one server hardware to another in order to achieve server consolidation.
  • Server consolidation and approach used to ensure efficient uses of computer server resources in order to reduce total number of servers. This approach is deployed to ensure that server resources are not underutilised.
  • Live migration: refers to the process of moving running virtual machine from one server to another server without stopping its execution. This causes no disruption in their user activities.

Pros and cons of virtualization

Virtualisation is critical aspect in cloud computing. Advancement in cloud cloud computing and removal of barriers in internet usage has made sure that virtualisation as overcome the berries of performance.  Though, it has some advantages and disadvantages as listed below

Pros:

  • Manager execution and isolation- this allows building secure and controllable computing environments.
  • Security- a virtual execution environment can be configured as a sandbox, thus preventing any harmful operation to cross the borders of the virtual host.
  • Configurable- allocation and deallocation of resources is easy and configurable.
  • Performance- fine tuning of resources is possible thereby helping improve performance in case of server consolidation.
  • Portability- what's really in romance are represented by one or two files. These can be easily porter someone's avatar host machine to another physical machine. Such virtual machine do not have any dependency other then Virtual machine manager software. In that sense there are self-sufficient. Examples java programs are complied once and run everywhere they only requires the java what you're missing can be installed on the host of the same applies to hardware level virtualisation.
  • Cost benefit- because virtual machines are portable , it is expected that the number of virtual machines are still on single server machine. This significantly bring down hardware costs down. This also means , efficient use of resources.

Cons:

  • Performance degradation of guest machine: As the execution of application are routed via Virtual Machine manager, performance of application on guest may not match up to the application performance on the host machine. Virtual Machine manager performs number of activities that adds performance overhead. These includes
    • maintaining the status of virtual processors.
    • Support of privileged instructions( trap and simulate privileged instructions).
    • Support of paging within VM.
    • Console functions.
  • Degraded User experience: not all the features of host machine are exposed to guest machine. For example device driver. This introduces inefficient User experience on guest machines.
  • Security: New Threats are constantly forced to virtualizations environments. Any hole in configuration or setup can be exploited by hackers to damage systems. In the case of hardware virtualisation, Malicious programs can preload themselves before the operating systems and act as thin Virtual Machine manager towards it.

Technology examples

Xen paravirtualization

  • Initially developed by group of researchers from University of Cambridge.
  • Citrix also offer it as a commercial solution Xensource.
  • Paravirtualization is an efficient and lightweight virtualizations technique introduced by the XEN project team.
  • Used either for desktop or server virtualisation.
  • XEN and hypervisor constitutes the core of this technology.
  • It's a most popular implementation for paravirtualization.
  • Paravirtualization allows high performance of guest operating system and eliminates any performance losses.
  • All X86 platform, executes in highest privileged mode and controls access of guest operating system to underlying hardware thereby providing performance benefits.
  • Many of the X86 implementations support for different security levels called rings, wearing zero represent the level with the highest privileges and ring 3 the level with lowest ones.
  • PV delivers high performance then full virtualizations because the operating system and hypervisor work together more efficiently, without the overhead imposed by the evolution of the systems resources.
  • Disk and Network Support is implemented via a pair of PV backend and PV frontend drivers.
  • Architecturally, PV Works By opening additional channels of communication between the hypervisors and the guest operating systems via PV front hand and back and drivers.

                                 

                               Fig: Xen Architecture

Posted on by