Beruflich Dokumente
Kultur Dokumente
CLOUD COMPUTING
DEPARTMENT
OF
COMPUTER SCIENCE AND ENGINEERING
COLLEGE OF ENGINEERING AND TECHNOLOGY
BHUBANESWAR
2018-19
1
CERTIFICATE
2
ACKNOWLEDGEMENT
Megha Mishra
Regd No: 1501106377
3
CONTENTS
1. Introduction 6
2. Cloud Computing 6
2.1 Types of Cloud Services 7
2.2 Types of Cloud Deployments 8
4. Green Computing 23
4.1 Ways to promote Green Computing 23
4.2 Approaches to make our computing greener 24
4.3 How virtualisation aids in Green Computing 24
5. References 25
4
ABSTRACT
KEYWORDS
Cloud Computing; Virtualization; Hypervisor; Green Computing.
5
INTRODUCTION
Whether we are running applications that share photos to millions of mobile users or we’re
supporting the critical operations of your business, a cloud services platform provides rapid
access to flexible and low-cost IT resources. With cloud computing, we don’t need to make
large upfront investments in hardware and spend a lot of time on the heavy lifting of managing
that hardware. Instead, we can provision exactly the right type and size of computing resources
we need to power our newest bright idea or operate our IT department. We can access as many
resources as we need, almost instantly, and only pay for what you use. And this is powered by
‘virtualisation’, the foundational element of cloud computing.
CLOUD COMPUTING
Cloud computing is the use of various services, such as software development platforms,
servers, storage and software, over the internet, often referred to as the "cloud." It is an
information technology (IT) paradigm that enables ubiquitous access to shared pools of
configurable system resources and higher-level services that can be rapidly provisioned with
minimal management effort, often over the Internet. Cloud computing relies on sharing of
resources to achieve coherence and economies of scale, similar to a public utility.
Third-party clouds enable organizations to focus on their core businesses instead of expending
resources on computer infrastructure and maintenance. Advocates note that cloud computing
allows companies to avoid or minimize up-front IT infrastructure costs. Proponents also claim
that cloud computing allows enterprises to get their applications up and running faster, with
improved manageability and less maintenance, and that it enables IT teams to more rapidly
adjust resources to meet fluctuating and unpredictable demand. Cloud providers typically use
a "pay-as-you-go" model, which can lead to unexpected operating expenses if administrators
are not familiarized with cloud-pricing models. [1]
6
TYPES OF CLOUD SERVICES
Most cloud computing services fall into three broad categories: infrastructure as a service
(IaaS), platform as a service (PaaS) and software as a service (SaaS). These are sometimes
called the cloud computing stack, because they build on top of one another.
Infrastructure-as-a-service (IaaS)
The most basic category of cloud computing services. With IaaS, you rent IT systems, servers
and virtual machines (VMs), storage, networks, operating systems—from a cloud provider on
a pay-as-you-go basis. Examples are: Amazon Web Services (AWS), Cisco Metapod,
Microsoft Azure, Google Compute Engine (GCE).
Fig. IaaS
Fig. PaaS
Fig. SaaS
7
TYPES OF CLOUD DEPLOYMENTS
Not all clouds are the same. There are three different ways to deploy cloud computing
resources: public cloud, private cloud and hybrid cloud.
Public cloud
Public clouds are owned and operated by a third-party cloud service provider, which deliver
their computing resources like servers and storage over the Internet. Microsoft Azure is an
example of a public cloud. With a public cloud, all hardware, software and other supporting
infrastructure is owned and managed by the cloud provider. You access these services and
manage your account using a web browser.
Private cloud
A private cloud refers to cloud computing resources used exclusively by a single business or
organisation. A private cloud can be physically located on the company’s on-site data center.
Some companies also pay third-party service providers to host their private cloud. A private
cloud is one in which the services and infrastructure are maintained on a private network.
Hybrid cloud
Hybrid clouds combine public and private clouds, bound together by technology that allows
data and applications to be shared between them. By allowing data and applications to move
between private and public clouds, hybrid cloud gives businesses greater flexibility and more
deployment options. [2]
Community cloud
In the community cloud deployment model, the cloud infrastructure is shared by several
organizations with the same policy and compliance considerations. This helps to further reduce
costs as compared to a private cloud, as it is shared by larger group. [3]
8
VIRTUALISATION IN CLOUD COMPUTING
Virtualization is a technique how to separate a service from the underlying physical delivery
of that service. It is the process of creating a virtual version of something like computer
hardware. It was initially developed during the mainframe era. It involves using specialized
software to create a virtual or software-created version of a computing resource rather than the
actual version of the same resource. With the help of Virtualization multiple operating systems
and applications can run on same Machine and its same hardware at the same time increasing
the utilization and flexibility of hardware.
In other words, one of the main cost effective, hardware reducing, energy saving techniques
used by cloud providers is virtualization. Virtualization is a technique, which allows to share a
single physical instance of a resource or an application among multiple customers and
organizations at one time. It does by assigning a logical name to a physical storage and
providing a pointer to that physical resource on demand. The term virtualization is often
synonymous with hardware virtualization, which plays a fundamental role in efficiently
delivering Infrastructure-as-a-Service (IaaS) solutions for cloud computing. Moreover,
virtualization technologies provide a virtual environment for not only executing applications
but also for storage, memory, and networking. [4]
9
DIFFERENCE BETWEEN VIRTUALISATION AND CLOUD
COMPUTING
At first glance, virtualization and cloud computing may sound like similar things, but each one
has a broader definition that can be applied to many different kinds of systems. Both
virtualization and cloud computing are often virtual in the sense that they rely on similar models
and principles. However, cloud computing and virtualization are inherently different.
Virtualization is a foundational element of cloud computing and helps deliver on the value of
cloud computing. Virtualization is a software that manipulates hardware, while cloud
computing refers to a service that results from that manipulation. The picture refers to the
‘Keystone-Arch’ structure. The keystone (virtualization) is the "key" to supporting the arch
(cloud computing), because if you remove the stone, the arch would collapse. Similarly, we
cannot have cloud computing without virtualisation. [5]
Virtualization is simply the replacement of some physical component with a virtual one. Within
this broad definition, there are specific types of virtualization, such as virtual storage devices,
virtual machines, virtual operating systems and virtual network components for network
virtualization. Virtualization just means that someone built a model for something, such as a
machine or server, into code, creating a software program function that acts like what it’s
modelling. For instance, a virtual server sends and receives signals just like a physical one,
even though it doesn’t have its own circuitry and other physical components.
Cloud computing, on the other hand, is a specific kind of IT setup that involves multiple
computers or hardware pieces sending data through a wireless or IP-connected network. In
most cases, cloud computing environments involve sending inputted data to remote locations
through a somewhat abstract network trajectory known as "the cloud." [6]
10
WHAT IS VIRTUALISATION?
Virtualization is the ability to run multiple operating systems on a single physical system and
share the underlying hardware resources. It is the creation of a virtual version of hardware using
software. It allows us to run several applications at the same time on a single physical server
by hosting each of them inside their own virtual machine. By running multiple virtual machines
simultaneously, a physical server can be utilized efficiently.
Fig. Virtualisation
Virtualization refers to the creation of a virtual resource such as a server, desktop, operating
system, file, storage or network.
The main goal of virtualization is to manage workloads by radically transforming traditional
computing to make it more scalable. Virtualization has been a part of the IT landscape for
decades now, and today it can be applied to a wide range of system layers, including operating
system-level virtualization, hardware-level virtualization and server virtualization.
Virtualisation often includes computer-generated versions of hardware, operating systems,
storage devices and more. This allows organisations to partition a single physical computer or
server into several virtual machines.
By creating multiple resources from a single computer or server, virtualisation improves
scalability and workloads while resulting in the use of fewer overall servers, less energy
consumption and less infrastructure costs and maintenance. There are four main categories
virtualisation falls into. The first is desktop virtualisation, which allows one centralised server
to deliver and manage individualised desktops. The second is network virtualisation, designed
to split network bandwidth into independent channels to then be assigned to specific servers or
devices. The third category is software virtualisation, which separates applications from the
hardware and operating system. And the fourth is storage virtualisation, which combine
multiple network storage resources into a single storage device where multiple users may
access it. [7]
11
VIRTUALISATION ARCHITECTURE
A virtualization architecture is a conceptual model specifying the arrangement and
interrelationships of the particular components involved in delivering a virtual, rather than
physical version of something, such as an operating system (OS), a server, a storage device or
network resources.
HYPERVISOR
Hypervisor is a process that separates a computer’s operating system and applications from the
underlying physical hardware. Usually done as software although embedded hypervisors can
be created for things like mobile devices. The hypervisor drives the concept of virtualization
by allowing the physical host machine to operate multiple virtual machines as guests to help
maximize the effective use of computing resources such as memory, network bandwidth and
CPU cycles.
Hypervisor plays an important role in the virtualization scenario. A hypervisor is also known
as a virtual machine manager (VMM). A hypervisor is a hardware virtualization technique
that allows multiple guest operating systems (OS) to run on a single host system at the same
time. The guest OS shares the hardware of the host computer, such that each OS appears to
have its own processor, memory and other hardware resources. Hypervisors make it possible
to use more of a system’s available resources, and provide greater IT mobility, since the guest
VMs are independent of the host hardware. This means they can be easily moved between
different servers. Examples: VMware, Xen, KVM (Kernel-based VM). [9]
12
TYPES OF HYPERVISOR
TYPE-1 HYPERVISOR
Type 1 hypervisors are deployed directly atop the system's hardware without any
underlying operating systems or other software. These are called "bare metal"
hypervisors and are the most common and popular type of hypervisor for the enterprise
data center. They support hardware virtualization. Type 1 hypervisors are gaining
popularity because building the hypervisor into the firmware is proving to be more
efficient due to low overhead. They provide higher performance, availability, and
security than Type 2 hypervisors.
Examples of Type 1 hypervisors include vSphere or Hyper-V.
TYPE-2 HYPERVISOR
Type 2 hypervisors run as a software layer atop a host operating system and are usually
called "hosted" hypervisors like VMware Player or Parallels Desktop. Hosted
hypervisors are often found on endpoints like PCs. Type 2 hypervisors run on a host
operating system. It operates as an application on top of an existing operating system,
therefore supports software virtualization. They are used mainly on client systems
where efficiency is less critical or on systems where support for a broad range of I/O
devices is important.
Example of Type 2 hypervisors include Linux KVM, Oracle Virtual Box. [10]
13
SERVER WITHOUT VIRTUALISATION
14
3. Continuity
So long as you have the right backup hardware technology you can recover from a disaster
in a fraction of the time thanks to Virtual Machine snapshots. If an instance fails you simply
kill it and load the latest “safe” snapshot.
Automation options are available and there are advanced options that allow you to redeploy
a server on another host machine without sacrificing downtime. Development and test
environments can be cloned identically from live environments at the push of a button,
allowing you to test without buying extra hardware or interfering with production.
4. Scaling
Virtualisation makes it quick and easy to scale your resources up or down. For example,
you can increase the processing power and memory available to an individual server simply
by allocating more resources to it. There's no need to physically add extra RAM or CPU
components, as you would with a physical server. This means your business can respond in
real time to operational needs and if your Cloud infrastructure is capable of “spawning new
instances” to cope with demand then you only pay for the processing power and bandwidth
that you actually need.
5. Automation
Provisioning a new server, automating failover and scaling resources is very simple when
you use the latest virtualisation control panels. The majority of maintenance tasks can be
managed through the console and set up to run by themselves, across any number of
instances. [11]
TYPES OF VIRTUALIZATION
Virtualization is of 7 types:
1. Hardware Virtualization
2. Network Virtualization
3. Storage Virtualization
4. Memory Virtualization
5. Software Virtualization
6. Data Virtualization
7. Desktop Virtualization
Fig. Types of Virtualisation
The various types are described below in brief with appropriate diagrams. [12]
15
1. HARDWARE VIRTUALIZATION
It is the most common type of virtualization and it provides advantages like optimum
hardware utilization and application uptime. The basic idea is to combine many small
physical servers into one large physical server, so that the processor can be used more
effectively. The operating system that is running on a physical server gets converted
into a well-defined OS that runs on the virtual machine.
Paravirtualization is virtualization in which the guest operating system (the one being
virtualized) is aware that it is a guest and accordingly has drivers that, instead of issuing
hardware commands, simply issue commands directly to the host operating system.
16
2. NETWORK VIRTUALIZATION
When applied to a network, virtualization creates a logical software-based view of the hardware
and software networking resources (switches, routers, etc.). The physical networking devices
are simply responsible for the forwarding of packets, while the virtual network (software)
provides an intelligent abstraction that makes it easy to deploy and manage network services
and underlying network resources. As a result, NV can align the network to better support
virtualized environments.
ADVANTAGES OF NETWORK VIRTUALISATION
NV can be used to create virtual networks within a virtualized infrastructure. This
enables NV to support the complex requirements in multi-tenancy environments. NV
can deliver a virtual network within a virtual environment that is truly separate from
other network resources. [14]
With virtualization, companies can take advantage of the efficiencies and agility of
software-based compute and storage resources. The true decoupling of the control and
forwarding planes, as advocated by software-defined networking (SDN) and network
functions virtualization (NFV), that network virtualization has become more of a focus.
17
3. STORAGE VIRTUALIZATION
Storage virtualization or cloud storage is the process of grouping the physical storage
from multiple network storage devices into a single storage device. This virtualization
concept addresses the complexity of data and storage management allowing easy
backup, archiving and task recovery in a less time.
The virtual storage software intercepts I/O requests from physical or virtual machines and sends
those requests to the appropriate physical location of the storage devices that are part of the
overall pool of storage in the virtualized environment. To the user, virtual storage appears like
a standard read or write to a physical drive. Even a RAID array can sometimes be considered
a type of storage virtualization. Multiple physical disks in the array are presented to the user as
a single storage device that, in the background, replicates data to multiple disks in case of a
single disk failure.
There are two basic methods of virtualizing storage: file-based and block-based.
Block-based systems abstract the logical storage, from the actual physical memory
blocks in a storage device, such as a hard disk drive or solid-state memory device.
18
4. MEMORY VIRTUALIZATION
It introduces a way to decouple memory from the server to provide a shared, distributed or
networked function. It enhances performance by providing greater memory capacity without
any addition to the main memory. That’s why a portion of the disk drive serves as an extension
of the main memory.
Implementations:
1. Application-level integration – Applications running on connected computers
directly connect to the memory pool through an API or the file system.
19
5. SOFTWARE VIRTUALIZATION
It provides the ability to the main computer to run and create one or more virtual environments.
It is used to enable a complete computer system in order to allow a guest OS to run. For
instance, letting Linux to run as a guest that is natively running a Microsoft Windows OS (or
vice versa, running Windows as a guest on Linux).
Types of Software Virtualization:
1. Operating system virtualization:
2. Application virtualization:
3. Service virtualization:
20
6. DATA VIRTUALIZATION
It is an approach to data management that allows an application to retrieve and manipulate data
without requiring technical details about the data, such as how it is formatted or where it is
physically located. Without any technical details, you can easily manipulate data and know
how it is formatted or where it is physically located. It decreases the data errors and workload.
Data virtualization is synonymous with information agility - it delivers a simplified, unified,
and integrated view of trusted business data in real time or near real time as needed by the
consuming applications, processes, analytics, or business users. Data virtualization integrates
data from disparate sources, locations and formats, without replicating the data, to create a
single "virtual" data layer that delivers unified data services to support multiple applications
and users. The result is faster access to all data, less replication and cost, more agility to change.
Data virtualization is also an abstraction layer and a data services layer: In this
sense it is highly complementary to use between original and derived data sources, ETL,
ESB and other middleware, applications, and devices, whether on-premise or cloud-
based, to provide flexibility between layers of information and business technology. [16]
21
7. DESKTOP VIRTUALIZATION
Desktop virtualization is the concept of isolating a logical operating system (OS) instance
from the client that is used to access it. Desktop virtualization is a virtualization technology
that separates an individual's PC applications from his or her desktop. Virtualized desktops
are generally hosted on a remote central server, rather than the hard drive of the personal
computer. Because the client-server computing model is used in virtualizing desktops,
desktop virtualization is also known as client virtualization.
22
GREEN COMPUTING
Green computing is the environmentally responsible and eco-friendly use of computers and
their resources. In broader terms, it is also defined as the study of designing,
manufacturing/engineering, using and disposing of computing devices in a way that reduces
their environmental impact.
It is the environmentally responsible and eco-friendly use of computers and their resources. In
broader terms, it is also defined as the study of designing, engineering, manufacturing, using
and disposing of computing devices in a way that reduces their environmental impact.
Many IT manufacturers and vendors are continuously
investing in designing energy-efficient computing devices,
reducing the use of dangerous materials and encouraging the
recyclability of digital devices. Green computing practices
came into prominence in 1992, when the Environmental
Protection Agency (EPA) launched the Energy Star
program. Green computing is also known as green
information technology (green IT).
Green computing aims to attain economic viability and
improve the way computing devices are used. Green IT
practices include the development of environmentally
sustainable production practices, energy-efficient
computers and improved disposal and recycling procedures.
[17]
To promote green computing concepts at all possible levels, the following four approaches are
employed:
Green use: Minimizing the electricity consumption of computers and their peripheral
devices and using them in an eco-friendly manner.
Green disposal: Repurposing existing equipment or appropriately disposing of, or
recycling, unwanted electronic equipment.
Green design: Designing energy-efficient computers, servers, printers, projectors and
other digital devices.
Green manufacturing: Minimizing waste during the manufacturing of computers and
other subsystems to reduce the environmental impact of these activities. [18]
23
WAYS TO MAKE OUR COMPUTING USAGE GREENER
Average computer users can employ the following tactics to make their computing usage
greener: [19]
Use the hibernate or sleep mode when away from a computer for extended periods.
Buy energy-efficient notebook computers, instead of desktop computers.
Activate the power management features for controlling energy consumption.
Make proper arrangements for safe electronic waste disposal.
Turn off computers at the end of each day.
Refill printer cartridges, rather than buying new ones.
Instead of purchasing a new computer, try refurbishing an existing device.
Virtualization leads to a dramatic reduction in physical equipment which will help us ‘go
green’. If the amount of equipment is reduced, so are space requirements, which means
business can increase without having to build ever larger data centres.
Along with a reduction in your electric bill, virtualized servers result in a reduction of your
data center footprint, and on an enterprise level, your carbon footprint. That also translates to
lower overall costs as well. Since the number hardware devices are decreased, there is a huge
decrease in e-waste and hence reduction in toxic wastes. [20]
24
REFERENCES
[1] https://en.wikipedia.org/wiki/Cloud_computing
[2] https://azure.microsoft.com/en-in/overview/what-is-cloud-computing/
[3] https://cloudtweaks.com/2012/07/4-primary-cloud-deployment-models/
[4] https://www.geeksforgeeks.org/virtualization-cloud-computing-types/
[5] https://beacontelecom.com/virtualization-keystone-of-the-cloud-based-mindset/
[6] https://www.techopedia.com/7/29674/networking/what-is-the-difference-between-cloud-
computing-and-virtualization
[7] https://www.vmware.com/pdf/virtualization.pdf
[8] https://whatis.techtarget.com/definition/virtualization-architecture
[9] https://www.networkworld.com/article/3243262/virtualization/what-is-a-hypervisor.html
[10] https://searchservervirtualization.techtarget.com/definition/hypervisor
[11] http://www.brainworx.co.nz/virtualising-server-right-can-help-find/
[12] https://www.znetlive.com/blog/virtualization-in-cloud-computing/
[13] https://searchservervirtualization.techtarget.com/definition/hardware-virtualization
[14] https://www.sdxcentral.com/sdn/network-virtualization/definitions/whats-network-
virtualization/
[15] https://www.sdxcentral.com/sdn/network-virtualization/definitions/whats-network-
virtualization/ https://www.guru99.com/service-virtualization-tools.html
[16] https://www.denodo.com/en/data-virtualization/overview
[17] https://www.techopedia.com/definition/14753/green-computing
[18] https://www.coursehero.com/file/p44hue7/To-promote-green-computing-concepts-at-all-
possible-levels-the-following-four/
[19] https://data.conferenceworld.in/GKU/90.pdf
[20] https://www.slideshare.net/RAHULSINHA1993/virtualization-in-green-computing
25