Introduction To Cloud Computing
Introduction To Cloud Computing
Cloud Computing
The Outline
2 Its history
3
The emergence of Cloud
Computing
5 Its architecture
• Lack of flexibility
3
The History of Cloud Computing
• There was Client/Server computing which is basically a centralized storage in which all the
software applications, all the data and all the controls are resided on the server side.
• At around in 1961, John MacCharty suggested in a speech at MIT that computing can be sold like
a utility, just like a water or electricity. It was a brilliant idea, but like all brilliant ideas, it was
ahead if its time, as for the next few decades, despite interest in the model, the technology
4
The History of Cloud Computing
• In 1999, Salesforce.com started delivering applications to users using a simple website. The
applications were delivered to enterprises over the Internet, and this way the dream of computing
• In 2002, Amazon started Amazon Web Services, providing services like storage, computation and
even human intelligence. However, only starting with the launch of the Elastic Compute Cloud in
• In 2009, Google Apps also started to provide cloud computing enterprise applications.
• In 2009, Microsoft launched Windows Azure, and companies like Oracle and HP have all joined
the game. This proves that today, cloud computing has become mainstream.
5
The emergence of Cloud computing
• No server space was required. Nothing must be set in terms of infrastructure.
• No experts are required to perform hardware and software maintenance as it is done by the
cloud provider.
6
What is Cloud computing?
• Cloud computing is the delivery of on-demand virtualized resources (such as server, database
• It gives the ability to build, design and manage applications on the cloud platform.
7
What is Cloud computing?
The term cloud refers to a network or the internet. It is a technology that uses remote servers on
the internet to store, manage, and access data online rather than local drives. The data can be
8
Operations performed on the Cloud Computing?
Here are the following operations that can be performed on the cloud platforms:
• Analysis of data
9
Benefits of Cloud computing?
• They are easily upgraded: sometimes the upgrades are managed by the providers themselves
• They are cost efficient: they are on-demand services (you pay as you consume).
10
Instances of the Cloud: on-demand services
11
Cloud Computing Architecture
Cloud computing technology is used by both small and large organizations to store the information
in cloud and access it from anywhere at anytime using the internet connection.
12
Cloud Computing Architecture
13
Front End Architecture
• Front end platform: client-side interfaces, devices and applications required to access/interact
• It can be a Web browser (firefox, chrome,IE), local networks, common web apps, mobile devices,
tablets.
• For ex in case of Gmail, the front end architecture is web application which allows users to access
14
Front End Architecture
• Front end can be divided in three parts:
• The software part: this includes the software that allows cloud computing software to be run
from the user’s side. Generally, the front-end software architecture generally takes the form
• User interface: The user interface is what the end user directly interacts with in order to
perform tasks on the cloud. This includes for example the interface to send and receive
emails on Gmail. However, in some cases, the UI and software architecture are rolled into
one.
• Client device/network: this includes PCs, smartphones or other input devices. They are not
• It includes components such as hardware, storage, security mechanism, servers, traffic control
mechanisms.
• Application: it includes the server side of the application offered to end users. It coordinates the
• Service: what type of service the client would like to access according to the business
• Cloud runtime: this provides the execution and runtime environnent to the virtual machines. It is
where the service actually runs. It is similar to an operating system on the cloud with
technologies such as virtualisation, allowing multiple runtimes to exist on the same server.
17
Back End Architecture components
• Storage: this provides a huge amount of storage capacity in the cloud to store and manage data.
It is where all the data required to operate the cloud software resides.
• Infrastructure: it is the engine powering all cloud software services. It includes hardware and
software components like servers, storage, network devices, virtualisation and other software
used to support the cloud computing model. This includes computing components such as the
Central Processing Unit (CPU), Graphics Processing Unit (GPU), motherboard and all the other
components required for the system to function smoothly, like network cards and additional
18
Back End Architecture components
• Management:
Its main role is to manage components like application, service, runtime cloud, storage,
infrastructure, and other security issues in the backend and coordinate between them.
The Management software is in charge of allocating specific resources for certain tasks. While
physical resources are abundant in a public cloud solution, ineffective management can
cause bottlenecks. This makes management software essential to the ‘smooth’ functioning of
a cloud environment.
between the back end and front end. Middleware is used to divide system resources and
• Virtual firewalls.
• Preventing data loss and redundancy mechanisms through duplicating the system virtually,
storage backups...
• …
• This is to keep the system running even when it is under potential attacks.
• Internet: it is a medium through which front end and back end can interact and communicate
with each other
20
More about the Back End…
Hardware
A cloud network is made up of a variety of physical hardware that can be located at multiple
geographical locations.
It includes networking equipment, like switches, routers, firewalls, and load balancers, storage
arrays, backup devices, and servers. Virtualization connects the servers together, dividing and
21
More about the Back End
Storage (con’t)
Within a single datacenter, data may be stored across many disks in a single storage array. Storage
management ensures data is correctly being backed up, that outdated backups are removed
regularly, and that data is indexed for retrieval in case any storage component fails.
Virtualization abstracts storage space from hardware systems so that it can be accessed by users
as cloud storage.
When storage is turned into a cloud resource, you can add or remove drives, repurpose hardware,
and respond to change without manually provisioning separate storage servers for every new
initiative.
22
More about the Back End
Network
• The network is composed of physical wires, switches, routers, and other equipment.
• Virtual networks are created on top of these physical resources. A typical cloud network
configuration is composed of multiple subnetworks, each with varying levels of visibility. The
cloud permits the creation of virtual local area networks (VLANs) and assigns static and/or
• The cloud resources are delivered to users over a network, such as the internet or an intranet, so
23
More about the Back End
Virtualization
Virtualization is a technology that separates IT services and functions from hardware. Software
called a hypervisor sits on top of physical hardware and abstracts the machine's resources, such as
memory, computing power, and storage. Once these virtual resources are allocated into centralized
24
More about the Back End
Virtualization (con’t)
25
Accelerators TPU
All cloud service providers provide Accelerators such as Google Tensor Processing Unit (TPU) which
is available to Google Cloud Platform customers to run AI tasks that are complicated and models
26
Cloud Computing Models
27
Cloud Service Models
3 types of Cloud Service Models are offered by the different providers:
28
Infrastructure as a Service (IaaS)
• It is also known as cloud infrastructure services. It is one of the layers of the cloud computing
processing, storage, virtual machines, and other resources. Customers access these resources on
• IaaS cloud computing platform layer eliminates the need for every organization to maintain the IT
infrastructure.
29
IaaS (con’t)
IaaS is offered in three models: public, private, and hybrid cloud:
• The private cloud implies that the infrastructure resides at the customer-premise.
• In the case of public cloud, the infrastructure is located at the cloud computing platform vendor's
data center.
• The hybrid cloud is a combination of the two in which the customer selects the best of both public
30
IaaS services
31
IaaS services (con’t)
IaaS provider provides the following services:
• Compute: Computing as a Service includes virtual central processing units and virtual main
• Network: Network as a Service (NaaS) provides networking components such as routers, switches,
32
IaaS: advantages
Its main advantages are:
• Shared infrastructure: IaaS allows multiple users to share the same physical infrastructure.
• Web access to the resources: IaaS allows IT users to access resources over the internet.
• Pay-as-per-use model: IaaS providers provide services based on the pay-as-per-use basis. The
• Focus on the core business: IaaS providers focus on the organization's core business rather than
on IT infrastructure.
• On-demand scalability: On-demand scalability is one of the biggest advantages of IaaS. Using
IaaS, users do not worry about upgrading the software and troubleshooting the issues related to
hardware components. 33
IaaS: disadvantages
• Security: Security is one of the biggest issues in IaaS. Most of the IaaS providers are not able to
provide 100% security.
• Maintenance & Upgrade: Although IaaS service providers maintain the software, but they do not
upgrade the software for some organizations.
• Interoperability issues: It is difficult to migrate VM from one IaaS provider to the other, so the
customers might face problem related to vendor lock-in.
• Make sure that SLAs (Service Level Agreement) provide backups for data, hardware, network, and
application failures.
• The IaaS cloud computing platform vendor can get access to the companies’ sensitive data. So,
36
Platform as a Service (PaaS)
• This provides a runtime environment. It allows programmers to easily create, test, run, and deploy
web applications. You can purchase these applications from a cloud service provider on a pay-as-
per use basis and access them using the Internet connection.
• In PaaS, back end scalability is managed by the cloud service provider, so end- users do not need
• PaaS includes infrastructure (servers, storage, and networking) and platform (middleware,
development tools, database management systems, business intelligence, and more) to support
37
PaaS (con’t)
• PaaS providers provide the Programming languages, Application frameworks, Databases, and
Other tools:
38
PaaS Services
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.
Application 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.
Databases
• PaaS providers provide various databases such as ClearDB, PostgreSQL, MongoDB, and Redis to
communicate with the applications.
39
PaaS services advantages
Advantages of PaaS:
• Simplified Development: PaaS allows developers to focus on development and innovation without
worrying about infrastructure management.
• Lower risk: No need for up-front investment in hardware and software. Developers only need a
PC and an internet connection to start building applications.
• Prebuilt business functionality: Some PaaS vendors also provide already defined business
functionality so that users can avoid building everything from very scratch and hence can directly
start the projects only.
• Instant community: PaaS vendors frequently provide online communities where the developer
can get the ideas to share experiences and seek advice from others.
• Scalability: Applications deployed can scale from one to thousands of users without any changes
to the applications.
40
PaaS providers
41
PaaS disadvantages
Vendor lock-in: One has to write the applications according to the platform provided by the PaaS
Data Privacy: Corporate data, whether it can be critical or not, will be private or not, so if it is not
located within the walls of the company, there can be a risk in terms of privacy of data.
Integration with the rest of the systems applications: It may happen that some applications are local,
and some are in the cloud. So there will be chances of increased complexity when we want to use
42
Software as a Service (SaaS)
It is also known as cloud application services. Mostly, SaaS applications run directly through the web
browser means we do not require to download and install these applications.
Business Services - SaaS Provider provides various business services to start-up the business. The
SaaS business services include ERP (Enterprise Resource Planning), CRM (Customer Relationship
Management), billing, and sales.
Social Networks - As we all know, social networking sites are used by the general public, so social
networking service providers use SaaS for their convenience and handle the general public's
information.
Mail Services - To handle the unpredictable number of users and load on e-mail services, many e-
mail providers offering their services using SaaS.
43
Software as a Service (SaaS)
44
SaaS advantages
• SaaS is easy to buy: SaaS pricing is based on a monthly fee or annual fee subscription, so it allows
organizations to access business functionality at a low cost, which is less than licensed
applications.
• One to Many: SaaS services are offered as a one-to-many model means a single instance of the
• Less hardware required for SaaS: The software is hosted remotely, so organizations do not need
• Low maintenance required for SaaS: Software as a service removes the need for installation, set-
up, and daily maintenance for the organizations. SaaS vendors are pricing their applications
based on some usage parameters, such as a number of users using the application. 45
SaaS advantages (con’t)
• No special software or hardware versions required: All users will have the same version of the
software and typically access it through the web browser. SaaS reduces IT support costs by
outsourcing hardware and software maintenance and support to the IaaS provider.
• Multidevice support: SaaS services can be accessed from any device such as desktops, laptops,
• API Integration: SaaS services easily integrate with other software or services through standard
APIs.
• No client-side installation: SaaS services are accessed directly from the service provider using the
46
SaaS disadvantages
• Security: Actually, data is stored in the cloud, so security may be an issue for some users.
• Latency issue: Since data and applications are stored in the cloud at a variable distance from the
end-user, there is a possibility that there may be greater latency when interacting with the
application compared to local deployment. Therefore, the SaaS model is not suitable for
• Total Dependency on Internet: Without an internet connection, most SaaS applications are not
usable.
• Switching between SaaS vendors is difficult: Switching SaaS vendors involves the difficult and slow
task of transferring the very large data files over the internet and then converting and importing
48
cloud computing applications?
49