0% found this document useful (0 votes)
142 views21 pages

Cloud Computing and Virtualization Overview

This document is a technical seminar report on cloud and virtualization submitted by Saloni Kumari. It discusses cloud computing and how virtualization is foundational to cloud computing by allowing for the separation of applications from hardware through virtual machines. It reviews virtualization techniques including full virtualization using binary translation, paravirtualization, and hardware assisted virtualization. It also discusses the architecture of the Xen hypervisor and how it uses a domain 0 virtual machine to control other virtual machines.

Uploaded by

anupamjha Anu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
142 views21 pages

Cloud Computing and Virtualization Overview

This document is a technical seminar report on cloud and virtualization submitted by Saloni Kumari. It discusses cloud computing and how virtualization is foundational to cloud computing by allowing for the separation of applications from hardware through virtual machines. It reviews virtualization techniques including full virtualization using binary translation, paravirtualization, and hardware assisted virtualization. It also discusses the architecture of the Xen hypervisor and how it uses a domain 0 virtual machine to control other virtual machines.

Uploaded by

anupamjha Anu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 21

Cloud and Virtualisation

A Technical Seminar Report


Submitted as per the requirement for B.Tech.
Under Biju Patnaik University of Technology, Rourkela.

Submitted by
Saloni Kumari Roll CSE201511594

2018 - 2019

Under the guidance of


Mr. Rabindra Kumar Shial

NATIONAL INSTITUTE OF SCIENCE & TECHNOLOGY


Palur Hills, Berhampur- 761008, Odisha, India
ABSTRACT
Cloud Computing involves large number of computers connected through a network
that can be physically located anywhere. Providers rely heavily on virtualization to
deliver their cloud computing services. Cloud Computing can reduce operational costs
by using resources more efficiently. The terms “cloud computing” and “virtualization”
are often used interchangeably; however, they mean different things. Virtualization is
a foundation of cloud computing, without it, cloud computing, as it is most widely
implemented, would not be possible. Cloud computing separates the application from
the hardware. Virtualization separates OS from the hardware. Various providers offer
virtual cloud services that can dynamically provision servers as required.

i
ACKNOWLEDGEMENT

I give my sincere thanks to Mr. Rabindra Kumar Shial, Seminar Advisor for
giving me the opportunity and motivating us to complete the seminar within stipulated
period of time and providing a helping environment.

I give my sincere thanks to Mr. Ashish Kumar Das, Seminar Coordinator, for
helping me throughout my seminar and encouraging me to complete this seminar.

I acknowledge with immense pleasure the sustained interest, encouraging attitude and
constant inspiration rendered by Prof. Sangram Mudali (Director) & Prof. Geetika
Mudali (Placement Director) N.I.S.T. Their continued drive for better quality in
everything that happens at N.I.S.T. and selfless inspiration has always helped us to
move ahead.

Saloni Kumari

ii
TABLE OF CONTENTS

1. Introduction…………………………………………………………………..1
2. Review on Virtualization…………………………….………………………2
3. Vitualization for Cloud……………………………………………………....7
4. Types of Virtualization………………………………………………………9
5. Performance Evaluation………………………………………...………….13
6. Conclusion………………………………………………………….………..15
7. References…………………………………………………………………...16

iii
LIST OF FIGURES

Figure 2.1 - Two types of architecture of VMM …………………...………………3

Figure 2.2 – The architecture of Xen………………………………………………..4

Figure 2.3 - The three-tier cloud computing platform based on VMware Vcloud
tools………………………………………………………..…………………………5

Figure 4.1 – Virtualization types……………………………………………………9

Figure 4.2 - Traditional Model vs Bare Model vs Hosted Model…………….….10

iv
1. INTRODUCTION

Cloud computing refers to a collaborative IT (Information Technology) environment,


