Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Roberto Beraldi
Models for Cloud Computing
(SaaS)Software as a Service
Technologies
Internet
Utility computing Web 2.0
Grid Computing Cloud Web Services
.. computing Mashups
SoA
Autonomic Computing
Data Center Automation
System Management
Cloud actors
Platform as a Service
A cloud platform offering an environment on
which developers create and deploy applications
E.g., decide the size of the VM, where they are
located, etc.
Different Programming Languages
PHP
Java
Ruby
Different DB
Web based console to create application (with
dashboard)
Platform as a Service
Developers can use an IDE to develop the
application and use either an SDK or CLI to
deploy the application
Impact on the programming model
Main players:
Googles app engine, OpenShift, Windows Azure,
and many more
PaaS example: GAE
Cloud service for running web applications on the
Google data center
GAE is one of the most interesting and complete
PaaS
Simple configuration
Transparent scalability
infinite number of applications, req/sec storage
Security
All applications run inside a sandbox, do not have direct access to
file system, cannot open other connections
Different programming languages
GAE console
Lots of service
Compute
App Engine
VM
Storage
BigTable
SQL
Datastore
Operations
Monitoring
Debugging
Etc.
Tools
Deployment Manager
Development
Big Data
SDK
GAE architecture
Google App Engine speaks with web applications
through the Web Server Gateway Interface (WSGI)
standard protocol
App Engine and SDK includes the webapp2
framework that implements WSGI
WSGI Protocol
Code Step 4
Deploy Google Cloud
helloworld.py
Simulator
Conf Step 2
app.yaml Step 3
Hello Word in GAE
Step 1
Code
helloworld.py
Conf
app.yaml
Step 4
Deploy Google Cloud
appcfg.py update .
REQ/REP
Services CGI
Sandbox
URLfetch
Standard
mail Lib
Python
VM App
images
Read-only
File system
BigTable
MEMCACHE DATASTORE
REQ/REP
Services CGI
Sandbox
URLfetch
Standard
mail Lib
Python
VM App
images
Read-only
.
File system
.
BigTable
MEMCACHE DATASTORE
git to pull
http://www.windowsazure.com/en-us/develop/net/fundamentals/intro-to-windows-azure/
Deployement
Web Portal
1. Register (Live-id)
2. Create Hosted-Service
http://xxxx.cloudapp.net
Service
3. Package upload
.csconf + .cspkg
Service
Fabric Service
Controller
Conf
(n.inst. =3)
Service
.cspkg
Microsoft azure
Lots of services are added during the years
Computation
VM,Cloud Services,Batch,RemoteApp
Web and mobile device
Backend for mobile app
Data and storage
Data analysis
Machine learning
Internet of Things
INFRASTRUCTURE AS A SERVICE
Cloud computing in a nutshell
(by an analogy)
CPU
cycles
Memory
control panel
Such data centers are built to serve many users and host
many disparate applications.
time
Hw virtualizazion
Virtualization
platform
physical
servers
Automated scaling
Physical server 1 Physical server 2
2) VIM allocates the new VM
2
hypervisor VIM hypervisor
Automated scale
listener
4