Beruflich Dokumente
Kultur Dokumente
Bachelor of Engineering
in
Information Technology
Submitted by
Ramesh Dan: 15ITE30022
CERTIFICATE
This is to certify that the work contained in this report entitled “Virtualization
Techniques in Cloud Computing” is submitted by Ramesh Dan (Roll no.
15ITE30022) to the Department of Computer Science & Engineering, M.B.M.
Engineering College, Jodhpur, for the partial fulfilment of the requirements for the
degree of Bachelor of Engineering in Information Technology.
They have carried out their work under my supervision. This work has not been
submitted else-where for the award of any other degree or diploma.
The project work in my opinion, has reached the standard fulfilling of the requirements
for the degree of Bachelor of Engineering in Information Technology in accordance
with the regulations of the Institute.
I, further certify that this work has not formed the basis for the award of the
Degree/Diploma/Associateship/Fellowship or similar recognition to any candidate of
any university and no part of this report is reproduced as it is from any other source
without appropriate reference and permission.
(Ramesh Dan)
7th Semester, IT
Enroll. – 14R/56358
Roll No. – 15ITE30022
The satisfaction that accompanies that the successful completion of any task would be
incomplete without the mention of people whose ceaseless cooperation made it
possible, whose constant guidance and encouragement crown all efforts with success.
We are grateful to our project guide Prof. Nemi Chand Barwar for the guidance,
inspiration and constructive suggestions that helpful us in the preparation of this project.
We also thank our colleagues who have helped in successful completion of the project.
In Internet, cloud computing plays an important role to share information and data.
Virtualization is an important technique in the cloud environment to share data and
information. It is also important computing environment to enables academic IT
resources or industry through on-demand dynamically allocation. The main aim of this
research paper is to explore the basic knowledge terms of the virtualization and how
virtualization works in cloud system. We will explain about how to maintain the
virtualization with optimized resources such as storage, network, application, server,
and client in cloud computing. We will compare different open-source-based
hypervisors or virtual monitor machines (VMM) that are in use today, and we will
discuss several issues of virtualization which will be very helpful to the researchers for
further study.
3. Conclusion…………………………………………………………… 30
4.1 Summary
4.2 Future scope
References…………………………………………………………………
For the last three decades, one trend in computing has been loud and clear: big,
centralized, mainframe systems have been "out"; personalized, power-to-the-people, do-
it-yourself PCs have been "in." Before personal computers took off in the early 1980s, if
your company needed sales or payroll figures calculating in a hurry, you'd most likely
have bought in "data-processing" services from another company, with its own
expensive computer systems, that specialized in number crunching; these days, you can
do the job just as easily on your desktop with off-the-shelf software. Or can you? In a
striking throwback to the 1970s, many companies are finding, once again, that buying in
computer services makes more business sense than do-it-yourself. This new trend is
called cloud computing and, not surprisingly, it's linked to the Internet's inexorable
rise. What is cloud computing? How does it work? Let's take a closer look!
Most of us use cloud computing all day long without realizing it. When you sit at your
PC and type a query into Google, the computer on your desk isn't playing much part in
finding the answers you need: it's no more than a messenger. The words you type are
swiftly shuttled over the Net to one of Google's hundreds of thousands of clustered PCs,
which dig out your results and send them promptly back to you. When you do a Google
search, the real work in finding your answers might be done by a computer sitting in
California, Dublin, Tokyo, or Beijing; you don't know—and most likely you don't care!
The same applies to Web-based email. Once upon a time, email was something you
could only send and receive using a program running on your PC (sometimes called a
mail client). But then Web-based services such as Hotmail came along and carried
email off into the cloud. Now we're all used to the idea that emails can be stored and
processed through a server in some remote part of the world, easily accessible from a
Web browser, wherever we happen to be. Pushing email off into the cloud makes it
supremely convenient for busy people, constantly on the move.
Preparing documents over the Net is a newer example of cloud computing. Simply log
on to a web-based service such as Google Documents and you can create a document,
spreadsheet, presentation, or whatever you like using Web-based software. Instead of
typing your words into a program like Microsoft Word or OpenOffice, running on your
Cloud computing is a big shift from the traditional way businesses think about IT
resources. Here are six common reasons organisations are turning to cloud computing
services:
Cost
Cloud computing eliminates the capital expense of buying hardware and software and
setting up and running on-site datacenters—the racks of servers, the round-the-clock
Speed
Most cloud computing services are provided self service and on demand, so even vast
amounts of computing resources can be provisioned in minutes, typically with just a
few mouse clicks, giving businesses a lot of flexibility and taking the pressure off
capacity planning.
Global scale
The benefits of cloud computing services include the ability to scale elastically. In cloud
speak, that means delivering the right amount of IT resources—for example, more or
less computing power, s/torage, bandwidth—right when it is needed and from the right
geographic location.
Productivity
On-site datacenters typically require a lot of “racking and stacking”—hardware set up,
software patching and other time-consuming IT management chores. Cloud computing
removes the need for many of these tasks, so IT teams can spend time on achieving
more important business goals.
Performance
Security
1.3 Models
Most cloud computing services fall into four broad categories: infrastructure as a
service (IaaS), platform as a service (PaaS), serverless and software as a service (SaaS).
These are sometimes called the cloud computing stack because they build on top of one
another. Knowing what they are and how they are different makes it easier to
accomplish your business goals.
The NIST's definition of cloud computing describes IaaS as "where the consumer is
able to deploy and run arbitrary software, which can include operating systems and
applications. The consumer does not manage or control the underlying cloud
infrastructure but has control over operating systems, storage, and deployed
applications; and possibly limited control of select networking components (e.g., host
firewalls)."[59]
IaaS-cloud providers supply these resources on-demand from their large pools of
equipment installed in data centers. For wide-area connectivity, customers can use
either the Internet or carrier clouds (dedicated virtual private networks). To deploy their
applications, cloud users install operating-system images and their application software
on the cloud infrastructure. In this model, the cloud user patches and maintains the
operating systems and the application software. Cloud providers typically bill IaaS
services on a utility computing basis: cost reflects the amount of resources allocated and
consumed.
The capability provided to the consumer is to deploy onto the cloud infrastructure
consumer-created or acquired applications created using programming languages,
libraries, services, and tools supported by the provider. The consumer does not manage
or control the underlying cloud infrastructure including network, servers, operating
systems, or storage, but has control over the deployed applications and possibly
configuration settings for the application-hosting environment.
Some integration and data management providers have also embraced specialized
applications of PaaS as delivery models for data solutions. Examples include iPaaS
(Integration Platform as a Service) and dPaaS (Data Platform as a Service). iPaaS
enables customers to develop, execute and govern integration flows. Under the iPaaS
integration model, customers drive the development and deployment of integrations
without installing or managing any hardware or middleware. dPaaS delivers
integration—and data-management—products as a fully managed service. Under the
dPaaS model, the PaaS provider, not the customer, manages the development and
execution of data solutions by building tailored data applications for the customer.
dPaaS users retain transparency and control over data through data-
visualization tools. Platform as a Service (PaaS) consumers do not manage or control
the underlying cloud infrastructure including network, servers, operating systems, or
storage, but have control over the deployed applications and possibly configuration
settings for the application-hosting environment.
The capability provided to the consumer is to use the provider's applications running on
a cloud infrastructure. The applications are accessible from various client devices
through either a thin client interface, such as a web browser (e.g., web-based email), or
a program interface. The consumer does not manage or control the underlying cloud
infrastructure including network, servers, operating systems, storage, or even individual
In the software as a service (SaaS) model, users gain access to application software
and databases. Cloud providers manage the infrastructure and platforms that run the
applications. SaaS is sometimes referred to as "on-demand software" and is usually
priced on a pay-per-use basis or using a subscription fee.[68] In the SaaS model, cloud
providers install and operate application software in the cloud and cloud users access
the software from cloud clients. Cloud users do not manage the cloud infrastructure and
platform where the application runs. This eliminates the need to install and run the
application on the cloud user's own computers, which simplifies maintenance and
support. Cloud applications differ from other applications in their scalability—which
can be achieved by cloning tasks onto multiple virtual machines at run-time to meet
changing work demand. Load balancers distribute the work over the set of virtual
machines. This process is transparent to the cloud user, who sees only a single access-
point. To accommodate a large number of cloud users, cloud applications can
be multitenant, meaning that any machine may serve more than one cloud-user
organization.
The pricing model for SaaS applications is typically a monthly or yearly flat fee per
user,[ so prices become scalable and adjustable if users are added or removed at any
point.Proponents claim that SaaS gives a business the potential to reduce IT operational
costs by outsourcing hardware and software maintenance and support to the cloud
provider. This enables the business to reallocate IT operations costs away from
hardware/software spending and from personnel expenses, towards meeting other goals.
In addition, with applications hosted centrally, updates can be released without the need
for users to install new software. One drawback of SaaS comes with storing the users'
data on the cloud provider's server. As a result, there could be unauthorized access to
the data.
Private cloud is cloud infrastructure operated solely for a single organization, whether
managed internally or by a third party, and hosted either internally or
Public cloud
A cloud is called a "public cloud" when the services are rendered over a network that is
open for public use. Public cloud services may be free.[85] Technically there may be
little or no difference between public and private cloud architecture, however, security
consideration may be substantially different for services (applications, storage, and
other resources) that are made available by a service provider for a public audience and
when communication is effected over a non-trusted network. Generally, public cloud
service providers like Amazon Web Services (AWS), Oracle, Microsoft and Google
own and operate the infrastructure at their data center and access is generally via the
Internet. AWS, Oracle, Microsoft, and Google also offer direct connect services called
"AWS Direct Connect", "Oracle FastConnect", "Azure ExpressRoute", and "Cloud
Interconnect" respectively, such connections require customers to purchase or lease a
private connection to a peering point offered by the cloud provider.[43][86]
Hybrid cloud
Varied use cases for hybrid cloud composition exist. For example, an organization may
store sensitive client data in house on a private cloud application, but interconnect that
application to a business intelligence application provided on a public cloud as a
software service.[88] This example of hybrid cloud extends the capabilities of the
enterprise to deliver a specific business service through the addition of externally
available public cloud services. Hybrid cloud adoption depends on a number of factors
such as data security and compliance requirements, level of control needed over data,
and the applications an organization uses.[89]
Another example of hybrid cloud is one where IT organizations use public cloud
computing resources to meet temporary capacity needs that can not be met by the
private cloud.[90]This capability enables hybrid clouds to employ cloud bursting for
scaling across clouds.[59] Cloud bursting is an application deployment model in which
an application runs in a private cloud or data center and "bursts" to a public cloud when
the demand for computing capacity increases. A primary advantage of cloud bursting
and a hybrid cloud model is that an organization pays for extra compute resources only
when they are needed.[91] Cloud bursting enables data centers to create an in-house IT
infrastructure that supports average workloads, and use cloud resources from public or
private clouds, during spikes in processing demands.[92] The specialized model of
hybrid cloud, which is built atop heterogeneous hardware, is called "Cross-platform
Hybrid Cloud". A cross-platform hybrid cloud is usually powered by different CPU
architectures, for example, x86-64 and ARM, underneath. Users can transparently
deploy and scale applications without knowledge of the cloud's hardware
diversity.[93] This kind of cloud emerges from the rise of ARM-based system-on-chip
for server-class computing.
Others
Community cloud
Distributed cloud
Multicloud
The issues of transferring large amounts of data to the cloud as well as data security
once the data is in the cloud initially hampered adoption of cloud for big data, but now
that much data originates in the cloud and with the advent of bare-metal servers, the
HPC cloud
HPC cloud refers to the use of cloud computing services and infrastructure to
execute high-performance computing (HPC) applications. These applications consume
considerable amount of computing power and memory and are traditionally executed on
clusters of computers. Various vendors offer servers that can support the execution of
these applications. In HPC cloud, the deployment model allows all HPC resources to be
inside the cloud provider infrastructure or different portions of HPC resources to be
shared between cloud provider and client on-premise infrastructure. The adoption of
cloud to run HPC applications started mostly for applications composed of independent
tasks with no inter-process communication. As cloud providers began to offer high-
speed network technologies such as InfiniBand, multiprocessing tightly coupled
applications started to benefit from cloud as well.
Most issues start from the fact that the user loses control of his or her data, because it is
stored on a computer belonging to someone else (the cloud provider).[2] This happens
when the owner of the remote servers is a person or organization other than the user; as
their interests may point in different directions (for example, the user may wish that his
or her information is kept private, but the owner of the remote servers may want to take
advantage of it for their own business). Other issues hampering the adoption of cloud
1.4.1 Threats
Cloud implementations generally meet or exceed expectations across major service
models, such as Infrastructure as a Service (IaaS), Platform as a service (PaaS)
and Software as a service (SaaS).[8]
Several deterrents to the widespread adoption of cloud computing remain. They include:
Reliability
Availability of services and data
Security
Complexity
Costs
Regulations and legal issues
Performance
Migration
Reversion
The lack of standards
Limited customization
Host: for virtualization the hypervisor software runs on a virtualization platform i.e. is
host.
Hypervisor: the software program which handles the virtual machine to work under the
virtually simulated environment is called hypervisor.
2.3 Benefits
Access to the virtual machine and the host machine or server is facilitated by a software
known as Hypervisor. Hypervisor acts as a link between the hardware and the virtual
environment and distributes the hardware resources such as CPU usage, memory
allotment between the different virtual environments.
Although virtualization, as a form of technology has existed since the 1960s, only
recently with the advent of cloud computing has it become a staple in the vocabulary of
those involved in the IT industry. By offloading hardware requirements and utility
costs, it can rapidly transform a company’s infrastructure and improve its efficiency by
itself. Virtualization in cloud computing allows you to run multiple applications and
operating systems on the same server, thereby providing for efficient resource
utilization and reducing costs.
Hardware Virtualization
Subtypes:
Full Virtualization – Guest software does not require any modifications since the
underlying hardware is fully simulated.
Emulation Virtualization – The virtual machine simulates the hardware and
becomes independent of it. The guest operating system does not require any
modifications.
Paravirtualization – the hardware is not simulated and the guest software run
their own isolated domains.
Software Virtualization
Subtypes:
Memory Virtualization
Physical memory across different servers is aggregated into a single virtualized memory
pool. It provides the benefit of an enlarged contiguous working memory. You may
already be familiar with this, as some OS such as Microsoft Windows OS allows a
portion of your storage disk to serve as an extension of your RAM.
Subtypes:
Storage Virtualization
Multiple physical storage devices are grouped together, which then appear as a single
storage device. This provides various advantages such as homogenization of storage
across storage devices of multiple capacity and speeds, reduced downtime, load
balancing and better optimization of performance and speed. Partitioning your hard
drive into multiple partitions is an example of this virtualization.
Subtypes:
Data Virtualization
Network Virtualization
Subtypes:
Desktop Virtualization
This is perhaps the most common form of virtualization for any regular IT employee.
The user’s desktop is stored on a remote server, allowing the user to access his desktop
from any device or location. Employees can work conveniently from the comfort of
their home. Since the data transfer takes place over secure protocols, any risk of data
theft is minimized.
XEN
KVM
It describes the delivery of shared computing resources, SaaS and on-demand services
through the Internet. Most of the confusion occurs because virtualization and cloud
computing work together to provide different types of services, as is the case with
private clouds.
The cloud often includes virtualization products as a part of their service package. The
difference is that a true cloud provides the self-service feature, elasticity, automated
management, scalability and pay-as-you-go service that is not inherent to the
technology.
The Basics
A technology called the Virtual Machine Monitor — also called virtual manager–
encapsulates the very basics of virtualization in cloud computing. It is used to separate
the physical hardware from its emulated parts. This often includes the CPU’s memory,
I/O and network traffic. A secondary operating system that is usually interacting with
the hardware is now a software emulation of that hardware, and often the guest
operating system has no idea it’s on the virtualized hardware. Despite the fact that
performance of the virtual system is not equal to the functioning of the “true hardware”
operating system, the technology still works because most secondary OSs and
applications don’t need the full use of the underlying hardware. This allows for greater
flexibility, control and isolation by removing the dependency on a given hardware
platform.
CONCLUSION
4.1 Summary
Cloud computing is a way of delivering computing resources, over internet. Computing
services ranging from data storage and processing to software, such as email handling,
are now available instantly, commitment-free and on-demand. This economic model for
computing has found fertile ground and is seeing massive global investment.
There are massive projections for cloud computing but cloud computing is always
surrounded by security threats which are directly linked to its advantages. It is
beneficial to both the parties be it a business or the invader but security is always a
concern. So, we have discussed various security threats and their probable solutions
which helps in resolving these security issues.
We have also discussed some of the major cloud security companies and service
providers which helps in providing a secure cloud connection in terms of both user and
provider end.