Virtualization

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

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 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.
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.

Characteristics of Virtualization
 Increased Security: The ability to control the execution of
a guest program in a completely transparent manner opens
new possibilities for delivering a secure, controlled
execution environment. All the operations of the guest
programs are generally performed against the virtual
machine, which then translates and applies them to the
host programs.

 Managed Execution: In particular, sharing, aggregation,


emulation, and isolation are the most relevant features.

 Sharing: Virtualization allows the creation of a separate


computing environment within the same host.

 Aggregation: It is possible to share physical resources


among several guests, but virtualization also allows
aggregation, which is the opposite process.

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

Why Virtualization in Cloud Computing?


Virtualization is very important concept in cloud computing. In
cloud computing, a cloud vendor who will provide cloud services
have all physical resources like server, storage device, network
device etc. and these physical services are rented by cloud vendors
so that user’s will not worry about these physical services.

But it is very costly to provide physical services per customer on


rent because firstly it becomes very costly and also user’s will not
use the fully services. So this problem can be solved by
Virtualization. It is very cool approach for not only efficient use of
Physical services but also reduce costs of vendors. Thus cloud
vendor’s can vitalize their single big server and provide smaller
spec server to multiple customer’s

Pros/Benefits of Virtualization in Cloud Computing :


 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.
 Utilization of Hardware Efficiently –
With the help of Virtualization Hardware is Efficiently used
by user as well as Cloud Service Provider. In this the need
of Physical Hardware System for the User is decreases and
this results in less costly.In Service Provider point of View,
they will vitalize the Hardware using Hardware
Virtualization which decrease the Hardware requirement
from Vendor side which are provided to User is decreased.
Before Virtualization, Companies and organizations have to
set up their own Server which require extra space for
placing them, engineer’s to check its performance and
require extra hardware cost but with the help of
Virtualization the all these limitations are removed by
Cloud vendor’s who provide Physical Services without
setting up any Physical Hardware system.

 Availability increases with Virtualization –


One of the main benefits of Virtualization is that it provides
advance features which allow virtual instances to be
available all the times. It also has capability to move virtual
instance from one virtual Server another Server which is
very tedious and risky task in Server Based System. During
migration of Data from one server to another it ensures its
safety. Also, we can access information from any location
and any time from any device.

 Disaster Recovery is efficient and easy –


With the help of virtualization Data Recovery, Backup,
Duplication becomes very easy. In traditional method , if
somehow due to some disaster if Server system Damaged
then the surety of Data Recovery is very less. But with the
tools of Virtualization real time data backup recovery and
mirroring become easy task and provide surety of zero
percent data loss.

 Virtualization saves Energy –


Virtualization will help to save Energy because while
moving from physical Servers to Virtual Server’s, the
number of Server’s decreases due to this monthly power
and cooling cost decreases which will Save Money as well.
As cooling cost reduces it means carbon production by
devices also decreases which results in Fresh and pollution
free environment.
 Quick and Easy Set up –
In traditional methods Setting up physical system and
servers are very time-consuming. Firstly Purchase them in
bulk after that wait for shipment. When Shipment is done
then wait for Setting up and after that again spend time in
installing required software etc. Which will consume very
time. But with the help of virtualization the entire process
is done in very less time which results in productive setup.

 Cloud Migration becomes easy –


Most of the companies those who already have spent a lot
in the server have a doubt of Shifting to Cloud. But it is
more cost-effective to shift to cloud services because all
the data that is present in their server’s can be easily
migrated into the cloud server and save something from
maintenance charge, power consumption, cooling cost,
cost to Server Maintenance Engineer etc.

Cons 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. It provides numerous services which
are not required and when unskilled organization will try to
set up in cloud they purchase unnecessary services which
are not even required to them.

 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.

 Data can be at Risk –


