Difference between Cloud Computing and Virtualization
In 1961, computer scientist, John McCarthy introduced the idea of using computation as a publicly accessible utility, and later in 1969, JCR Licklider had his vision of ‘global interconnectedness’ to access programs from anywhere, the idea stemming from the old-fashioned service bureaus.
Today, both these ideas resemble the cloud computing concept; an industry buzz word that’s been around for several years now.
Since 2012, businesses have started taking cloud computing more seriously and implementing it as a business goal, following leaders like Amazon, Google, and Microsoft who are pushing and evolving the use of cloud computing.
Where does Virtualization fit in?
Virtualization is software technology that simulates complex hardware. Cloud computing uses virtualization to manage server resources and workload consolidation.
What is Cloud Computing?
The following Cloud Computing definition is extracted from a publication issued by the U.S. National Institute of Standards and Technology (NIST):
“Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
The NIST publication then goes on to list the essential characteristics, service, and deployment models required for a cloud infrastructure, which can further be defined as:
“A collection of hardware and software enabling the characteristics of cloud computing, which can be viewed as having a physical and abstraction layer.
The physical layer consists of the hardware resources necessary to support the cloud services, and typically includes server, storage, and network components. The abstraction layer consists of the software deployed across the physical layer, which manifests the essential cloud characteristics.
Conceptually, the abstraction layer sits above the physical layer.”
So, although Virtualization technology allows the abstraction and isolation of the underlying hardware in the physical layer, it is not the only key component that leads to cloud computing.
Evolution of Cloud Computing
Cloud computing for public consumption got off to a somewhat late start, only after the internet had made significant bandwidth advances in the nineties.
The first milestone for cloud computing was established by Salesforce.com when they delivered enterprise programs through a simple website. This paved the way for software development organizations to start delivering applications over the internet.
In 2002, Amazon Web Services launched their cloud-based service EC2 (Elastic Compute cloud) and in 2006, they released a commercial web service for individuals and small entities to rent computers, but run their own programs on the hardware. Amazon’s EC2 was the first available cloud infrastructure service.
From 2009, Google and Microsoft started offering their own applications store platform. Being an accessible and reliable platform, this triggered a ripple effect and subsequently a greater adoption of cloud-based applications in the industry.
Cloud computing was evolving through the bandwidth improvements, software interoperability, and the maturing of virtualisation technology. In the way client/server (enterprise) computing replaced mainframes, cloud computing is a new technology model that could replace the current enterprise computing approach.
Cloud Computing Categories
Businesses implementing cloud computing for infrastructure and/or application deployment, can consider three categories for cloud-based services:
- Saas – Software as a Service is where web browsers provide the entry point of access to software and applications running on servers (either off-site from the organization’s premises or on-site). This is the most widely-known cloud service.
- Paas – Platform as a Service provides a platform on which to develop and deploy software, such as Google App Engine and Heroku.
- Iaas – Infrastructure as a Service offer direct access to cloud servers and storage through a Dashboard or API. This allows clients to build “virtual” data centers. An example of an Iaas provider is Navisite.
Using combinations of any of these services can be deployed as a hybrid service.
What is Virtualization?
Virtualization is software technology that distributes the capabilities of a computer’s resources between multiple users and environments, and it only became widely-adopted in the early 2000s.
Virtualization simulates different aspects of a computer’s software, data, storage, memory, etc., which are the attributes that make it possible for scalability, elasticity, and multi-tenancy for cloud computing.
Virtualization was not intended only for large scale companies, as it can benefit any company regardless of size (unless the organization only requires one server).
And contrary to some myths out there, it is possible to virtualize tier 1 applications, such as Oracle, SAP, SQL, Exchange, etc.
Two well-known virtualization software is VMWare and Microsoft Hyper-V and both are leading virtualization software companies that facilitate virtualizing data centers, and mobile and cloud devices to deliver applications and services to any device.
There are significant financial savings and flexibility with virtualization and it is becoming the business choice to migrate to “The Cloud”.
Hypervisor
Now that we know what cloud computing is and how virtualization fits into the picture, briefly understanding what a hypervisor is will provide further insight into how virtualization works.
The first known hypervisor was introduced back in the sixties to allow different operating systems to run on one mainframe computer. The main players for driving virtualization are Linux and Unix.
In the most basic definition, a hypervisor manages virtual machines. It is a program that allows hosting multiple virtual machines (VM) on a single piece of hardware. Each VM runs its own applications using the allocated hardware resources.
The hypervisor is what allocates and manages these resources for the VM.
Virtualization Categories
- Full Virtualization is at the processor level simulating the software and hardware of the host machine.
- Para-Virtualization allows multiple virtual machines to run on one host and every instance of the programs run, is processed independently (on their own VM).
- Isolation Virtualization only allows simulating the host’s operating system. This type only supports Linux-based systems.
Misconceptions
There is a common misconception that Virtualization is Cloud.
Virtualization is the underlying technology in a cloud infrastructure and although it was still in its infancy when cloud computing was first established, the momentum has gathered with more players in this space, unlocking the powerful and full potential of cloud computing.
Cloud computing is not virtualization, outsourcing, nor is it a pay-as-you-go business model. It is an infrastructure model with fundamental changes on how an entire IT stack is delivered.
Summary
Cloud computing is the current technology model being adopted with many more organizations and developers that will follow.
With cloud-service providers identifying their challenges, they are able to address issues (like retaining specialist IT skills, business planning, and CapEx and operating costs) and provide best approaches to those migrating to a cloud environment.
Factors around data governance and security are very important aspects that require standards be in place to avoid compromising data and system integrity.
Today, cloud computing plays a large part in our everyday lives where we benefit from software interoperability and the sharing of resources and information. Cloud technologies are improving with more high-speed connections to cloud content and less latency.
For the long-term, its predicted that most organizations and individuals will be living in the cloud by 2020.
- Difference between a Server and Database - November 2, 2017
- Difference between a Managed and Unmanaged Switch - October 24, 2017
- Difference between Desktop and Laptop - October 20, 2017
Search DifferenceBetween.net :
Email This Post : If you like this article or our site. Please spread the word. Share it with your friends/family.
Leave a Response
References :
[0][i] http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf
[1][ii] https://www.salesforce.com/
[2][iii] https://aws.amazon.com/
[3][iv] https://cloud.google.com/appengine/
[4][v] https://www.heroku.com/
[5][vi] https://marketplace.computenext.com/providers/navisite.html
[6][vii] https://www.vmware.com/
[7][viii] https://hyperv.veeam.com/blog/what-is-hyper-v-technology/
[8]https://stackoverflow.com/questions/38130453/difference-between-bare-metal-hypervisor-based-and-host-virtualization-types