Unit 4
Unit 4
“As 0f now, computer networks are still in their infancy, but as they grow up and
become sophisticated, we will probably see the spread of ‘computer utilities’ which,
like present electric and telephone utilities, will service individual homes and offices
across the
country.”
Resources are made available through the Internet and offered on a pay-per-use basis
from cloud computing vendors.
This principle finds several practical applications and then gives different images of cloud
computing to different people.
Cloud computing turns IT services into utilities - Such a delivery model is made possible by
the effective composition of several technologies such as Web 2.0, Service orientation and
Virtualization.
Vision of Cloud
computing
Defining a
Cloud
Cloud computing is the delivery of computing services—including servers,
storage, databases, networking, software, analytics, and intelligence—over the
Internet
(or)
Cloud computing refers to both the applications delivered as services over the
Internet and the hardware and system software in the datacenters that provide
those services .
Such clouds are appealing to users The use of cloud-based in-house It is partially composed of public
because they allow users to quickly solutions is also driven by the need cloud resources and privately
leverage compute, storage, and to keep confidential information owned infrastructures.
application services. within an organization’s premises. Usage: stakeholders to start
exploring the possibilities offered
by cloud computing.
In this environment, users’ data and Institutions such as governments Community clouds are a recent
applications are deployed on cloud and banks that have high security, variation on the private cloud model
datacenters on the vendor’s privacy, and regulatory concerns that provide a complete cloud
premises. prefer to build and use their own solution for specific business
private or enterprise clouds. communities.
Need for Cloud
Computing
Some practical scenarios to understand the need for Cloud Computing,
6. Organizational aspects
Deployment Models: Types
of cloud - Public cloud -
Private cloud - Hybrid cloud
Deployment Models
• For example:
1. Amazon EC2 is a public cloud that provides infrastructure as a service
• For example, Amazon Web Services has datacenters installed in the United
States, Europe, Singapore, and Australia; they allow their customers to choose
between three different regions
The reference model for cloud computing is an abstract model that characterizes and
IaaS, PaaS and SaaS are the three most popular types of cloud service offerings.
The cloud computing reference model
Infrastructure-as-a-Service
⮚ Deliver infrastructure on demand in the form of virtual hardware, storage, and
networking.
⮚Virtual hardware is utilized to provide compute on demand in the form of virtual machine
instances.
⮚These are created at user request on the provider infrastructure so that users are given
with necessary tools or interfaces to configure the software stack installed in the virtual
machine.
⮚Virtual storage is delivered in the form of raw disk space or object store.
Infrastructure-as-a-Service
IaaS Characteristics:
Resources are available as a service
Cost varies depending on consumption
Services are highly scalable
Multiple users on a single piece of hardware
Organization retain complete control of the infrastructure
Dynamic and flexible
When to Use IaaS
Startups and small companies may prefer IaaS to avoid spending time and money on
purchasing and creating hardware and software.
Larger companies may prefer to retain complete control over their applications and
infrastructure, but they want to purchase only what they actually consume or need.
Companies experiencing rapid growth like the scalability of IaaS, and they can change out
specific hardware and software easily as their needs evolve.
Platform-as-a-Service
⮚PaaS, or platform as a service, is on-demand access to a complete, ready-to-use, cloud-
hosted platform for developing, running, maintaining and managing applications.
⮚They deliver scalable and elastic runtime environments on demand and host the
execution of applications.
⮚These services are backed by a core middleware platform that is responsible for creating
the abstract environment where applications are deployed and executed.
⮚It is the responsibility of the service provider to provide scalability and to manage fault
tolerance, while users are requested to focus on the logic of the application developed by
leveraging the provider’s APIs and libraries.
⮚This approach increases the level of abstraction at which cloud computing is leveraged
but also constrains the user in a more controlled environment.
Platform-as-a-Service
⮚Users pay a monthly or annual fee to use a complete application from within a web
browser, desktop client or mobile app.
⮚The application and all of the infrastructure required to deliver it - servers, storage,
networking, middleware, application software, data storage - are hosted and managed by
the SaaS vendor.
⮚The vendor manages all upgrades and patches to the software, usually invisibly to
customers.
⮚The vendor ensures a level of availability, performance and security as part of a Service
Level Agreement (SLA). Customers can add more users and data storage on demand at
additional cost.
Software -as-a-Service
SaaS Characteristics:
Managed from a central location
Hosted on a remote server
Accessible over the internet
Users not responsible for hardware or software updates
When to Use SaaS:
Startups or small companies that need to launch e-commerce quickly and don’t have
time for server issues or software
Short-term projects that require quick, easy, and affordable collaboration
Applications that aren’t needed too often, such as tax software
Applications that need both web and mobile access
Some examples:
Gmail
Google drive
Dropbox
WhatsApp
Summary
⮚IaaS solutions are sought by users who want to leverage cloud computing from building
dynamically scalable computing systems requiring a specific software stack.
⮚IaaS services are therefore used to develop scalable Websites or for background processing.
⮚PaaS solutions provide scalable programming platforms for developing applications and are
more appropriate when new systems have to be developed.
⮚SaaS solutions target mostly end users who want to benefit from the elastic scalability of the
cloud without doing any software development, installation, configuration, and maintenance.
⮚This solution is appropriate when there are existing SaaS services that fit users needs (such as
email, document management, CRM, etc.) and a minimum level of customization is needed.