0% found this document useful (0 votes)
19 views17 pages

Unit 2

The document discusses virtualization in cloud computing, explaining it as a technology that creates virtual representations of physical resources, enabling multiple operating systems and applications to run on a single machine. It outlines various types of virtualization, including application, network, desktop, storage, server, and data virtualization, along with their benefits and disadvantages. Additionally, it highlights the role of virtualization in enhancing resource allocation, scalability, and cost-effectiveness in cloud computing environments.

Uploaded by

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

Unit 2

The document discusses virtualization in cloud computing, explaining it as a technology that creates virtual representations of physical resources, enabling multiple operating systems and applications to run on a single machine. It outlines various types of virtualization, including application, network, desktop, storage, server, and data virtualization, along with their benefits and disadvantages. Additionally, it highlights the role of virtualization in enhancing resource allocation, scalability, and cost-effectiveness in cloud computing environments.

Uploaded by

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

UNIT 2

 VIRTUALIZATION IN CLOUD COMPUTING

Virtualization is technology that you can use to create virtual representations of servers,
storage, networks, and other physical machines. Virtual software mimics the functions of
physical hardware to run multiple virtual machines simultaneously on a single physical
machine.

 VIRTUALIZATION IN CLOUD COMPUTING AND TYPES

Virtualization is a technique of 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, and energy
saving techniques used by cloud providers is virtualization. Virtualization allows to
share a single physical instance of a resource or an application among multiple
customers and organizations at one time. It does this 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.
 BENEFITS OF VIRTUALIZATION

1. More flexible and efficient allocation of resources.


2. Enhance development productivity.
3. It lowers the cost of IT infrastructure.
4. Remote access and rapid scalability.
5. High availability and disaster recovery.
6. Pay peruse of the IT infrastructure on demand.
7. Enables running multiple operating systems.

 TYPES OF VIRTUALIZATION:

1.Application Virtualization.
2.Network Virtualization.
3.Desktop Virtualization.
4.Storage Virtualization.
5.Server Virtualization.
6.Data virtualization.
1. Application Virtualization:
Application virtualization helps a user to have remote access of an application from a
server. The server stores all personal information and other characteristics of the
application but can still run on a local workstation through the internet. Example of this
would be a user who needs to run two different versions of the same software.
Technologies that use application virtualization are hosted applications and packaged
applications.

2. Network Virtualization:
The ability to run multiple virtual networks with each has a separate control and data plan.
It co-exists together on top of one physical network. It can be managed by individual
parties that potentially confidential to each other.
Network virtualization provides a facility to create and provision virtual networks—logical
switches, routers, firewalls, load balancer, Virtual Private Network (VPN), and workload
security within days or even in weeks.

3. Desktop Virtualization:
Desktop virtualization allows the users’ OS to be remotely stored on a server in the data
centre. It allows the user to access their desktop virtually, from any location by a different
machine. Users who want specific operating systems other than Windows Server will need
to have a virtual desktop. Main benefits of desktop virtualization are user mobility,
portability, easy management of software installation, updates, and patches.

4. Storage Virtualization:
Storage virtualization is an array of servers that are managed by a virtual storage system.
The servers aren’t aware of exactly where their data is stored, and instead function more
like worker bees in a hive. It makes managing storage from multiple sources to be managed
and utilized as a single repository. storage virtualization software maintains smooth
operations, consistent performance and a continuous suite of advanced functions despite
changes, break down and differences in the underlying equipment.

5. Server Virtualization:
This is a kind of virtualization in which masking of server resources takes place. Here, the
central-server(physical server) is divided into multiple different virtual servers by changing
the identity number, processors. So, each system can operate its own operating systems in
isolate manner. Where each sub-server knows the identity of the central server. It causes an
increase in the performance and reduces the operating cost by the deployment of main
server resources into a sub-server resource. It’s beneficial in virtual migration, reduce
energy consumption, reduce infrastructural cost, etc.

6. Data virtualization:
This is the kind of virtualization in which the data is collected from various sources and
managed that at a single place without knowing more about the technical information like
how data is collected, stored & formatted then arranged that data logically so that its virtual
view can be accessed by its interested people and stakeholders, and users through the
various cloud services remotely. Many big giant companies are providing their services like
Oracle, IBM, At scale, Cdata, etc.

It can be used to performing various kind of tasks such as:


 Data-integration
 Business-integration
 Service-oriented architecture data-services
 Searching organizational data

