5. Its not about the pro
d u ct
You have the biggest
idea ever: a brand new
pizza type!
You have spent time
designing, implementing
and testing your new
pizza
But now you need a
place to sell it
BetterSoftware 11
Monday, 27 June 2011
6. Build your own pizza p
lace!
BetterSoftware 11
Monday, 27 June 2011
7. Build your own pizza p
lace
Upfront decisions:
How big?
How many tables?
Where?
Time and money if
you change your
mind
BetterSoftware 11
Monday, 27 June 2011
9. Renting in Cloud mall
In the Cloud mall you
can rent by square
meters
If:
you need more, you
get more
you need less, you
give it back
BetterSoftware 11
Monday, 27 June 2011
10. 2. Cloud why?
BetterSoftware 11
Monday, 27 June 2011
11. Move from Capex to O
p ex
BetterSoftware 11
Monday, 27 June 2011
12. eCommerce Website
1600000
1200000
800000
400000
0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Traffic
BetterSoftware 11
Monday, 27 June 2011
13. Over provision
ing
1600000
1200000
800000
400000
0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Traffic Provisioning
BetterSoftware 11
Monday, 27 June 2011
14. Under provisioning
1600000
1200000
800000
400000
0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Traffic Provisioning
BetterSoftware 11
Monday, 27 June 2011
15. AutoScale(TM)
1600000
1200000
800000
400000
0
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
Traffic Provisioning
BetterSoftware 11
Monday, 27 June 2011
16. From Capex to Opex
No need for approval
to buy any new
computational
resources
Pay as you go
model
BetterSoftware 11
Monday, 27 June 2011
18. 200
150
100
50
0
Sat Sun Mon Tue Wed Thu Fri Sat Sun
Traffic
Breakup notifier - la
unch
BetterSoftware 11
Monday, 27 June 2011
19. 300000
225000
150000
75000
0
Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu
Traffic
The TechCrunch effec
t
BetterSoftware 11
Monday, 27 June 2011
21. Enterprise
Circumvent IT
department
Pay as you go - no
budget approval
No provisioning
Cons: sensitive data?
BetterSoftware 11
Monday, 27 June 2011
22. Startup / Pet project
Defeat TechCrunch
effect
No money (but glory)
No operations team
BetterSoftware 11
Monday, 27 June 2011
24. Amazon Web Services
The most mature,
鍖exible and
complete
infrastructure
platform --
Jeff Bezos (CEO,
Amazon.com)
BetterSoftware 11
Monday, 27 June 2011
27. Computing: EC2
Virtual Machines
Different memory/cpu
resources
Run public or custom OS
images
When turned off,
changes are lost
(volatile)
Pay what you use (time
and bandwidth)
BetterSoftware 11
Monday, 27 June 2011
28. Bonus Track: EC2 + LX
C
Run Virtual Machines
into Virtual Machines
LXC (Linux
Containers)
UML (UserMode
Linux)
FreeBSD jails
BetterSoftware 11
Monday, 27 June 2011
29. Storage: EBS
Network storage
volumes
Customizable size
Data stored in
snapshots
Data is automatically
replicated
Pay per allocated GB
BetterSoftware 11
Monday, 27 June 2011
30. Storage: S3
Key/value object
storage
Rest API to manipulate
the repository (web
access to objects)
S3FS
Slower, more reliable
Pay per allocated GB and
usage (data transfer)
BetterSoftware 11
Monday, 27 June 2011
31. Storage: RDS
Relational Database
Service
A managed MySQL/
Oracle instance in the
Cloud
Different cpu/mem
resources
Pay what you use
(bandwidth and time)
BetterSoftware 11
Monday, 27 June 2011
32. Storage: SimpleDB
The NoSQL alternative
A managed NoSQL
instance in the Cloud
Custom API to
manipulate the data
set
Pay what you use
(bandwidth and time)
BetterSoftware 11
Monday, 27 June 2011
33. Messaging: SNS
Simple Noti鍖cation Service
A noti鍖cation
infrastructure in the Cloud
Publish/Subscribe protocol
Http/Mail/SQS
noti鍖cations
Pay what you use
(requests, noti鍖cation and
bandwidth)
BetterSoftware 11
Monday, 27 June 2011
34. Messaging: SQS
Simple Queue Service
A message queue
infrastructure in the Cloud
Communications between
EC2 instances
Enable the worker
queue paradigm
Pay what you use
(bandwidth and API
requests)
BetterSoftware 11
Monday, 27 June 2011
35. Monitoring: CloudWatc
h
Monitor AWS resources
EC2 instances
EBS volumes
RDS databases
Load Balancers
...
Set alarms
View graphs and statistics
Pay per number of alarms and
metrics monitored
BetterSoftware 11
Monday, 27 June 2011
36. Monitoring: AutoScale
Monitor instances and
take scalability decisions
Scale out EC2 instances
when demand increases
Shed unneeded EC2
instances when demand
subsides (save $$$)
Enable elasticity
Free of charge
BetterSoftware 11
Monday, 27 June 2011
37. Putting it all together
Monitoring
Frontend
Messaging
AutoScale
Backend Backend
Storage BetterSoftware 11
Monday, 27 June 2011
38. Failures
Cloud is not immune to
failures
Cloud Apps should be
designed with failure in
mind (distributed
components app)
Take advantages of:
Availability Zones
Multiple Regions
BetterSoftware 11
Monday, 27 June 2011
39. One more thing: API!
All services are manageable through a Web Console
But all AWS services have exposed APIs
You can (for example):
Allocate, start, control, terminate EC2 instances
Allocate/attach/deallocate EBS partitions
Allocate/start/stop databases
Create/Read/Update/Destroy S3 objects
Change IPs
Monitor components
...
BetterSoftware 11
Monday, 27 June 2011
40. Predicting costs
Amazon Simple
Monthly Calculator
(google it!)
Given some
assumptions, how
much will I pay?
BetterSoftware 11
Monday, 27 June 2011
41. Keep costs low
Use a mix of reserved
instances vs. On-
Demand instances
Undersize your storage
and processing power
Monitor process
activities (e.g. you pay
for the bandwidth)
Use AutoScale
BetterSoftware 11
Monday, 27 June 2011
42. Conclusions
Cloud is a very good place
to host your application
and data
Very 鍖exible, leaves to
others the pain of
operations
Easy to migrate to Cloud
in steps (subscribing one
service at a time)
Your application is ready
to scale with your business
BetterSoftware 11
Monday, 27 June 2011