Working on virtual instances on shared resources means
that our data is hosted on third party resource which put’s
our data in vulnerable condition. Any hacker can attack on
our data or try to perform unauthorized access. Without
Security solution our data is in threaten situation.

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.
Load balancing is an essential technique used in cloud computing
to optimize resource utilization and ensure that no single resource
is overburdened with traffic. It is a process of distributing workloads
across multiple computing resources, such as servers, virtual
machines, or containers, to achieve better performance,
availability, and scalability.

In cloud computing, load balancing can be implemented at various


levels, including the network layer, application layer, and database
layer. The most common load balancing techniques used in cloud
computing are:
1. Network Load Balancing: This technique is used to
balance the network traffic across multiple servers or
instances. It is implemented at the network layer and
ensures that the incoming traffic is distributed evenly
across the available servers.

2. Application Load Balancing: This technique is used to


balance the workload across multiple instances of an
application. It is implemented at the application layer and
ensures that each instance receives an equal share of the
incoming requests.

3. Database Load Balancing: This technique is used to


balance the workload across multiple database servers. It is
implemented at the database layer and ensures that the
incoming queries are distributed evenly across the
available database servers.

Load balancing helps to improve the overall performance and


reliability of cloud-based applications by ensuring that resources
are used efficiently and that there is no single point of failure. It
also helps to scale applications on demand and provides high
availability and fault tolerance to handle spikes in traffic or server
failures.

here are some advantages and disadvantages of load balancing in


cloud computing:

Advantages:

1. Improved Performance: Load balancing helps to distribute


the workload across multiple resources, which reduces the
load on each resource and improves the overall
performance of the system.
2. High Availability: Load balancing ensures that there is no
single point of failure in the system, which provides high
availability and fault tolerance to handle server failures.
3. Scalability: Load balancing makes it easier to scale
resources up or down as needed, which helps to handle
spikes in traffic or changes in demand.
4. Efficient Resource Utilization: Load balancing ensures that
resources are used efficiently, which reduces wastage and
helps to optimize costs.

Disadvantages:

1. Complexity: Implementing load balancing in cloud


computing can be complex, especially when dealing with
large-scale systems. It requires careful planning and
configuration to ensure that it works effectively.
2. Cost: Implementing load balancing can add to the overall
cost of cloud computing, especially when using specialized
hardware or software.
3. Single Point of Failure: While load balancing helps to reduce
the risk of a single point of failure, it can also become a
single point of failure if not implemented correctly.
4. Security: Load balancing can introduce security risks if not
implemented correctly, such as allowing unauthorized
access or exposing sensitive data.

Overall, the benefits of load balancing in cloud computing


outweigh(more significant) the disadvantages, as it helps to
improve performance, availability, scalability, and resource
utilization. However, it is important to carefully plan and implement
load balancing to ensure that it works effectively and does not
introduce additional risks.
Cloud load balancing is defined as the method of splitting
workloads and computing properties in a cloud computing. It
enables enterprise to manage workload demands or application
demands by distributing resources among numerous computers,
networks or servers. Cloud load balancing includes holding the
circulation of workload traffic and demands that exist over the
Internet.

As the traffic on the internet growing rapidly, which is about 100%


annually of the present traffic. Hence, the workload on the server
growing so fast which leads to the overloading of servers mainly for
popular web server.

There are two elementary solutions to overcome the problem of


overloading on the servers-
 First is a single-server solution in which the server is
upgraded to a higher performance server. However, the
new server may also be overloaded soon, demanding
another upgrade. Moreover, the upgrading process is hard
to achieve and expensive.
 Second is a multiple-server solution in which a scalable
service system on a cluster of servers is built. That’s why it
is more cost effective as well as more scalable to build a
server cluster system for network services.

Load balancing is beneficial with almost any type of service, like


HTTP, SMTP, DNS, FTP, and POP/IMAP. It also rises reliability
through redundancy. The balancing service is provided by a
dedicated hardware device or program. Cloud-based servers farms
can attain more precise scalability and availability using server load
balancing.

You might also like