Virtualization in Cloud Computing:


Types, Architecture, Advantages
What is Virtualization?
Virtualization can be defined as a process that enables the creation of a virtual version of a
desktop, operating system, network resources, or server. Virtualization plays a key and
dominant role in cloud computing.

This ensures that the physical delivery of the resource or an application is separated from the
actual resource itself. It helps reduce the space or cost involved with the resource. This
technique enables the end-user to run multiple desktop operating systems and applications
simultaneously on the same hardware and software.
The process also ensures virtual emulation of products or services in the same machine, and it
does not slow down or impact the system’s efficiency.

The invention of Virtualization was initiated during the era of mainframe usage, and as time
evolved with progression in new-age technologies, Virtualization was achieved with the
mean of specialized software.

Virtualization as a Concept of Cloud Computing


In cloud computing, Virtualization facilitates the creation of virtual machines and ensures the
smooth functioning of multiple operating systems. It also helps create a virtual ecosystem for
server operating systems and multiple storage devices, and it runs multiple operating systems.

Cloud Computing is identified as an application or service that involves a virtual ecosystem.


Such an ecosystem could be of public or private nature. With Virtualization, the need to have
a physical infrastructure is reduced. The terms Cloud Computing and Virtualization are
now being used interchangeably, and they are being unified quickly.

Virtualization and Cloud Computing work hand in hand to ensure that you will get advanced
and sophisticated levels of computing. It ensures that applications can be shared across
multiple network threads of different enterprise and active users.

Cloud Computing delivers scalability, efficiency, and economic value. It offers streamlined
workload management systems.

In simpler words, Cloud Computing in collaboration with Virtualization ensures that the
modern-day enterprise gets a more cost-efficient way to run multiple operating systems using
one dedicated resource.

Characteristics of Virtualization
Virtualization offers several features or characteristics as listed below: –

 Distribution of resources: Virtualization and Cloud Computing technology ensure


end-users develop a unique computing environment. It is achieved through the
creation of one host machine. Through this host machine, the end-user can restrict the
number of active users. By doing so, it facilitates easy of control. They can also be
used to bring down power consumption.
 Accessibility of server resources: Virtualization delivers several unique features that
ensure no need for physical servers. Such features ensure a boost to uptime, and there
is less fault tolerance and availability of resources.
 Resource Isolation: Virtualization provides isolated virtual machines. Each virtual
machine can have many guest users, and guest users could be either operating
systems, devices, or applications.
The virtual machine provides such guest users with an isolated virtual environment.
This ensures that the sensitive information remains protected, and, at the same time,
guest users remain inter-connected with one another.
 Security and authenticity: The virtualization systems ensure continuous uptime of
systems, and it does automatic load balancing and ensures there is less disruption of
services.
 Aggregation: Aggregation in Virtualization is achieved through cluster management
software. This software ensures that the homogenous sets of computers or networks
are connected and act as one unified resource.

Types of Virtualizations

There are many variants or types available under virtualization technology


as listed below:

Application Virtualization
This can be defined as the type of Virtualization that enables the end-user of an application to
have remote access.

This is achieved through a server. This server has all personal information and other
applicable characteristics required to use the application.

The server is accessible through the internet, and it runs on a local workstation. With
Application virtualization, an end-user can run two different versions of the same software or
the same application.

Application virtualization is offered through packaged software or a hosted application.

Network Virtualization
This kind of virtualization can execute many virtual networks, and each has a separate control
and data plan. It co-occurs on the top of a physical network, and it can be run by parties who
are not aware of one another.
Network virtualization creates virtual networks, and it also maintains a provision of virtual
networks.

Through network virtualization, logical switches, firewalls, routers, load balancers, and
workload security management systems can be created.

Desktop Virtualization
This can be defined as the type of Virtualization that enables the operating system of end-
users to be remotely stored on a server or data center. It enables the users to access their
desktops remotely and do so by sitting in any geographical location. They can also use
different machines to virtually access their desktops.

With desktop virtualization, an end-user can work on more than one operating systems basis
the business need of that individual.

If the individual wants to work on an operating system other than the Window Operating
System, he can use desktop virtualization. This provides the individual an opportunity to
work on two different operating systems.

Therefore, desktop virtualization delivers a host of benefits. It delivers portability, user


mobility, easy software management with patches and updates.

Storage Virtualization
This type of Virtualization provides virtual storage systems that facilitate storage
management.