which is planned with the intention of measurable and remotely purveying scalable IT
resources for effective and efficient utilization. National Institute of Standards and
Technology (NIST) has given a definition for Cloud computing which says that
―Cloud Computing is a model for enabling convenient, on-demand network access
to a shared pool of configurable computing resources (eg., networks, servers, storage,
applications, and services) that can be rapidly provisioned and released with minimal
management effort or service provider interaction[1]. Five essential characteristics of
cloud computing listed by NIST are on-demand self-service, broad network access,
resource pooling, rapid elasticity and measured service. Mobile cloud computing is
the computing which refers to anytime, anywhere accessibility to applications and
data through internet using mobile devices. Traditional computing resources are
stored in an individual device and accessed by an authenticated user. In Cloud
computing, resource are stored in centralized manner and accessed on demand basis.
In recent days, mobile devices and subsequent mobile computing become an
imperative component in cloud computing. Internet made the possibilities of
accessing applications and data from anywhere at any time. According to Juniper
research, the mobile users and enterprise market for mobile cloud based applications
worth are expected to increase to $9.5 billion by 2014. Aepona describes that MCC
(Mobile Cloud Computing) as a new paradigm for mobile applications whereby the
data processing and storage are moved from the mobile devices to powerful and
centralized computing platforms located in clouds. These centralized applications are
then accessed over the wireless connection based on a thin native client or web
browser on the mobile devices.

Virtualization is a technique which allows creating abstract layer of system resources


and hides the complexity of hardware and software working environment. The
virtualization provides hardware independence, isolation of guest operating system
and encapsulation of entire virtual machine grouped in a single file. Virtualization
commonly implemented with hypervisor technology, which is a software or firmware
elements that can virtualizes system resources.

v
2. REVIEW ON VIRTUALIZATION

Virtualization originated in the IBM project in 1964, but it development was very
slow. After commercial virtualization software on the X86 platform was introduced by
VMware Inc in 1999, it came into the rapid development period. At present, with
AMD, Intel and Microsoft joining, the development has entered a stage of outbreak.

The architecture of x86 virtualization


With the architecture of x86 virtualization, a layer called Hypervisor Virtual Machine
Monitor (VMM) is added between the hardware and operating system. There are two
architecture type of VMM as shown in figure 1. Type I is a hypervisor architecture
which installs the virtualization layer directly on a clean x86-based system. Type II is
the hosted architecture which installs and runs the virtualization layer as an
application on top of an operating system. At present, Type I is used in the mainstream
enterprise-class virtualization products, including Oracle VM, VMware ESX Server,
Microsoft Hyper-V and Citrix XenServer[2].

Three techniques for x86 virtualization with type I VMM


With x86 architecture, each VMM needs to implement virtualization with CPU
virtualization, memory virtualization and device and I/O Virtualization. The x86
architecture offers four levels of privilege known as Ring 0, 1, 2 and 3 to operating
systems and applications to manage access to the computer hardware. The x86
architecture requires virtualized instructions set so that the guest OS on top of the
VMM can have access to the computer hardware resources, but there are some
sensitive instructions which can’t effectively be virtualized because they have
difficulty in trapping. In order to resolve this problem, three techniques exist now in
implementing virtualization in the CPU on the x86 architecture[2].

vi
Fig. 2.1. Two types of architecture of VMM

Full virtualization using binary translation


In a fully virtualized environment, hypervisor runs on the bare hardware, acting as the
host operating system, but the virtual machines managed by hypervisor runs the guest
OS. The hypervisor provides full virtualization through a combination of binary
translation and direct execution. Binary translation makes sensitive instructions
virtualized through translating a small set of the processor instructions. Other
instructions can be directly executed on the virtual machines. The guest OS can’t
distinguish itself from being installed on the physical machine or on the hypervisor.

The full virtualization offers the advantages of simplified migration and portability. It
provides the best isolation and security for virtual machines. The unmodified guest
OS instance can run on virtualized or native hardware. Its main drawback is low
performance by using binary translation work. There are many full virtualization
products, such as Microsoft Virtual Server[2].

OS assisted virtualization or paravirtualization


This approach requires that the hypervisor manage each virtual machine and let them
be independent of each other. This approach adds a specific virtual instruction which
is named Hyper calls in the guest operating system and adds the corresponding call
interface in the hypervisor, through which instructions can be directly invoked by the
hypervisor layer. The paravirtualization offers the advantages of high performance
and lower virtualization overhead. Its drawback is poor compatibility and portability
vii
because of the need to modify the paravirtualized virtual machine and operating
systems. There are many examples of paravirtualization, such as Xenserver.

