Cloud Computing by Matin
Cloud Computing by Matin
Cloud Computing
Iresh A. Dhotre
M.E. (Information Technology)
Ex-Faculty, Sinhgad College of Engineering,
Pune.
® ®
TECHNICAL
PUBLICATIONS
SINCE 1993 An Up-Thrust for Knowledge
(i)
Cloud Computing
Published by :
® ®
Amit Residency, Office No.1, 412, Shaniwar Peth,
TECHNICAL Pune - 411030, M.S. INDIA, Ph.: +91-020-24495496/97
PUBLICATIONS
SINCE 1993 An Up-Thrust for Knowledge Email : [email protected] Website : www.technicalpublications.org
Printer :
Yogiraj Printers & Binders
Sr.No. 10/1A,
Ghule Industrial Estate, Nanded Village Road,
Tal. - Haveli, Dist. - Pune - 411041.
ISBN 978-93-91567-40-8
Author
I. A. Dhotre
Dedicated to God.
(iii)
Syllabus
Cloud Computing - 310254(C)
Credit : Examination Scheme :
(iv)
Unit V Security in Cloud Computing
Risks in Cloud Computing : Risk Management, Enterprise-Wide Risk Management, Types of Risks
in Cloud Computing. Data Security in Cloud : Security Issues, Challenges, advantages,
Disadvantages, Cloud Digital persona and Data security, Content Level Security. Cloud Security
Services : Confidentiality, Integrity and Availability, Security Authorization Challenges in the Cloud,
Secure Cloud Software Requirements, Secure Cloud Software Testing. (Chapter - 5)
(v)
Table of Contents
Unit - I
Chapter - 1 Introduction to Cloud Computing (1 - 1) to (1 - 34)
1.1 Overview of Cloud Computing ........................................................................ 1 - 2
1.1.1 Cloud Components ....................................................................................... 1 - 3
1.2 Importance of Cloud Computing..................................................................... 1 - 4
1.2.1 Characteristics of Cloud Computing ............................................................ 1 - 5
1.2.2 Pros and Cons of Cloud Computing ............................................................. 1 - 5
1.2.3 Cloud Applications ....................................................................................... 1 - 6
1.3 Migrating into the Cloud ................................................................................. 1 - 7
1.4 Seven-step Model of Migration into a Cloud .................................................. 1 - 9
1.5 Trends in Computing ..................................................................................... 1 - 10
1.6 Cloud Service Models .................................................................................... 1 - 11
1.6.1 Software as a Service (SaaS) ...................................................................... 1 - 12
1.6.2 Platform as a Service (PaaS)....................................................................... 1 - 13
1.6.3 Infrastructure as a Service (IaaS) ............................................................... 1 - 15
1.6.4 Difference between IaaS, PaaS and SaaS ................................................... 1 - 16
1.7 Cloud Computing Logical Architecture ......................................................... 1 - 17
1.7.1 Cloud Computing Service Architecture ...................................................... 1 - 19
1.8 Developing Holistic Cloud Computing Reference Model.............................. 1 - 20
1.8.1 Complete View of Cloud Management ...................................................... 1 - 21
1.8.2 Cloud Computing Reference Model ........................................................... 1 - 22
1.9 Cloud System Architecture .......................................................................... 1 - 24
1.9.1 Single Cloud Site Architectures ................................................................... 1 - 25
1.9.2 Redundant 3-Tier Architecture ................................................................... 1 - 25
1.9.3 Multi-Data Centre Architecture .................................................................. 1 - 26
1.10 Cloud Deployment Models .......................................................................... 1 - 27
(vi)
1.10.1 Difference between Public and Private Cloud ............................................ 1 - 30
1.11 Multiple Choice Questions with Answers ..................................................... 1 - 30
Unit - II
Chapter - 2 Data Storage and Cloud Computing (2 - 1) to (2 - 28)
2.1 Introduction to Enterprise Data Storage ........................................................ 2 - 2
2.1.1 Direct Attached Storage ............................................................................... 2 - 2
2.1.2 Storage Area Network .................................................................................. 2 - 3
2.1.3 Network - attached Storage ......................................................................... 2 - 5
2.1.4 Comparison between NAS and SAN ............................................................. 2 - 9
2.1.5 Comparison between DAS, NAS and SAN ................................................... 2 - 10
2.2 Data Storage Management ........................................................................... 2 - 10
2.2.1 Data Storage Management Tools ............................................................... 2 - 10
2.2.2 Storage Management Process .................................................................... 2 - 11
2.2.3 Cloud Provisioning ...................................................................................... 2 - 11
2.3 File System....................................................................................................... 2 - 12
2.3.1 FAT File System ........................................................................................... 2 - 13
2.3.2 NTFS ............................................................................................................ 2 - 13
2.3.3 Cloud File System........................................................................................ 2 - 13
2.4 Cloud Data Stores.......................................................................................... 2 - 15
2.4.1 Distributed Data Store ................................................................................ 2 - 16
2.4.2 Data Store Types ......................................................................................... 2 - 16
2.4.2.1 BigTable........................................................................................................ 2 - 16
2.4.2.2 Dynamo ........................................................................................................ 2 - 17
(vii)
2.6.5 Data Intensive Technologies for Cloud Computing .................................... 2 - 23
2.7 Cloud Storage from LANs to WANs ................................................................. 2 - 24
2.7.1 Cloud Characteristics .................................................................................. 2 - 24
2.7.2 Distributed Data Storage ............................................................................ 2 - 24
2.8 Multiple Choice Questions with Answers ..................................................... 2 - 26
Unit - III
Chapter - 3 Virtualization in Cloud Computing (3 - 1) to (3 - 30)
3.1 Definition of Virtualization .............................................................................. 3 - 2
3.2 Adopting Virtualization ................................................................................... 3 - 3
3.3 Types of Virtualizations ................................................................................... 3 - 4
3.3.1 Example : Wine ............................................................................................ 3 - 5
3.3.2 Server Virtualization .................................................................................... 3 - 6
3.3.3 Operating Level Virtualization ..................................................................... 3 - 9
3.3.4 Para-Virtualization ..................................................................................... 3 - 11
3.4 Full Virtualization .......................................................................................... 3 - 12
3.4.1 Memory Virtualization ............................................................................... 3 - 13
3.4.2 I/O Virtualization........................................................................................ 3 - 14
3.4.3 Difference between Full and Para Virtualization ....................................... 3 - 15
3.5 Storage Virtualization.................................................................................... 3 - 15
3.5.1 Network Virtualization............................................................................... 3 - 18
3.6 Virtual Clustering.......................................................................................... 3 - 19
3.7 Virtualization Application.............................................................................. 3 - 20
3.8 Pitfalls of Virtualization ................................................................................. 3 - 21
3.9 Grid, Cloud and Virtualization ....................................................................... 3 - 21
3.9.1 Virtualization in Grid ................................................................................... 3 - 21
3.9.2 Virtualization in Cloud ................................................................................ 3 - 22
3.9.3 Difference between Cloud and Virtualization ............................................ 3 - 23
3.9.4 Virtualization and Cloud Security ............................................................... 3 - 23
(viii)
3.10 Virtualization and Cloud Computing ............................................................. 3 - 25
3.10.1 Anatomy of Cloud Infrastructure................................................................ 3 - 25
3.10.2 Virtual Infrastructures ................................................................................... 3 - 26
3.10.3 CPU Virtualization.......................................................................................... 3 - 26
3.10.4 Network and Storage Virtualization .............................................................. 3 - 27
3.11 Multiple Choice Questions with Answers ..................................................... 3 - 28
Unit - IV
Chapter - 4 Cloud Platforms and Cloud Applications (4 - 1) to (4 - 32)
4.1 Amazon Web Services ..................................................................................... 4 - 2
4.1.1 Components ................................................................................................. 4 - 3
4.1.2 Advantages and Disadvantages of AWS ....................................................... 4 - 4
4.2 Elastic Cloud Computing ................................................................................. 4 - 4
4.2.1 Configuring Amazon EC2 Linux Instances ..................................................... 4 - 6
4.2.2 Amazon S3 .................................................................................................. 4 - 10
4.2.3 Amazon CloudWatch .................................................................................. 4 - 12
4.3 Amazon Storage System ............................................................................... 4 - 13
4.4 Amazon Database Services ........................................................................... 4 - 14
4.4.1 Dynamo DB ................................................................................................. 4 - 15
4.4.2 Difference between DynamoDB and Amazon S3 ....................................... 4 - 16
4.5 Microsoft Cloud Services : Azure .................................................................. 4 - 17
4.6 Cloud Computing Applications...................................................................... 4 - 19
4.6.1 Healthcare : ECG Analysis in the Cloud....................................................... 4 - 20
4.6.2 Biology : Protein Structure Prediction ........................................................ 4 - 21
4.6.3 Geosciences : Satellite Image Processing ................................................... 4 - 22
4.6.4 Business and Consumer Applications : CRM and ERP ................................ 4 - 23
4.6.5 Social Networking ....................................................................................... 4 - 24
4.7 Google Cloud Application : Google App Engine ............................................ 4 - 25
4.8 Overview of OpenStack Architecture ........................................................... 4 - 28
4.9 Multiple Choice Questions with Answers ..................................................... 4 - 29
(ix)
Unit - V
Chapter - 5 Security in Cloud Computing (5 - 1) to (5 - 14)
5.1 Risks in Cloud Computing................................................................................ 5 - 2
5.1.1 Risk Management ......................................................................................... 5 - 2
5.2 Enterprise-wide Risk Management................................................................. 5 - 3
5.3 Types of Risks in Cloud Computing ................................................................. 5 - 4
5.4 Data Security in Cloud : Security Issues and Challenges ................................. 5 - 6
5.4.1 Advantages ................................................................................................... 5 - 7
5.4.2 Disadvantages ............................................................................................... 5 - 7
5.5 Content Level Security .................................................................................... 5 - 8
5.6 Cloud Security Services ................................................................................... 5 - 8
5.7 Security Authorization Challenges in the Cloud............................................ 5 - 10
5.8 Secure Cloud Software Requirements .......................................................... 5 - 11
5.9 Secure Cloud Software Testing ..................................................................... 5 - 11
5.9.1 Type of Testing in Cloud .................................................................................. 5 - 13
5.9.2 Benefit of Cloud-based Testing ...................................................................... 5 - 13
5.10 Multiple Choice Questions with Answers ..................................................... 5 - 14
Unit - VI
Chapter - 6 Advanced Techniques in Cloud Computing
(6 - 1) to (6 - 30)
6.1 Future Trends in Cloud Computing ................................................................. 6 - 2
6.1.1 Just Enough Operating System .................................................................... 6 - 2
6.2 Mobile Cloud ................................................................................................... 6 - 3
6.2.1 Advantages and Disadvantages ................................................................... 6 - 5
6.2.2 Mobile Cloud Application ............................................................................ 6 - 5
6.3 Automatic Cloud Computing ........................................................................... 6 - 6
6.3.1 CometCloud ................................................................................................. 6 - 8
6.4 Multimedia Cloud............................................................................................ 6 - 9
(x)
6.4.1 IPTV ............................................................................................................ 6 - 11
6.5 Energy Aware Cloud Computing ................................................................... 6 - 12
6.5.1 Green Cloud ................................................................................................ 6 - 12
6.5.2 Green Computing ....................................................................................... 6 - 13
6.5.3 Energy-Saving Software Techniques........................................................... 6 - 14
6.5.4 Key Issue Related to Cloud Computing Energy Efficiency .......................... 6 - 15
6.6 Jungle Computing.......................................................................................... 6 - 16
6.7 Docker ........................................................................................................... 6 - 17
6.7.1 Process Simplification ................................................................................ 6 - 17
6.7.2 Broad Support and Adoption ..................................................................... 6 - 18
6.7.3 Architecture ............................................................................................... 6 - 19
6.7.4 Container and Kubernetes ......................................................................... 6 - 20
6.8 Introduction to DevOps ................................................................................ 6 - 23
6.9 IOT and Cloud Convergence.......................................................................... 6 - 23
6.9.1 The Cloud and IoT in your Home ................................................................ 6 - 23
6.9.1.1 Smart Lighting .......................................................................................... 6 - 24
6.9.2 The IOT and Cloud in your Automobile ...................................................... 6 - 25
6.9.2.1 Remote Vehicle Diagnostics ...................................................................... 6 - 26
6.9.3 PERSONAL : IoT in Healthcare..................................................................... 6 - 27
6.10 Multiple Choice Questions with Answers ..................................................... 6 - 28
(xi)
Notes
(xii)
TM
Internet
hp
Data centers
Client computers
Distributed servers
Cloud Clients
Web browser, mobile app, thin client, terminal
emulator, ...
Platform Application
SaaS
CRM, Email, virtual desktop, communication,
games, ...
PaaS
Execution runtime, database, web server,
development tools, ...
structure
IaaS
Infra
Application
Client Internet
Service provider
offering SaaS
Client
Client
Physical server
Client
Client
Enterprise
Data storage
device
Computer
User IaaS
Cloud applications Web browser Software as a service
Cloud
Cloud platform development Platform as a service
environment
Virtual
infrastructure Infrastructure as a
Cloud infrastructure
manager service
Software as a Service
User 2
Platform as a Service
Infrastructure as a Service
Virtualized servers
Storage and networking
Examples : Amazon EC2, S3, vCloud
DNS
Cloud
Application
Database
Application 1 Application 2
Cloud
Snapshot
backups
Cloud storage
DNS
Datacenter 1 Datacenter 2
Application 1 Application 2
Cloud
Snapshot
backups
Cloud storage
Private cloud
Public cloud
Server
Storage
area
network
Disks
Server 1 Server 2
IP network
Storage arrays
Integrated network Windows operating systems client
attached storage
Operating system
Hardware
CCPU , Memory , Secondary storage
How it is done? Technique Virtualization model
Emulation Application
Execution Programming
Process level High-Level VM
environment language
Storage
Muliprogramming Operating system
Virtualization
Network Hardware-assisted
virtualization
Full virtualization
Paravirtualiztion
Partial virtualization
Applications
Operating systems
Virtualization layer
x86 architecture
User application
Operating system
Computer hardware
Operating system
Hardware
Application Application
Virtualization layer
Hardware
VM Host
Guest OS Hypervisor
Virtual-to-physical
Buffer cache translation
I/O stack
I/O stack
Interpose/transform
I/O scheduler e.g. Log, encrypt
Device driver
Emulated Local
disk device disk device NTC
Server Server Server Server Server
Virtual
volumes
Virtualization layer
Physical network
Level 5 : Achieve dynamic sharing of application
workload, capacity arbitrage and
Hyper self-service application provisioning
cloud
Level 4 : Select cloud environmnet and
begin broad-based deployments; Cloud
manual provisioning and load exploitation
balancing
Level 3 : Lay foundation for
Cloud scalable application
foundations architecture
Level 2 : Experiment in
amazon EC2; define
reference architecture Cloud
experimentation
Level 1 : Virtualize
infrastructure and
Virtualization applications
Application
Platform
Infrastructure
Virtualization
Server/storage/datacenters
Workload Workload Workload
Physical network
TM
HTTP post
request AWS Business
Contact US form API gateway Amazon SES 3rd party mail
submit request Lambda owner
server
Instance
Host computer
AMI
Instance
Launch instances
of any type
Instance
Host computer
Step 1 : Step 2 : Step 3 : Step 4 :
Signup for Create an Create a Create a virtual
AWS IAM user key pair private cloud
Photo
Response Queue
Photo
EC2 Instances
Photo
Web
Photo
server
Photo
Request Queue Photo
processing
server
Amazon
S3
Instance A Snapshot
Bucket
Instance B
Instance store
Management services
development SDK
Security services
Live .Net
Application
Windows Azure
Compute Storage Network
resources resources resources
Fabric
Hosting platform
ECG data
ECG sensor module SaaS analysis
software
1
Bluetooth connectivity
Aneka
4 PaaS
3
Wireless/Mobile 3G network IaaS
5
6
User PredictionManager
Input queue
Web role role
Output queue
DB with
prediction results Prediction Prediction
input output
queue queue
Azure SQL
database
3D protein
Azure structures
BLOBs (PDB files)
PredictionWorker roles
Distribution
Archiving
Local storage
Aneka
Private cloud
Public cloud
Google app
engine
Big table/
Memcache Google apps Gmail
Mapreduce
TM
Public
cloud
Hybrid
Cloud cloud
Private
cloud
Data integrity
Software
Data confidentiality
Data security and privacy
Data availability
Hardware
Data privacy
Types of testing in
the cloud
Functional Non-functional
Ability testing
testing testing
Disaster
Acceptance
Security testing recovery
testing
testing
Database
Access HA
point Servers
Central
AAA
processors
Cloud computing
BTS
Mobile
devices Cloud Cloud
Internet
controller controller
Data center
Data center
Cloud A Cloud B
Mobile network B
Database
Access HA
point Servers
Central
AAA Application
processors
Internet service servers
providers (ISPs)
Mobile BTS
devices Application service providers
Datacenter A Datacenter B
Application
Master/Worker/BOT
Programming MaReduce/
layer Workflow Hadoop
Task
Scheduling Monitoring
consistency
Clustering/
Anotomy detection Coordination Publish/Subscribe
Service
layer
Discovery Event Messaging
Data center/Grid/Cloud
Audio Video Image
Media cloud
Storage
CPU GPU
Clients
Cloud media
Authoring/editing Sharing/streaming
service service
Media cloud
Hard disk
Resource allocator
CPU
Load balancer
GPU
Development team Operations team
Request resources Resources provisioned
Application is deployed
Development team Operations team
Build image
Deploy
Application is deployed
Container 1
Container 2
Container 3
Images
Docker registry
on Linux host, VM or SaaS
Docker client
on local workstation
Node 1
Containers Containers
Control plane
User interface POD 1 POD 2
Docker engine
GUI API server
Kubelet Kube-proxy
Scheduler
Node 2
Controller manager
CLI
etcd
Containers Containers
Kubectl
POD 1 POD 2
Docker engine
Kubelet Kube-proxy
Low battery
predicted
Battery Alert sent Issue
conditions avoided
Deployed vehicle Remote diagnostics datacenter
Diagnostic data
Reformulated code
Fault detection and isolation Data analysis
Fault tolerant controllers Code reformulation
Remote code update Verification profile generation
Runtime testing Remote recalls management
T.E. (Computer) Semester - VI Elective - II (As Per 2019 Pattern)
T.E. (Computer) Semester - VI Elective - II (As Per 2019 Pattern)
1
2
2
®
FE
SE A Guide for Engineering Students
TE PAPER SOLUTIONS
BE