It facilitates the management of storage effectively and through multiple sources accessed
from a single repository. Storage virtualizations ensure consistent performance and smooth
performance.

It also offers continuous updates and patches on advanced functions. It also helps cope with
the changes that come up in the underlying storage equipment.

Server Virtualization
This kind of Virtualization ensures masking of servers. The main or the intended server is
divided into many virtual servers. Such servers keep changing their identity numbers and
processors to facilitate the masking process. This ensures that each server can run its own
operating systems in complete isolation.

Data Virtualization
This can be defined as the type of Virtualization wherein data are sourced and collected from
several sources and managed from a single location. There is no technical knowledge from
where such data is sourced and collected, stored, or formatted for such data.

The data is arranged logically, and the interested parties and stakeholders then access the
virtual view of such data. These are reports are also accessed by end-users on a remote basis.
The application of data virtualization ranges from data integration to business integration.
They are also used for service-oriented architecture data services, and they help find
organizational data.

 ARCHITECTURE OF VIRTUALIZATION
The architecture in Virtualization is defined as a model that describes Virtualization
conceptually. Virtualization application in Cloud Computing is critical. In Cloud Computing,
the end-users share the data on applications termed as the clouds. However, end users can
share the entire IT infrastructure with Virtualization itself.

Here is the architecture of the Virtualization:

The virtual application services help in application management, and the virtual infrastructure
services can help in infrastructure management.

Both services are embedded into a virtual data center or an operating system. The virtual
services can be used in any platforms and programming environment. The services can be
accessed through an on-premise cloud or an off-premise cloud.

Virtualization services are delivered to cloud users by third-party individuals. The cloud
users, in return, have to pay third-party individuals with an applicable monthly or annual fee.

This fee is paid to compensate the third parties to provide cloud services to end-users, and
they also provide different versions of applications as requested by the end cloud users.

Virtualization is generally achieved through the hypervisor. A hypervisor enables the


separation of operating systems with the underlying hardware. It enables the host machine to
run many virtual machines simultaneously and share the same physical computer resources.
There are two methods through which virtualization architecture is achieved described below:
 Type one: The first hypervisor type is termed a bare-metal hypervisor. They
directly run over the top of the hardware of the host system. They deliver effective
resource management and ensure the high availability of resources. It delivers direct
access to the hardware system, ensuring better scalability, performance, and stability.
 Type two: The second hypervisor type is the hosted hypervisor. This is installed on
the host operating system, and the virtual operating system runs directly above the
hypervisor. It is the kind of system that eases and simplifies system configuration.

It additionally simplifies management tasks. The presence of the host operating system at
times limits the performance of the virtualization-enabled system, and it even generates
security flaws or risks.

ADVANTAGES OF VIRTUALIZATION

Here are some Pros/Benefits of Virtualization:

 Virtualization offers several benefits, such as it helps in cost reduction and boosting
productivity towards the development process.
 It does away with the need to have a highly complex IT infrastructure.
 It facilitates remote access to resources and ensures that it promotes faster scalability.
 It is highly flexible, and it allows the users to execute multiple desktops operating
systems on one standard machine.
 It removes the risks involved in terms of system failures, and it also boosts flexible
data transfer between different virtual servers.
 The working process in Virtualization is highly streamlined and agile, which ensures
that the users work and operate most economically.

DISADVANTAGES OF VIRTUALIZATION

The disadvantages of Virtualization are very much limited in nature. Here are the
cons/disadvantages of Virtualization:

 The transition of the existing hardware setup to a virtualized setup requires an


extensive time investment, and hence this can be regarded as a time-intensive process.
 There is a lack of availability of skilled resources that helps in terms of transition of
existing or actual setup to virtual setup.
 Since there is a limitation in terms of having less skilled resources, the
implementation of Virtualization calls for high-cost implementations.
 If the transition process is not handled meticulously, it also poses a security risk to
sensitive data.
ROLE OF VIRTUALIZATION IN CLOUD COMPUTING

In Virtualization, a sensible or proper name is aligned with the physical server. The pointers
are then directed towards that physical server, which is done on demand. Virtualization
facilitates the execution of applications that are homogenous.

It also provides a virtual and isolated networking, storage, and memory area environment.
The Virtualization is achieved through a host machine and guest machine. A host machine
can be defined as the machine on which a virtual machine is developed, and the virtual
machine so developed is termed as a guest machine.