Hardware assisted virtualization


By extending and upgrading the CPU instruction set and the processor operating
mode, complete virtual operating system can directly call to the hardware resources.
Typical technologies are Intel VT and AMD-V.

The architecture of Xen


Xen is an open-source type-I hypervisor, supporting paravirtualization and full
virtualization. It consists of three most basic components as shown in figure 2,
including Xen Hypervisor, Domain 0 and DomainU. Xen Hypervisor runs directly on
top of the hardware, but also controls the execution of virtual machines as they share
the common processing environment. The domain 0, a modified Linux kernel,
contains drivers for the hardware, as well as the tools tack to control VMs. It has
rights to access physical I/O resources and can interact with the other virtual
machines. The Domain 0 must run before any other virtual machines can be started.
The DomainU is a client operating system running on Xen hypervisor. It can’t directly
access the hardware resources. However, a plurality of DomainU can run
independently[2].

Fig. 2.2. The architecture of Xen

viii
In summary, there is no open standard to define and manage virtualization. At present,
each company develops their own virtualization solutions. However, many people
think new hardware assisted virtualization is very promising in the future because it
will diminish the need of paravirtualization and full virtualization.

Applying Virtualization to Cloud Computing


Cloud computing is the delivery of computing as a service rather than as a product,
whereby shared resources, software, and information are provided to computers and
other devices as a utility over a network. A well-designed cloud computing platform
should have the characteristics of dynamic scalability, on-demand division of
resources, high availability, high performance and load balancing. Cloud computing
involves a lot of research themes including power management,
stability, virtualization and scalability, etc. The virtualization technology is just one of
several important technologies in cloud computing. Through virtualization, Cloud
computing manages the hardware in a distributed shared resource pool. All IT
resources through virtualization can improve resource utilization and allocated
dynamically. At present, the products of VMware, vCloud and Xen Cloud Platform is
generally used to build the cloud platform. The Xen Cloud Platform is an enterprise-
ready sever virtualization and cloud computing platform based on the powerful Xen
hypervisor. Though Xen Cloud Platform, users can access VM consoles, view VM
properties, perform power operations, manage VM snapshots, and migrate VMs
between server hosts in a pool. The VMware vCloud is a virtual VMware's cloud
infrastructure tools. Here we demonstrate how to build a cloud computing
infrastructure using the VMware vCloud tools.

Fig. 2.3. The three-tier cloud computing platform based on VMware Vcloud tools

ix
As shown in figure 3, the cloud computing platform solution also has three-tier
structure. The SAAS layer is mainly for terminal applications virtualization. The
PAAS layer provides cloud application platform-it allows developers to create
portable cloud applications. The IAAS layer is a cloud-based infrastructure and is
built by the VMware vCloud. The VMware vCloud has five main components, which
are VMware vCloud Director, VMware vSphere, VMware vShield, VMware vCenter
Chargeback and VMware vCenter. They are the core of computing services
infrastructure. The VMware vCloud Director component can allow customers
integrate infrastructure resources into virtual data centre resource pool, and allow
them to on-demand consumption of these resources. It can also use technologies such
as linked clones and snapshots to dramatically speed up access to the infrastructure.
The VMware vShield component provides network security services including Layer
2 isolation, NAT, firewall, DHCP, and VPN. It supports virtualization protection for
virtual data centres and cloud computing environments, and it also allows the user to
increase application and data security. The VMware vCenter component provides a
central control point to monitor every aspect of virtual infrastructure and achieve daily
automate tasks. It also manages large data centre with scalability. The VMware
vCenter Chargeback component provides resource metering and cost models. It is
mainly to help users get accurate cost estimates and analysis of cloud computing
services. It also can help users better understand what the cost of resources is, and
how to optimize resource utilization and reduce the overall infrastructure costs of
cloud computing services. The VMware vCloud tools constructed based on vSphere-
the vSphere component has many features such as server virtualization, storage
virtualization and network virtualization. It can perform automatic load balancing
across hosts and real-time virtual machine migration. It also performs non-disruptive
storage migration, eliminates virtual machine storage and I/O bottlenecks and frees up
valuable storage capacity.

