Unit 1 (1)
Unit 1 (1)
• Cloud computing provides the facility to provision virtual hardware, runtime environment and services to a
person having money.
• These all things can be used as long as they are needed by the user.
• The whole collection of computing system is transformed into collection of utilities, which can be provisioned
and composed together to deploy systems in hours rather than days, with no maintenance cost.
• The long term vision of a cloud computing is that IT services are traded as utilities in an open market without
technological and legal barriers.
• In the future, we can imagine that it will be possible to find the solution that matches with our requirements by
simply entering out request in a global digital market that trades with cloud computing services.
• The existence of such market will enable the automation of discovery process and its integration into its
existing software systems.
• Due to the existence of a global platform for trading cloud services will also help service providers to
potentially increase their revenue.
• A cloud provider can also become a consumer of a competition service in order to fulfill its promises to
customers.
• In the near future we can imagine a solution that suits our needs by simply applying our application to the
global digital market for cloud computing services.
Cloud Reference Model
• The reference model for cloud computing is an abstract model that
characterizes and standardizes a cloud computing environment by
partitioning it into abstraction layers and cross-layer functions.
• The Cloud Computing Reference Model provides a conceptual
framework for understanding and categorizing the various
components and functions of cloud computing.
• It helps define the relationships and interactions between different
cloud computing elements.
• The most widely recognized and used reference model is the NIST
(National Institute of Standards and Technology) Cloud Computing
Reference Architecture.
The Three Major Cloud Service
Models
Cloud computing services can be
broken down into three models
that stack on top of one another:
• Software as a Service (SaaS)
• Platform as a Service (PaaS)
• Infrastructure as a Service (IaaS)
• These abstraction layers can also be considered a tiered architecture,
where services from one layer can be combined with services from
another,
• for example, SaaS can supply infrastructure to create services from a
higher layer. Let us have a look at the layers of cloud computing
reference model.
• https://www.youtube.com/watch?v=Pasd54Pkkrk
1. SaaS
• Software as a Service (SaaS) is a form of application delivery that relieves
users of the burden of software maintenance while making development
and testing easier for service providers.
• The cloud delivery model's top layer is where applications are located.
End customers get access to the services this tier offers via web portals.
• Because online software services provide the same functionality as
locally installed computer programs, consumers (users) are rapidly
switching from them.
• Today, ILMS and other application software can be accessed via the web
as a service.
• In terms of data access, collaboration, editing, storage, and document
sharing, SaaS is unquestionably a crucial service.
• Email service in a web browser is the most well-known and widely
used example of SaaS, but SaaS applications are becoming more
cooperative and advanced.
Features of SaaS are as follows:
• The cloud consumer has full control over all the cloud services.
• The provider has full control over software applications-based
services.
• The cloud provider has partial control over the implementation of
cloud services.
• The consumer has limited control over the implementation of these
cloud services.
2. PaaS
• Platform as a Service is a strategy that offers a high level of
abstraction to make a cloud readily programmable in addition to
infrastructure-oriented clouds that offer basic compute and storage
capabilities (PaaS).
• Developers can construct and deploy apps on a cloud platform
without necessarily needing to know how many processors or how
much memory their applications would use.
• A PaaS offering that provides a scalable environment for creating and
hosting web applications is Google App Engine, for instance.
Features of PaaS layer are as follows:
• The cloud provider has entire rights or control over the provision of
cloud services to consumers.
• The cloud consumer has selective control based on the resources they
need or have opted for on the application server, database, or
middleware.
• Consumers get environments in which they can develop their
applications or databases. These environments are usually very visual
and very easy to use.
• Provides options for scalability and security of the user’s resources.
• Services to create workflows and websites.
• Services to connect users’ cloud platforms to other external platforms.
3. IaaS
• Infrastructure as a Service (IaaS) offers storage and computer
resources that developers and IT organizations use to deliver
custom/business solutions.
• IaaS delivers computer hardware (servers, networking technology,
storage, and data center space) as a service. It may also include the
delivery of OS and virtualization technology to manage the resources.
• Here, the more important point is that IaaS customers rent computing
resources instead of buying and installing them in their data centers.
• The service is typically paid for on a usage basis. The service may
include dynamic scaling so that if the customers need more resources
than expected, they can get them immediately.
The control of the IaaS layer is as follows:
• The consumer has full/partial control over the infrastructure of the
cloud, servers, and databases.
• The consumer has control over the Virtual Machines' implementation
and maintenance.
• The consumer has a choice of already installed VM machines with
pre-installed Operating systems.
• The cloud provider has full control over the data centers and the
other hardware involved in them.
• It has the ability to scale resources based on the usage of users.
• It can also copy data worldwide so that data can be accessed from
anywhere in the world as soon as possible.
But Why Choose The Cloud?
• 1. It's on-demand, like Netflix!
• 2. It's cheaper
• 3. It's flexible
Where Can I Access Cloud
Computing?
There are many cloud computing services available to individual users,
but the "big three" are:
• Amazon Web Services (AWS)
• Google Cloud Platform (GCP)
• Microsoft Azure
The service you choose will depend on:
• The scale of your business
• Your business structure
• How much of the work you want to outsource
Cloud computing
• “Cloud is a parallel and distributed computing system consisting of a
collection of inter-connected and virtualized computers that are
dynamically provisioned and presented as one or more unified
computing resources based on service-level agreements (SLA)
established through negotiation between the service provider and
consumers.”
• Parallel computing requires one computer with multiple
processors(multi core)
• Distributed computing, involves several autonomous
(and often geographically separate and/or distant)
computer systems working on divided tasks
Cloud Computing
• Virtualization is software that makes computing environments independent of
physical infrastructure
• Cloud computing is a service that delivers shared computing resources (software
and/or data) on demand via the Internet.
• A Service Level Agreement (SLA) is an outsourcing and technology vendor
contract that outlines a level of service that a supplier promises to deliver to the
customer. It outlines metrics such as uptime, delivery time, response time, and
resolution time. An SLA also details the course of action when requirements are
not met, such as additional support or pricing discounts.
• Customer-level SLA - is an agreement that covers all of the services used by a
customer, like specific details of services, provisions of service availability, an
outline of responsibilities, escalation procedures, and terms for cancellation.
• Service-level SLA-is a contract that details an identical service offered to multiple
customers.
Cloud Computing
• Cloud computing services are divided into three classes, according to
the abstraction level of the capability provided and the service model of
providers, namely:
• Infrastructure as a Service(IaaS)
• Platform as a Service, and (PaaS)
• Software as a Service(SaaS)
• These abstraction levels can also be viewed as a layered architecture
where services of a higher layer can be composed from services of the
underlying layer
Cloud Computing stack
Infrastructure as a Service (IaaS)
• Virtualized resources such as computation, storage, and communication (network
bandwidth) are provisioned on demand
• It enables on-demand provisioning of servers running several choices of operating
systems and a customized software stack.
• Infrastructure services are considered to be the bottom layer of cloud computing systems.
• Ex: Amazon Web Services (AWS) mainly offers IaaS. The EC2(Elastic Compute Cloud)
service means offering Virtual machines with a software stack that can be customized
similar to how an ordinary physical server would be customized.
• Users are given privileges to perform numerous activities to the server, such as:
• starting and stopping it
• customizing it by installing software packages
• attaching virtual disks to it
• configuring access permissions and firewalls rules
• Other examples are Microsoft Azure and Google Compute Engine
Infrastructure as a Service (IaaS)
• Compute resource - A Virtual Machine (VM) is a compute resource that uses
software instead of a physical computer to run programs and deploy apps. One or
more virtual “guest” machines run on a physical “host” machine.
• Data Storage -Cloud Storage is a service that allows to save data on offsite storage
system managed by third-party and is made accessible by a web services API. The
Storage Devices are classified as Block Storage Devices and File Storage Devices.
Block Storage Devices offer raw storage to the clients.
• File Storage Devices offer storage to clients in the form of files, maintaining its own
file system( Network Attached Storage (NAS).)
• Unmanaged cloud storage means the storage is preconfigured for the customer.
The customer can neither format, nor install his own file system or change drive
properties.
• Managed cloud storage offers online storage space on-demand. The managed
cloud storage system appears to the user to be a raw disk that the user can
partition and format.
Infrastructure as a Service (IaaS)
Firewall
• A Firewall is a network security device that monitors and filters incoming and
outgoing network traffic based on an organization's previously established
security policies and block malicious traffic.
Load Balancer
• A load balancer is a device that distributes network or application traffic across a
number of servers. Load balancers are used to increase capacity (concurrent
users) and reliability of applications, manage traffic spikes and prevent spikes on
a single server, minimize user request response time.
• Elastic Load Balancing supports the following types of load balancers: Application
Load Balancers, and Network Load Balancers.
Network Bandwidth
• Bandwidth is the amount of data transferred to and from your cloud server over a
given period, such as a month. Cloud server bandwidth is measured in uploads
and downloads. Upload is the transfer of data to the cloud server, and download
retrieves data from a cloud server. It is measured in Terabytes.
Infrastructure as a Service (IaaS)
• Managing physical and virtual resources, namely servers, storage, and
networks by Cloud providers is done using the main access and
management tool in IaaS is the Virtual Infrastructure Manager (VIM).
• VIM aggregates resources from multiple computers, presenting a
uniform view to user and applications.
• Network Functions Virtualization (NFV) is a way to virtualize network
services, such as routers, firewalls, and load balancers. These services are
packaged as virtual machines (VMs) on commodity hardware.
• VIM allows for the orchestration of the allocation, upgrade, release, and
reclamation of Network Function Virtualization Infrastructure (NFVI)
resources and the optimization of their use.
Infrastructure as a Service (IaaS)
• OpenStack is a free, open standard cloud computing platform.
• It is mostly deployed as Infrastructure-as-a-Service (IaaS) in both public and private
clouds where virtual servers and other resources are made available to users.
• The software platform consists of interrelated components that control diverse,
multi-vendor hardware pools of processing, storage, and networking resources
throughout a data center.
• Users manage it either through a web-based dashboard, through command-line
tools.
• Eucalyptus is an open source software platform for implementing Infrastructure as a
Service (IaaS) in a private or hybrid cloud computing environment.
• The Eucalyptus cloud platform pools together existing virtualized infrastructure to
create cloud resources for infrastructure as a service, network as a
service and storage as a service. The name Eucalyptus is an acronym for Elastic
Utility Computing Architecture for Linking Your Programs To Useful Systems.
Platform as a Service (PaaS)
• Services are offered at a higher level of abstraction to make a cloud easily
programmable
• A cloud platform offers an environment on which developers create and
deploy applications
• Multiple programming models and specialized services like data access,
authentication and payments are offered as building blocks to new
applications.
• (Authentication is the process of verifying who a user is, while
Authorization is the process of verifying what they have access to)
• Examples: AWS Elastic Beanstalk, Google App Engine, and Adobe
Commerce
• Google AppEngine offers a scalable environment for developing and
hosting Web applications, which should be written in specific
programming languages such as Python or Java
Platform as a Service (PaaS)
Programming Languages
• PaaS providers provide various programming languages for the developers to
develop the applications. Some popular programming languages provided by
PaaS providers are Java, PHP, Ruby, Perl, and Go.
Mashup Editors
• mash-up’ refers to websites that weave data from different sources into new Web services.
Frameworks
• PaaS providers provide application frameworks to easily understand the
application development. Some popular application frameworks provided by PaaS
providers are Node.js, Drupal, Joomla, WordPress, Spring, Play, Rack, and Zend.
Structured data
• PaaS providers provide various databases such as ClearDB, PostgreSQL,
MongoDB, and Redis to communicate with the applications.
Cloud Development Environment
• It is the Access and Management tool. PaaS provides various other tools that are
required to develop, test, and deploy the applications.
Software as a Service (SaaS)
Public Cloud
• Public cloud is open to all to store and access information via the Internet
using the pay-per-usage method.
• In public cloud, computing resources are managed and operated by the
Cloud Service Provider (CSP).
• Characteristics of public cloud are:
• on-demand computing and self-service provisioning;
• resource pooling;
• scalability and rapid elasticity;
• pay-per-use pricing;
• measured service;
• resiliency and availability;
• security;
• broad network access.
• Example: Google Workspace, Amazon Web Services (AWS), Dropbox, and Microsoft
offerings like Microsoft 365 and Azure, as well as streaming services like Netflix.
Types of Clouds – Public cloud
Private Cloud
• Private cloud is also known as an internal cloud or corporate cloud.
• It is used by organizations to build and manage their own data centers
internally or by the third party.
• A private cloud is a dedicated environment reserved solely for a
single business entity or organization.
• The cloud infrastructure may be managed by the organization or a third party
cloud service provider.
• In a private cloud, the services and infrastructure are privately managed and
maintained.
• It can be deployed using Opensource tools such as Openstack and Eucalyptus.
• Based on the location and management, National Institute of Standards and
Technology (NIST) divide private cloud into the following two parts-
• On-premise private cloud
• Outsourced private cloud
Types of Clouds – Private cloud
Trust
• Trust toward providers ensures the desired level of privacy for applications
hosted in the cloud.
• Legal and regulatory issues are to be taken care of. When data are moved
into the Cloud, providers may choose to locate them anywhere The
physical location of data centers determines the set of laws that can be
applied to the management of data.
• For example, specific cryptography techniques could not be used because
they are not allowed in some countries.
• Similarly, country laws can impose that sensitive data, such as patient
health records, are to be stored within national borders.
Challenges of Cloud Computing
Subscription-based pricing
• In this model, the customers pay periodically by paying a subscription fee for using
cloud services.
How are the costs of cloud services
decided?
Cost of Current data center
• It is obvious that data centers provide cloud services. The data center determines its
costs based on the infrastructure and costs of a cloud of services, along with their
service fees.
• If you have to set up your own data center, you need to calculate the basic
infrastructure costs, maintenance contracts, software licenses, cloud space, and
taxes.
Migration Costs
• If you are availing of one data service provider, but over time, switch to another, you
will have to pay specific migration fees. This also includes the integration and testing
of your data.
What to avoid while using cloud
computing?
Though cloud computing is the easiest way to store your data to run
your business, there are a few loopholes to avoid while availing of this
service.
• Cloud Computing service should be compatible with your business
and working style.
• An outdated cloud computing service is a bane for you.
• Avoid unnecessary services that are simply becoming a burden on
your pockets.
Comparison between various cloud service providers.
https://recro.io/blog/top-5-cloud-service-providers/
Comparison between service
providers
• https://recro.io/blog/top-5-cloud-service-providers/
Review Questions
1. Define Cloud Computing.
2. Write purpose of virtualization in cloud computing.
3. Define Service Level Agreement.
4. List any three real time examples of services offered as SaaS.
5. What is virtual infrastructure Manager?
6. Define EC2.
7. What is AWS?
8. Prepare a small note on cloud computing, Demonstrate the characteristics of cloud computing.
9. Demonstrate With a neat diagram, cloud computing reference model in detail.
10. Demonstrate the Pro's and Con's in comparison of public cloud vs. private cloud.
11. What is IaaS in cloud Computing? Explain the different services offered by IaaS.
12. Write a brief notes on the compute and storage services offered by AWS.
13. Write a short note on the following
• Benefits and challenges of cloud computing.
• Pro's and Con's in comparison of public cloud vs. private cloud.
14. Explain cloud deployment models in detail with suitable examples.
15. What is the role of virtualization in cloud computing?
16. Demonstrate the cloud computing reference model in detail with a neat diagram.
17. Write a brief notes on compute and storage services offered by AWS.
18. Explain three major cloud services offered by cloud computing.