Virtualization 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 the 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 sharing of 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 physical storage and providing a po inter
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.
Virtualization
Host Machine: The machine on which the virtual machine is going to be built is known as
Host Machine.
Guest Machine: The virtual machine is referred to as a Guest Machine.
Work of Virtualization in Cloud Computing
Virtualization has a prominent impact on Cloud Computing. In the case of cloud computing,
users store data in the cloud, but with the help of Virtualization, users have the extra benefit of
sharing the infrastructure. Cloud Vendors take care of the required physical resources, but
these cloud providers charge a huge amount for these services which impacts every user or
organization. Virtualization helps Users or Organizations in maintaining those services which
are required by a company through external (third-party) people, which helps in reducing costs
to the company. This is the way through which Virtualization works in Cloud Computing.
Benefits of Virtualization
More flexible and efficient allocation of resources.
Enhance development productivity.
It lowers the cost of IT infrastructure.
Remote access and rapid scalability.
High availability and disaster recovery.
Pay peruse of the IT infrastructure on demand.
Enables running multiple operating systems.
Drawback of Virtualization
High Initial Investment: Clouds have a very high initial investment, but it is also true that
it will help in reducing the cost of companies.
Learning New Infrastructure: As the companies shifted from Servers to Cloud, it requires
highly skilled staff who have skills to work with the cloud easily, and for this, you have to
hire new staff or provide training to current staff.
Risk of Data: Hosting data on third-party resources can lead to putting the data at risk, it
has the chance of getting attacked by any hacker or cracker very easily.
Types of Virtualization
1. Application Virtualization
2. Network Virtualization
3. Desktop Virtualization
4. Storage Virtualization
5. Server Virtualization
6. Data virtualization
Types of Virtualization
1. Application Virtualization: Application virtualization helps a user to have remote
access to 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. An 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 having a
separate control and data plan. It co-exists together on top of one physical network. It can be
managed by individual parties that are potentially confidential to each other. Network
virtualization provides a facility to create and provision virtual networks, logical switches,
routers, firewalls, load balancers, Virtual Private Networks (VPN), and workload security
within days or even weeks.
Network Virtualization
3. Desktop Virtualization: Desktop virtualization allows the users’ OS to be remotely stored
on a server in the data center. 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. The main benefits of desktop
virtualization are user mobility, portability, and 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 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, breaks down, and differences in the underlying equipment.
5. Server Virtualization: This is a kind of virtualization in which the masking of server
resources takes place. Here, the central server (physical server) is divided into multiple
different virtual servers by changing the identity number, and processors. So, each system can
operate its operating systems in an isolated manner. Where each sub-server knows the identity
of the central server. It causes an increase in performance and reduces the operating cost by the
deployment of main server resources into a sub-server resource. It’s beneficial in virtual
migration, reducing energy consumption, reducing infrastructural costs, etc.
Server Virtualization
6. Data Virtualization: This is the kind of virtualization in which the data is collected from
various sources and managed 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.
Uses of Virtualization
Data-integration
Business-integration
Service-oriented architecture data-services
Searching organizational data
Difference between Cloud Computing and Virtualization
1. Cloud Computing:
Cloud computing is a client-server computing architecture. In cloud computing, resources are
used in centralized pattern and cloud computing is a high accessible service. Cloud computing
is a payment and useful business tool, users pay for usage.
2. Virtualization:
Virtualization is the establishment of cloud computing. It is this novelty that empowers a
continuous asset age from certain eccentric conditions or a singular physical device
framework. Here the job of hypervisor is essential, which is legitimately associated with the
equipment to make a few virtual machines from it. These virtual machines working is
unmistakable, independent and doesn’t meddle with one another.In the condition of disaster
recovery, it relies on single peripheral device as single dedicated hardware do a great job in it.
Virtualization exists in different classes which are:-
Let’s see the difference between Cloud computing and Virtualization:-
S.NO Cloud Computing Virtualization
Cloud computing is used to provide pools While It is used to make various
1. and automated resources that can be simulated environments through a
accessed on-demand. physical hardware system.
Cloud computing setup is tedious, While virtualization setup is simple as
2.
complicated. compared to cloud computing.
While virtualization is low scalable
3. Cloud computing is high scalable.
compared to cloud computing.
While virtualization is less flexible than
4. Cloud computing is Very flexible.
cloud computing.
In the condition of disaster recovery, cloud While it relies on single peripheral
5.
computing relies on multiple machines. device.
In cloud computing, the workload is In virtualization, the workload is
6.
stateless. stateful.
The total cost of cloud computing is higher The total cost of virtualization is lower
7.
than virtualization. than Cloud Computing.
Cloud computing requires many dedicated While single dedicated hardware can do
8.
hardware. a great job in it.
While storage space depends on
Cloud computing provides unlimited storage
9. physical server capacity in
space.
virtualization.
Virtualization is of two types :
Cloud computing is of two types : Public
10. Hardware virtualization and Application
cloud and Private cloud.
virtualization.
In Cloud Computing, Configuration is image In Virtualization, Configuration is
11.
based. template based.
In cloud computing, we utilize the entire
In Virtualization, the entire servers are
12. server capacity and the entire servers are
on-demand.
consolidated.
In cloud computing, the pricing pay as you
In Virtualization, the pricing is totally
13. go model, and consumption is the metric on
dependent on infrastructure costs.
which billing is done.
Cloud Deployment Model
In cloud computing, we have access to a shared pool of computer resources (servers, storage,
programs, and so on) in the cloud. You simply need to request additional resources when you
require them. Getting resources up and running quickly is a breeze thanks to the clouds. It is
possible to release resources that are no longer necessary. This method allows you to just pay
for what you use. Your cloud provider is in charge of all upkeep.
What is a Cloud Deployment Model?
Cloud Deployment Model functions as a virtual computing environment with a deployment
architecture that varies depending on the amount of data you want to store and who has access
to the infrastructure.
Types of Cloud Computing Deployment Models
The cloud deployment model identifies the specific type of cloud environment based on
ownership, scale, and access, as well as the cloud’s nature and purpose. The location of the
servers you’re utilizing and who controls them are defined by a cloud deployment model. It
specifies how your cloud infrastructure will look, what you can change, and whether you will
be given services or will have to create everything yourself. Relationships between the
infrastructure and your users are also defined by cloud deployment types. Different types of
cloud computing deployment models are described below.
Public Cloud
Private Cloud
Hybrid Cloud
Community Cloud
Multi-Cloud
Public Cloud
The public cloud makes it possible for anybody to access systems and services. The public
cloud may be less secure as it is open to everyone. The public cloud is one in which cloud
infrastructure services are provided over the internet to the general people or major industry
groups. The infrastructure in this cloud model is owned by the entity that delivers the cloud
services, not by the consumer. It is a type of cloud hosting that allows customers and users to
easily access systems and services. This form of cloud computing is an excellent example of
cloud hosting, in which service providers supply services to a variety of customers. In this
arrangement, storage backup and retrieval services are given for free, as a subscription, or on a
per-user basis. For example, Google App Engine etc.
Public Cloud
Advantages of the Public Cloud Model
Minimal Investment: Because it is a pay-per-use service, there is no substantial upfront
fee, making it excellent for enterprises that require immediate access to resources.
No setup cost: The entire infrastructure is fully subsidized by the cloud service providers,
thus there is no need to set up any hardware.
Infrastructure Management is not required: Using the public cloud does not necessitate
infrastructure management.
No maintenance: The maintenance work is done by the service provider (not users).
Dynamic Scalability: To fulfill your company’s needs, on-demand resources are
accessible.
Disadvantages of the Public Cloud Model
Less secure: Public cloud is less secure as resources are public so there is no guarantee of
high-level security.
Low customization: It is accessed by many public so it can’t be customized according to
personal requirements.
Private Cloud
The private cloud deployment model is the exact opposite of the public cloud deployment
model. It’s a one-on-one environment for a single user (customer). There is no need to share
your hardware with anyone else. The distinction between private and public clouds is in how
you handle all of the hardware. It is also called the “internal cloud” & it refers to the ability to
access systems and services within a given border or organization. The cloud platform is
implemented in a cloud-based secure environment that is protected by powerful firewalls and
under the supervision of an organization’s IT department. The private cloud gives greater
flexibility of control over cloud resources.
Private Cloud
Advantages of the Private Cloud Model
Better Control: You are the sole owner of the property. You gain complete command over
service integration, IT operations, policies, and user behavior.
Data Security and Privacy: It’s suitable for storing corporate information to which only
authorized staff have access. By segmenting resources within the same infrastructure,
improved access and security can be achieved.
Supports Legacy Systems: This approach is designed to work with legacy systems that are
unable to access the public cloud.
Customization: Unlike a public cloud deployment, a private cloud allows a company to
tailor its solution to meet its specific needs.
Disadvantages of the Private Cloud Model
Less scalable: Private clouds are scaled within a certain range as there is less number of
clients.
Costly: Private clouds are more costly as they provide personalized facilities.
Hybrid Cloud
By bridging the public and private worlds with a layer of proprietary software, hybrid cloud
computing gives the best of both worlds. With a hybrid solution, you may host the app in a
safe environment while taking advantage of the public cloud’s cost savings. Organizations can
move data and applications between different clouds using a combination of two or more cloud
deployment methods, depending on their needs.
Hybrid Cloud
Advantages of the Hybrid Cloud Model
Flexibility and control: Businesses with more flexibility can design personalized solutions
that meet their particular needs.
Cost: Because public clouds provide scalability, you’ll only be responsible for paying for
the extra capacity if you require it.
Security: Because data is properly separated, the chances of data theft by attackers are
considerably reduced.
Disadvantages of the Hybrid Cloud Model
Difficult to manage: Hybrid clouds are difficult to manage as it is a combination of both
public and private cloud. So, it is complex.
Slow data transmission: Data transmission in the hybrid cloud takes place through the
public cloud so latency occurs.
Community Cloud
It allows systems and services to be accessible by a group of organizations. It is a distributed
system that is created by integrating the services of different clouds to address the specific
needs of a community, industry, or business. The infrastructure of the community could be
shared between the organization which has shared concerns or tasks. It is generally managed
by a third party or by the combination of one or more organizations in the community.
Community Cloud
Advantages of the Community Cloud Model
Cost Effective: It is cost-effective because the cloud is shared by multiple organizations or
communities.
Security: Community cloud provides better security.
Shared resources: It allows you to share resources, infrastructure, etc. with multiple
organizations.
Collaboration and data sharing: It is suitable for both collaboration and data sharing.
Disadvantages of the Community Cloud Model
Limited Scalability: Community cloud is relatively less scalable as many organizations
share the same resources according to their collaborative interests.
Rigid in customization: As the data and resources are shared among different organizations
according to their mutual interests if an organization wants some changes according to their
needs they cannot do so because it will have an impact on other organizations.
Multi-Cloud
We’re talking about employing multiple cloud providers at the same time under this paradigm,
as the name implies. It’s similar to the hybrid cloud deployment approach, which combines
public and private cloud resources. Instead of merging private and public clouds, multi-cloud
uses many public clouds. Although public cloud providers provide numerous tools to improve
the reliability of their services, mishaps still occur. It’s quite rare that two distinct clouds
would have an incident at the same moment. As a result, multi-cloud deployment improves the
high availability of your services even more.
Multi-Cloud
Advantages of the Multi-Cloud Model
You can mix and match the best features of each cloud provider’s services to suit the
demands of your apps, workloads, and business by choosing different cloud providers.
Reduced Latency: To reduce latency and improve user experience, you can choose cloud
regions and zones that are close to your clients.
High availability of service: It’s quite rare that two distinct clouds would have an incident
at the same moment. So, the multi-cloud deployment improves the high availability of your
services.
Disadvantages of the Multi-Cloud Model
Complex: The combination of many clouds makes the system complex and bottlenecks
may occur.
Security issue: Due to the complex structure, there may be loopholes to which a hacker can
take advantage hence, makes the data insecure.
What is the Right Choice for Cloud Deployment Model?
As of now, no such approach fits picking a cloud deployment model. We will always consider
the best cloud deployment model as per our requirements. Here are some factors which should
be considered before choosing the best deployment model.
Cost: Cost is an important factor for the cloud deployment model as it tells how much
amount you want to pay for these things.
Scalability: Scalability tells about the current activity status and how much we can scale it.
Easy to use: It tells how much your resources are trained and how easily can you manage
these models.
Compliance: Compliance tells about the laws and regulations which impact the
implementation of the model.
Privacy: Privacy tells about what data you gather for the model.
Each model has some advantages and some disadvantages, and the selection of the best is only
done on the basis of your requirement. If your requirement changes, you can switch to any
other model.
Overall Analysis of Cloud Deployment Models
The overall Analysis of these models with respect to different factors is described below.
Factors Public Cloud Private Cloud Community Cloud Hybrid Cloud
Complex, Complex, Complex,
requires a requires a requires a
Initial Setup Easy
professional team professional team professional team
to setup to setup to setup
Scalability
and High High Fixed High
Flexibility
Cost- Distributed cost Between public
Cost-Effective Costly
Comparison among members and private cloud
Reliability Low Low High High
Data Security Low High High High
Data Privacy Low High High High
Models of Cloud Computing
Cloud Computing helps in rendering several services according to roles, companies, etc. Cloud
computing models are explained below.
Infrastructure as a service (IaaS)
Platform as a service (PaaS)
Software as a service (SaaS)
1. Infrastructure as a service (IaaS)
Infrastructure as a Service (IaaS) helps in delivering computer infrastructure on an external
basis for supporting operations. Generally, IaaS provides services to networking equipment,
devices, databases, and web servers.
Infrastructure as a Service (IaaS) helps large organizations, and large enterprises in managing
and building their IT platforms. This infrastructure is flexible according to the needs of the
client.
Advantages of IaaS
IaaS is cost-effective as it eliminates capital expenses.
IaaS cloud provider provides better security than any other software.
IaaS provides remote access.
Disadvantages of IaaS
In IaaS, users have to secure their own data and applications.
Cloud computing is not accessible in some regions of the World.
2. Platform as a service (PaaS)
Platform as a Service (PaaS) is a type of cloud computing that helps developers to build
applications and services over the Internet by providing them with a platform.
PaaS helps in maintaining control over their business applications.
Advantages of PaaS
PaaS is simple and very much convenient for the user as it can be accessed via a web
browser.
PaaS has the capabilities to efficiently manage the lifecycle.
Disadvantages of PaaS
PaaS has limited control over infrastructure as they have less control over the environment
and are not able to make some customizations.
PaaS has a high dependence on the provider.
3. Software as a service (SaaS)
Software as a Service (SaaS) is a type of cloud computing model that is the work of delivering
services and applications over the Internet. The SaaS applications are called Web-Based
Software or Hosted Software.
SaaS has around 60 percent of cloud solutions and due to this, it is mostly preferred by
companies.
Advantages of SaaS
SaaS can access app data from anywhere on the Internet.
SaaS provides easy access to features and services.
Disadvantages of SaaS
SaaS solutions have limited customization, which means they have some restrictions within
the platform.
SaaS has little control over the data of the user.
SaaS are generally cloud-based, they require a stable internet connection for proper
working.