In short, the IAAS layer is the core layer in the cloud computing services platform,
and we can build the IAAS layer using the VMware vCloud tools. Through this
framework shown in figure 2.3, a public or private cloud platform can be built for
enterprises[2].

x
3. VIRTUALIZATION FOR CLOUD

Virtualization technology diverts the human’s perspective for utilizing IT resources


from physical to logical. The goal of virtualization is to collaboratively utilize the IT
resources such as storage, processor and network to maximum level and to reduce the
cost of IT resources which can be achieved by combining multiple idle resources into
shared pools and creating different virtual machines to perform various tasks
simultaneously. The resources can be allocated or altered dynamically. User should be
conscious of basic techniques such as emulation, hypervisor, full, para and hardware
assisted virtualization while using virtualization in cloud computing environment[3].

Emulation: It is a virtualization technique which converts the behavior of the


computer hardware to a software program and lies in the operating system layer
which lies on the hardware. Emulation provides enormous flexibility to guest
operating system but the speed of translation process is low compared to hypervisor
and requires a high configuration of hardware resources to run the software.

Virtual Machine Monitor or Hypervisor: A software layer that can monitor and
virtualize the resources of a host machine conferring to the user requirements. It is an
intermediate layer between operating system and hardware. Basically, hypervisor is
classified as native and hosted. The native based hypervisor runs directly on the
hardware whereas host based hypervisor runs on the host operating system. The
software layer creates virtual resources such as CPU, memory, storage and drivers.

Para Virtualization: This technique provides special hypercalls that substitutes the
instruction set architecture of host machine. It relates communication between
hypervisor and guest operating system to improve efficiency and performance.
Accessing resources in para virtualization [15] is better than the full virtualization
model since all resources must be emulated in full virtualization model. The drawback
of this technique is to modify the kernel of guest operating system using hypercalls.
This model is only suitable with open source operating systems.

xi
Full Virtualization: Hypervisor creates isolated environment between the guest or
virtual server and the host or server hardware. Operating systems directly access the
hardware controllers and its peripheral devices without cognizant of virtualized
environment and requirement modifications.

xii
4. TYPES OF VIRTUALIZATION

There are three major types of virtualization such as Server virtualization, Client
virtualization and Storage virtualization. The architecture and categorization of
virtualization techniques are illustrated in Fig 4.1[3].

Fig. 4.1. Virtualization types

Server Virtualization: In server virtualization, single server performs the task of


multiple servers by portioning out the resources of an individual server across multi-
environment. The hypervisor layer allows for hosting multiple applications and
operating systems locally or remotely. The advantages of virtualization include cost
savings, lower capital expenses, high availability and efficient use of resources.

Client Virtualization: This client virtualization technology makes the system


administrator to virtually monitor and update the client machines like workstation
desktop, laptop and mobile devices. It improves the client machines management and
enhances the security to defend from hackers and cybercriminals. There are three
types of client virtualization. First, remote or server hosted virtualization which is
hosted on a server machine and operated by the client across a network. Second, local
or client hosted virtualization in which the secured and virtualized operating
environment runs on local machine. Third, application virtualization that provides

xiii
multiple ways to run an application which is not in traditional manner. In this
technique an isolated virtualized environment or partitioning technique is used to run
an application.

Storage Virtualization: It creates the abstraction of logical storage from physical


storage. Three kinds of data storage are used in virtualization, they are DAS (Direct
Attached Storage), NAS (Network Attached Storage) and SAN (Storage Area
Network). DAS is the conventional method of data storage where storage drives are
directly attached to server machine. NAS is the shared storage mechanism which
connects through network. The NAS is used for file sharing, device sharing and
backup storing among machines. SAN is a storage device that are shared with
different server over a high accelerate network. Hypervisor is the software package
that controls working access to the physical hardware of host machine. There are two
kinds of hypervisor models as hosted and bare metal / native. Hosted hypervisor
instance operates on top of the host operating system whereas bare metal based
hypervisor operates directly on the hardware of host machine. Fig 4.2 shows the
comparison between traditional, bare metal and hosted models.

