Final S1
Final S1
Challenges:
Server hardware failure
Operating system failure Hardware
INTRODUCTION TO CLOUD COMPUTING
Traditional Data Centre - Schools9
Challenges:
Increase in the web traffic on exam
result days
Possible Solution:
Purchase of large servers to handle
the web traffic on result days.
But, is it an efficient solution?
INTRODUCTION TO CLOUD COMPUTING
Data Centre
Data Centre
This is a physical facility that companies use to house hardware components that store data and applications.
Key Components:
Switches
Routers
Firewalls
Storage systems
Servers
Application-delivery controllers
Traditional Data
Centres
Colocation On-Premises
Third-Part
Organisation Organisation
y
In some cases, the network service provider manages the networking between the data centre and
the organisation.
● Example: Email server (on-premise data centre or a colocation data centre)
INTRODUCTION TO CLOUD COMPUTING
Problems With Traditional Data Centres
01 Pay-as-you-go / economical
02 On-demand self-service
03 Access control
04 Measured service
05 Resource pooling
INTRODUCTION TO CLOUD COMPUTING
Features of Cloud Computing
06 Easy maintenance
07 Automated service
08 High availability
09 Resilience
10 Fault tolerance
INTRODUCTION TO CLOUD COMPUTING
Features of Cloud Computing
11 Scalability
12 Rapid elasticity
13 Security
15 Easy migration
INTRODUCTION TO CLOUD COMPUTING
Traditional Data Centre (On-Premise Systems) vs Cloud-Based Data Centre
Grid Resilience
Computing Computing
Virtual Utility
Cloud Computing
Computing Computing
Grid Computing:
● A group of computers work together as a single system, enabling increased capability
● Higher scalability
● Rapid elasticity
Virtual Computing:
● Allows users to ‘virtually’ use systems that are geographically located at another place
● Resource pooling
Resilience Computing:
● Ensures other systems remain serviceable at all times
● Ensures availability despite failure of a part
● Improves resilience
INTRODUCTION TO CLOUD COMPUTING
Enabling Technologies - Feature Mapping
Utility Computing:
● Computing and storage resources provisioned as ‘utility’
● Specific usage charges
● Pay-as-you-go
● Measured service model
● Cost effective
Data Centre Technology:
● Setting up, configuring and maintaining data centres
● Automated service
● Easy maintenance
● Easy migration
Multitenancy Technology:
● Multiple users utilise the same resources
● Ensure on-demand self-service
● Broad network access
INTRODUCTION TO CLOUD COMPUTING
Evolution of Cloud Computing
Time Sharing Virtual private Cloud metaphor for Commercialisation of IoT, Fog and other
network (VPN) virtualised services Cloud computing
paradigms
INTRODUCTION TO CLOUD COMPUTING
Revisiting Cloud Computing
Ubiquitous, Convenient,
On-demand
Servers
Minimal managing efforts
Network
Application
Storage
Services
Rapidly provisioned
INTRODUCTION TO CLOUD COMPUTING
NIST Definition
Internet
Application
Storage
CLOUD COMPUTING ARCHITECTURE
Client
Client:
Internet
End-user of the
application
Provides interface to
access the application
Application
Includes applications
required to access cloud
Storage
CLOUD COMPUTING ARCHITECTURE
Application
Storage
CLOUD COMPUTING ARCHITECTURE
Service
Service Layer:
Client Front end
Handles services
required for installing,
configuring and
Internet managing a basic
application.
Example:
● Networking
Application
● Instances
● Operating system
Management Service Security Back end ● Storage
● Security
Storage
CLOUD COMPUTING ARCHITECTURE
Storage
Storage Layer
Client Front end Functionality
● It stores any type of
unlimited data in the
Internet cloud environment
from different
sources, such as
company data or web
portals.
Application
Characteristics:
● Secure storage
Storage
CLOUD COMPUTING ARCHITECTURE
Management
Storage
CLOUD COMPUTING ARCHITECTURE
Security
Storage
INTRODUCTION TO CLOUD COMPUTING
Cloud Service Providers - Examples
YouTube
Microsoft OneDrive
Dropbox
Slack
Gmail
Google Drive
Cloud Service Models
CLOUD SERVICE MODELS
Traditional IT On-Premise Solution
Traditional IT
Application
Data
Traditional IT services requires you to manage
Runtime everything related to your application.
You manage
Virtualization
● The services shown in the diagram on the left
must have to be managed by the admin or
Servers the developer of the application.
Storage
Networking
CLOUD SERVICE MODELS
Types
Cloud Service
Models
Infrastructure
(as a service) It provides high-level APIs to implement low-level applications.
It provisions hardware/infrastructure requirements to customers.
Application
It enables platform virtualisation for users to support software
You manage
Data development.
Servers ● Security
● Backup
Storage
Examples: Amazon Web Services (AWS), Microsoft Azure, Google
Networking Compute Platform (GCP)
CLOUD SERVICE MODELS
Platform-as-a-Service (PaaS)
Platform
(as a service)
manage
Middleware
Software
(as a service)
Application
Data
The application, security, access, etc. are all
Delivered as a service
Runtime
managed by the cloud service provider.
Middleware The users do not need to install any
Operating system programs/applications.
Virtualization Examples: Gmail, Dropbox, Microsoft OneDrive,
Cisco Webex, GoToMeeting
Servers
Storage
Networking
CLOUD SERVICE MODELS
IaaS vs PaaS vs SaaS
You manage
Application Application Application Application
You manage
Data Data Data Data
Delivered as a service
Runtime Runtime Runtime Runtime
You manage
Delivered as a service
Middleware Delivered as a service Middleware Middleware Middleware
Cloud Deployment
Models
Accessibility: Companies
Storage: Dedicated infrastructure
Advantages:
● High privacy and security
● High reliability
● Bespoke (customisable)
Disadvantages: Expensive (high costs)
COMMUNITY CLOUD
Low latency
Location awareness
Inclusion of a considerable number of devices
Widespread topographical dispersal
Heterogeneity
Mobility
FOG COMPUTING ARCHITECTURE
Cloud gateway
Fog layer
Access Point
IoT layer
Edge
EXAMPLES OF FOG COMPUTING APPLICATIONS
Goal Enhance proficiency and execution of process that Give a request of greatness change in the
should be transported to the cloud for handling, practical, powerful provisioning of IT
investigation and storage administrations
Application examples Visualisation and simple analytics Big data analytics, Graphical dashboards
How long data is stored? Short duration: perhaps hours, days, or weeks Months or years
Support of operating system (OS) Hypervisor virtualisation A hypervisor (VMM) on which multiple OSs run
Interoperability Interoperability between heterogeneous resources Web services (SOAP and REST)
Cloud Support for Blockchain,
Artificial Intelligence, Analytics,
Software Development
CLOUD SUPPORT FOR BLOCKCHAIN
Blockchain is a collection of distributed ledgers for recording and tracking the value of
a commodity.
When a new data is added, a block with a proof of work (PoW) is created.
● PoW is a hash value.
● Ledgers/transactions are unchangeable, unless PoWs of the preceding blocks
are changed.
Miners: They mine blocks, generate and validate PoWs.
● PoW is completed.
● New block is added to the network.
● Rest of the network validity is verified and added to the blockchain.
Example: Cloud domain and other real-time data security systems for ensured
data protection.
‘TRACK AND TRACE’ USE CASE OF BLOCKCHAIN ON AWS/CLOUD
Challenges Benefits
Logistics: Manual transport updates not Logistics: Automated real time transport
in real-time updates
‘TRACK AND TRACE’ USE CASE OF BLOCKCHAIN ON AWS/CLOUD
Challenges Benefits
Use Cases:
Continuous Integration:
● It is a DevOps software development practice where code
changes are merged into a central repository, after which
automated builds and tests are run.
Continuous Delivery:
● It is a DevOps software development practice where code
changes are automatically prepped. After the build stage, the
code changes are deployed to a testing and production unit.
CLOUD SUPPORT FOR SOFTWARE DEVELOPMENT
Use Cases:
Infrastructure as Code:
● Models the applications and infrastructure as code,
● Automates the provisioning of infrastructure services, and
● Eliminates the need for manual updates for error-prone
infrastructure.
Monitoring and Logging:
● Monitors metrics and logs by observing the applications and
infrastructure performance for better experience.
● Captures, categorises and analyses the data to understand the
impact of code changes.
COMMON CLOUD SERVICES FOR SOFTWARE DEVELOPMENT
Amazon Corretto
AWS Cloud9
AWS CodeBuild
AWS CodeArtifact
AWS CodeDeploy
AWS CodePipeline
AWS CodeStar
ACTIVITY: DEVELOPING AN APPLICATION ON AWS DYNAMODB