Hardware virtualization plays a critical role by delivering infrastructure as a service solution


most efficiently and effectively under a Cloud Computing process.

This type of Virtualization ensures portability. The guest machine is packaged as a virtual
instance of an image, and such virtual images can be removed easily as and when the need
arises.

IMPORTANT TERMINOLOGIES OF VIRTUALIZATION

There are a few essential technologies in Virtualization, which are defined as follows: –

 Virtual machine: A virtual machine can be defined as the computer of a virtual type
that operates beneath a hypervisor.
 Hypervisor: This can be defined as the operating system that runs on actual
hardware. A virtual counterpart of the operating system is a subpart that executes or
emulates the virtual process. They are defined as Domain 0 or Dom0.
 Container: These can be defined as virtual machines of lightweight nature that are a
subset of the same operating system instance or the hypervisor. They are a collection
of processes that executes along with corresponding namespace or identifiers of
process.
 Virtual network: This is defined as the network being separated logically and is
present inside the servers. Such networks can be expanded across multiple servers.
 Virtualization software: This type of software helps deploy Virtualization on the
computer device.

VIRTUAL CLUSTERING IN CLOUD COMPUTING


Simply put, it is a group of nodes hosted on virtual machines and connected within a
virtual private cloud. Using the cloud allows for much of the overhead involved in setting
up a cluster to be entirely bypassed. Virtual machines can be provisioned on demand,
allowing clusters to scale in minutes
PITFALLS OF VIRTUALIZATION IN CLOUD COMPUTING
The biggest pitfall of virtualization in the cloud is the lack of isolation. There is a
misconception that cloud providers guarantee full isolation between VMs that run different
operating systems. In reality, they only offer VM isolation at the process level.

WHAT IS GRID IN CLOUD COMPUTING:


Grid computing is a computing infrastructure that combines computer resources spread over
different geographical locations to achieve a common goal. All unused resources on multiple
computers are pooled together and made available for a single task.

Grid computing is defined as a distributed architecture of multiple computers connected by


networks that work together to accomplish a joint task. This system operates on a data grid
where computers interact to coordinate jobs at hand. This article explains the fundamentals of
grid computing in detail.
A typical grid computing network consists of three machine types:

 Control node/server: A control node is a server or a group of servers that


administers the entire network and maintains the record for resources in a
network pool.
 Provider/grid node: A provider or grid node is a computer that contributes its
resources to the network resource pool.
 User: A user refers to the computer that uses the resources on the network to
complete the task.

Grid computing operates by running specialized software on every computer involved in the
grid network. The software coordinates and manages all the tasks of the grid. Fundamentally,
the software segregates the main task into subtasks and assigns the subtasks to each
computer. This allows all the computers to work simultaneously on their respective subtasks.
Upon completion of the subtasks, the outputs of all computers are aggregated to complete the
larger main task.

The software allows computers to communicate and share information on the portion of the
subtasks being carried out. As a result, the computers can consolidate and deliver a combined
output for the assigned main task.

Grid computing can be viewed as a subset of distributed computing, where a virtual


supercomputer integrates the resources of several independent computers that are distributed
across geographies. Computers participating in a grid contribute resources such as processing
power, network bandwidth, and storage capacity to perform operations requiring high
computational power. The overall grid architecture looks like a single computing entity.

COMPONENTS OF GRID COMPUTING

A grid computing environment consists of a set of primary grid components. As grid designs
and their expected usage vary, specific components may or may not always be a part of the
grid network. These components can be combined to form a hybrid component in specific
scenarios. Although the combination of elements may differ depending on use cases,
understanding their roles can help you while developing grid-enabled applications.

Let’s understand the key components of a grid computing environment.


1. User interface

Today, users are well-versed with web portals. They provide a single interface that allows
users to view a wide variety of information. Similarly, a grid portal offers an interface that
enables users to launch applications with resources provided by the grid.

The interface has a portal style to help users query and execute various functions on the grid
effectively. A grid user views a single, large virtual computer offering computing resources,
similar to an internet user who views a unified instance of content on the web.

2. Security

Security is one of the major concerns for grid computing environments. Security mechanisms
can include authentication, authorization, data encryption, and others. Grid security
infrastructure (GSI) is an important ingredient here. It outlines specifications that establish
secret and tamper-proof communication between software entities operating in a grid
network.
It includes OpenSSL implementation and provides a single sign-on mechanism for users to
perform actions within the grid. It offers robust security by providing authentication and
authorization mechanisms for system protection.