Fig. 4.2. Traditional Model vs Bare Model vs Hosted Model

xiv
Majority of obstacles arises in the acceptance and development of virtualization and
cloud computing are concerned to the basic management aspects such as data leakage,
virtualization security threats, data remanense issue, privacy and elastic resource
management.

Data Leakage: Organizations are in high risk of data leakage when an employee
secures the access to its data stored in cloud system. Data leakage are happens
through hacking data location, securing remote access, third party storage and
unsecure multitenant environment in hypervisor level. Cloud provider or broker can
enhance the prevention and detection mechanism and implement the collaborative
security policy in hypervisor level to protect data from data leakage.

Virtualization Security Threats: Security threats in virtualization are classified into


virtual machine threat, hypervisor threat, virtual infrastructure and virtual network
threat. The virtual machine threat surfaces while processing status of virtual machine,
software updates, resource contention, patching and virtual machine conurbation.
Hypervisor threat rivets Virtual-Machine-Based Rootkit (VMBR) attack and Blue Pill
Attack where hypervisor plays the vital role of Virtualization. Virtual infrastructure
threats are concerted on physical access threat and single point of control threat.
Virtual network threats can be effectively addressed by the security tools of intrusion
detection, prevention mechanism, virtual switches and networks conferring to the
requirements.

Data Remanence issue: Once the life time of data is used, then it will be deleted in
secure manner and cannot be recovered by malicious users. In traditional manner,
company has all control of their servers which can be overwrite the used data. But in
cloud, the end user/cloud users are not given secure delete access to the cloud
provider physical device. Cloud provider should focus to ensure no data will be
recovered by any malicious users.

Privacy: Privacy becomes a major concern among cloud users’ data which is stored in
the data center of cloud service providers physically located in different places. In
cloud, there are some circumstances which lead to the privacy threats. First, the
storage issues that surface when user store data in multiple storage locations which
xv
are hidden from the user and have the possibilities of transferring data without
owner’s permission. Second major concern is to ensure the destruction time policy
among cloud provider, broker and user once the data reach their expiration period.
Third concern is data breaches which studies on how data breaches occur and who are
going to take responsibility if data breach occurs in cloud. When a user opt for using
cloud services, the user should read the terms and conditions thoroughly before
prompt to cloud. The fourth concern is on regular auditing and monitoring policies.
Cloud clients should constantly monitor / audit the activities of cloud service provider
to ensure their stakeholder personal information will not be leaked while cloud
resources are sharing with others.

Elastic Resource Management: Cloud computing system produce new disputes


because of system clusters and high volume data generated by these systems. In order
to work effective elastic resource management, we need to look at the issues such as
resource allocation, resource provisioning, resource mapping and resource adaptation.
Cloud services encounter issues on the requirements of service level elasticity and
availability. The high performance of cloud can be achieved through implementing
effective elastic resource management techniques as a result user could get efficient
services from service providers. Table 1 represents the virtualization techniques from
open source providers like Redhat, Citrix systems, Oracle, OpenVZ, Linux-vserver
and Proxmox. In the table, we compare different hypervisor models with different
virtualization techniques. As we discussed in earlier sections, virtualization is the
concept of creating virtual resources from physical resources such as operating
systems, network and storage components.

xvi
5. PERFORMANCE EVALUATION

Server virtualization (SV) is a proven technology that enables multiple virtual


machines to run on a single physical server. At present, server virtualization has been
widely used in the architecture of the data centres and cloud computing platforms. It
has a myriad of advantages such as scalability, cost savings and energy efficiency
among others. With these advantages, this technology could be easily inculcated in
cloud computing. Below is the performance evaluation through several application
examples[4].

A. The evaluation of the total cost benefit


At present, there have been many new problems in the data centres, such as difficulty
in management and excessive costs of hardware and maintenance. Jing Nie concludes
that, there are five types of costs which are hardware cost, energy cost, software cost,
maintenance cost, downtime and recovery cost in data centre. They analysed the total
cost benefit using server virtualization. Their experiments was carried out to contrast
the total costs between using 20 physical host severs and 20 virtual host severs. The
result indicates that the cost reduced significantly by using the server virtualization
technology in the long run.

B. The evaluation of energy efficiency


In recent times, it is regarded as out of place to excessively purchase physical servers
for enterprises. The SV technology can enable server consolidation and reduce the
number of physical servers. It can also achieve the goal of reduction of power usage
and carbon footprint. Lu Liu gave detailed analysis about how server virtualization
offers an energy efficiency solution. The experiments was carried under three
conditions including VMware workstation, VMware ESX/ESXi and physical servers.
The data collected in the experiments shows a similarity in consumption between
VMware Workstation and VMware ESX/ESXi under the four different type’s
workloads. The collected data also shows that virtualized severs can significantly
reduce energy consumption compared with the physical servers under the same
workloads.

xvii
C. The evaluation of time efficiency
CIVIC is a hypervisor-based computing platform proposed by Jinpeng Huai. The
CIVIC platform consists of five layers from bottom to top, including Resource layer,
Container layer, Coordination layer, Instance layer and Interaction layer. The resource
layer is formed by physical machines distributed over the Internet. The container layer
can deploy the hypervisor on the top of physical machines and provide some
interfaces for remote management and interaction. The virtual machine instance can
be hosted in the container layer. The coordination layer has many different kinds of
coordination functions. The instance layer provides virtual machine instance, virtual
machine network instance, and virtual application instance for users. The interaction
layer contains two types of interaction modules for users and managers respectively.
In CIVIC architecture, the SV technology is applied in the container layer composed
of many container nodes. Each node can install hypervisor. The experiments based on
CIVIC platform shows that the installation time of virtual machine templates is far
less than the installation time of physical machines. It also shows that the time to
deploy a virtual network is far less than to configure a physical network. For this
reason, we can conclude that time efficiency can be obtained using SV technology.

xviii
7. CONCLUSION

We discussed various virtualization techniques, virtualization types, hypervisor


techniques and challenges in cloud computing system to reduce IT costs and effective
utilization of cloud resources such as rapid elastic provisioning of virtual machines,
elastic application programming model. In addition, the virtualization techniques get
universal support when users consider elastic resource management issues and
security issues before moving into cloud. In future, the aim is to develop new policies,
framework and techniques to maintain elastic resources and data availability, as a
result, the performances of cloud services could steps into next higher level. This
study paper discussed various issues pertaining to cloud services which can be used to
design strong framework for effective elastic resource management in cloud. We also
introduced the development of virtualization and analysed the architecture of a
virtualization business product. We further applied the virtualization technology to
cloud computing, and built the cloud platform using the VMware vCloud tools.
Finally, the performance evaluation of server virtualization in the cloud platform is
summarized through some implementation examples. Through the research and
analysis related to the technologies on virtualization and cloud computing, some
performance advantages, including gaining the total cost benefits, reducing power
consumption and time. Future studies could be directed to the use of Virtualization
and cloud computing in Distributed Information Retrieval to determine its
effectiveness in such an environment.

xix
8. REFERENCES

[1] P. Mell, T. Grance, ―The NIST Definition of Cloud Computing, National Institute
of Standards and Technology, Information Technology Laboratory, Technical Report
Version 15, 2009.
[2] B. Loganayagi, S. Sujatha, ―Creating virtual platform for cloud computing‖,
IEEE International Conference on Computational Intelligence and Computing
Research (ICCIC 2010), 28-29 Dec. 2010, pp.1-4.
[3] P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I.
Pratt, A. Warfield, ―Xen and the art of virtualization‖, in: Proc. 19th ACM
Symposium on Operating Systems Principles, SOSP 2003, Bolton Landing, USA,
Oct. 2003.
[4] J. E. Smith, R. Nair, Ravi Nair, "The Architecture of Virtual Machines," Computer,
vol. 38, no. 5, pp. 32-38, May 2005.

xx

You might also like