3. Scheduler

On identifying the resources, the next step is to schedule the tasks to run on them. A
scheduler may not be needed if standalone tasks are to be executed that do not showcase
interdependencies. However, if you want to run specific tasks concurrently that require inter-
process communication, the job scheduler would suffice to coordinate the execution of
different subtasks.

Moreover, schedulers of different levels operate in a grid environment. For example, a cluster
may represent an independent resource with its own scheduler to manage the nodes it
contains. Hence, a high-level scheduler may sometimes be required to accomplish the task
done on the cluster, while the cluster employs its own separate scheduler to handle work on
its individual nodes.

4. Data management

Data management is crucial for grid environments. A secure and reliable mechanism to move
or make any data or application module accessible to various nodes within the grid is
necessary. Consider the Globus toolkit — an open-source toolkit for grid computing.

It offers a data management component called grid access to secondary storage (GASS). It
includes GridFTP built on the standard FTP protocol and utilizes GSI for user
authentication and authorization. After authentication, the user can move files using the
GridFTP facility without going through the login process at every node.

5. Workload & resource management

The workload & resource component enables the actual launch of a job on a particular
resource, checks its status, and retrieves the results when the job is complete. Say a user
wants to execute an application on the grid. In that case, the application should be aware of
the available resources on the grid to take up the workload.
TYPES OF GRID COMPUTING WITH EXAMPLES

Grid computing is divided into several types based on its uses and the task at hand. Let’s
understand the types of grid computing with some examples.
1. Computational grid computing

Computational grids account for the largest share of grid computing usage across industries
today, and the trend is expected to stay the same over the years to come. A computational
grid comes into the picture when you have a task taking longer to execute than expected. In
this case, the main task is split into multiple subtasks, and each subtask is executed in parallel
on a separate node. Upon completion, the results of the subtasks are combined to get the main
task’s result. By splitting the task, the end result is achieved O(n) times faster (where ‘n’
denotes the number of subtasks) than when a single machine executes the task.

Computational grids find application in several real-life scenarios. For example, a


computational grid can speed up the business report generation for a company with an online
marketplace. As time is an important factor for customers, the company can use
computational grids to generate reports within seconds rather than minutes. Such grids result
in substantial performance improvement compared to traditional systems.

2. Data grid computing

Data grids refer to grids that split data onto multiple computers. Like computational grids
where computations are split, data grids enable placing data onto a network of computers or
storage. However, the grid virtually treats them as one despite the splitting. Data grid
computing allows several users to simultaneously access, change, or transfer distributed data.

For instance, a data grid can be used as a large data store where each website stores its own
data on the grid. Here, the grid enables coordinated data sharing across all grid users. Such a
grid allows collaboration along with increased knowledge transfer between grid users.

3. Collaborative grid computing

Collaborative grid computing solves problems by offering seamless collaboration. This type
of computing uses various technologies that support work between individuals. As individual
workers can readily access each other’s work and critical information on time, it improves
overall workforce productivity and creativity, which benefits organizations massively.

It overcomes geographical barriers and adds capabilities that enhance work experience by
allowing remote individuals to work together. For example, with a collaborative grid, all
users can access and simultaneously work on text-based documents, graphics, design files,
and other work-related products.

4. Manuscript grid computing

Manuscript grid computing comes in handy when managing large volumes of image and text
blocks. This grid type allows the continuous accumulation of image and text blocks while it
processes and performs operations on previous block batches. It is a simple grid computing
framework where vast volumes of text or manuscripts and images are processed in parallel.
5. Modular grid computing

Modular grid computing relates to disaggregating computing resources in a system or chassis,


where resources can include storage, GPUs, memory, and networking. IT teams can then
combine the required assets and computing resources to support specific apps or services.

Fundamentally, in a modular grid, a set of resources is combined with software for distinct
applications. For example, CPU and GPU drives may reside in a server rack chassis. They
can be interconnected with an auxiliary high-speed and low-latency fabric to create a server
configuration that is optimized for a particular application.

When applications are created, a set of computing resources and services are defined to
support them. Subsequently, when the applications expire, computing support is withdrawn,
and resources are set free, making them available for other apps. Practically, original
equipment manufacturers (OEMs) play a key role in modular grid computing as their
cooperation is critical in creating modular grids that are application-specific.

You might also like