The document outlines a presentation titled "Architecting for the Cloud - Demo and Best Practices". The presentation covers seven principles of cloud architecture - introduction, scalability, storage, understanding durability, interface, costs, and security. It includes demos and discusses concepts like auto-scaling, decoupling, and designing for failure. The presentation aims to provide best practices for architecting systems in the cloud.
18. Web
Management Https (encrypted)
Console
Multi-Factor Auth (MFA)
Amazon Web Services API
Friday, July 15, 2011
19. Web Software
Management Libraries
Console and SDK
Java, PHP, Ruby,
Python, .NET
Eclipse Toolkit
Mobile:
Android, iOS
Amazon Web Services API
Friday, July 15, 2011
20. Web Software Command
Management Libraries Line
Console and SDK Interface
Amazon Web Services API
Friday, July 15, 2011
21. Web Software Command Resource
Management Libraries Line Management
Console and SDK Interface Tools
Puppet
Chef
PyChef
Fabric
Cuisine
Etc.
Amazon Web Services API
Friday, July 15, 2011
22. Web Software Command Resource
Management Libraries Line Management
Console and SDK Interface Tools
Amazon Web Services API
Friday, July 15, 2011
23. Cost is affected by Architecture
EC2 instances (Generic, High-CPU, High-Mem)
Data compression
Backup strategy, example:
Amazon S3: High Durability / Reduced Durability
99.99999999999% 99.99%
0.140 0.093
US$ / GB / month US$ / GB / month
Friday, July 15, 2011
24. EC2 instances: Small vs Medium
1 ECU =
1.2 GHz Xeon Small Medium
Elastic Compute Unit 1 5X 5
RAM 1.7 GB 1.7 GB
Storage 160 GB 2.2X 350 GB
Hourly cost (US$) 0.085 2X 0.170
Friday, July 15, 2011
26. The Cloud Architect
Physical vs. Cloud
Scalability
Interface
Costs
Friday, July 15, 2011
27. When you use AWS, you can...
Launch EC2 with EBS behind ELB
with your domain on Route 53
and your videos on Cloudfront, backup to S3
and your DB on RDS with Multi-AZ.
(so, sorry for the many acronyms)
Friday, July 15, 2011
28. Design for Failure
and nothing will fail
Intro 1 2 3 4 5 6 7 End
Friday, July 15, 2011
30. Design for Failure and nothing will fail
Backup/Restore strategy
Become impervious to reboot/relaunch
Move in-memory sessions to data store
Use Availability Zones (AZ), distribute EC2
Use Elastic Load Balancer
Use Relational Database Service + Multi-AZ
Use Elastic IP
Friday, July 15, 2011
32. Regions
Region: set of multiple Data Centers
US West US East
AP Japan
EU West
AP Singapore
Friday, July 15, 2011
33. Availability Zones (AZ)
Distinct locations, insulated from failures
Low latency connectivity within same region
US West US East A B
AP Japan
A B A B C
A B
C C D EU West
A B
AP Singapore
Friday, July 15, 2011
35. Amazon Cloudfront + Route 53
Content Delivery Network (CDN) + DNS
Seattle Amsterdam
New York
London
Newark Stockholm
Palo Alto Dublin
Tokyo
Frankfurt
Paris
Los Angeles Ashburn
Jacksonville Hong Kong
Dallas
St.Louis Miami Singapore
Friday, July 15, 2011
36. Multi-AZ
US West US East A B
AP Japan
A B A B C
A B
C C D EU West
A B
AP Singapore
Friday, July 15, 2011
37. Multi-AZ
ap-southeast-1a ap-southeast-1b
EC2 EC2
EC2 EC2
AP Singapore
Friday, July 15, 2011
38. Multi-AZ with RDS
ap-southeast-1a ap-southeast-1b
Master DB RDS RDS Standby Replica
Auto Sync
AP Singapore
Friday, July 15, 2011
43. Example: video encoding
Asynchronous
A B C D
Input Store Encode Publish
M M M
M M M
M M
MMM
SQS Queue SQS Queue SQS Queue
Friday, July 15, 2011
44. Example: video encoding
Easier to scale!
C
C
B
B CC C
A B C D
Input Store Encode Publish
M M M
M M M
M M
MMM
SQS Queue SQS Queue SQS Queue
Friday, July 15, 2011
45. Elasticity
Intro 1 2 3 4 5 6 7 End
Friday, July 15, 2011
57. Dynamic and Static
Keep dynamic data closer to EC2.
E.g.: use same AZ for data-intensive applications
Keep static data closer to end-user
E.g.: use Cloudfront to distribute content
Tools: Custom AMI (Amazon Machine Image),
Elastic IP
Friday, July 15, 2011
68. Don’t fear constraints
Need Better Database performance?
Sharding / Multiple Read-Only / Clustering
Need More RAM?
Shared Distributed cache (Memcached)
Need Faster disks?
Multiple EBS in Raid configuration
Friday, July 15, 2011
69. Multi-AZ for RDS
ap-southeast-1a ap-southeast-1b
Master DB RDS RDS Standby Replica
(as shown earlier)
Friday, July 15, 2011
76. IAM: Identity Access Management
Manage Users / Groups
Manage security credentials
Control access to API
Control access to specific resources
Control access based on environment variables
Cost: zero.
Friday, July 15, 2011
77. VPC: Virtual Private Cloud
Your AWS Cloud
Company
Public EC2 EC2
locallocal Internet EC2 EC2 EC2
EC2
local local
EC2
local
3 2 NAT EC2 EC2
Direct
Virtual Private Cloud
EC2 Private
EC2
EC2 VPN
EC2 EC2
EC2
1
Friday, July 15, 2011
78. Conclusions
Intro 1 2 3 4 5 6 7 End
Friday, July 15, 2011
80. De Architectura, 1st century C.E.
Firmitas Durability
(Redundancy, Replication)
Utilitas Utility
(efficient use of resources)
Venustas Beauty
(Pleasure, Meaning, Satisfaction)
Automation It works
Focus
Friday, July 15, 2011
81. The “beauty” of Cloud Computing
Automation It works
Focus
Friday, July 15, 2011
82. The “beauty” of Cloud Computing
CloudFormation
Provision AWS resources in an orderly fashion
Elastic Beanstalk
Deploy applications in the Cloud
Simple Email Service (SES)
Highly scalable, cost-effective email-sending service
Friday, July 15, 2011
83. Seven principles: recap
1. Design for failure and nothing will fail
2. Decouple
3. Elasticity
4. Dynamic and Static
5. Think Parallel
6. Don’t fear constraints
7. Security
Friday, July 15, 2011
84. ARCHITECTING
FOR THE CLOUD
Friday, July 15, 2011
DAS Direct-Attached Storage (e.g. plain Hard Disk)SAN Storage Area Network (e.g. Disk arrays)NAS Network-Attached Storage
DAS Direct-Attached Storage (e.g. plain Hard Disk)SAN Storage Area Network (e.g. Disk arrays)NAS Network-Attached Storage
DAS Direct-Attached Storage (e.g. plain Hard Disk)SAN Storage Area Network (e.g. Disk arrays)NAS Network-Attached Storage
Add resources - performance should improve proportionallyOperationally efficient - price equal to costresilient - failure doesn't stop the servicemore cost-effective as it grows
00-scale-up-ec2
02_ec2-instance-types
03_ec2-multi-az_rds-multi-az
05_ec2-autoscaling_ebs-scale-up
06_elastic-ip
07_elastic-load-balancing
09_security-groups
The earliest surviving written work is De architectura, by Roman architect Vitruvius in the early 1st century CE. firmitas, utilitas, venustasDurability – it should stand up robustly and remain in good condition.Utility – it should be useful and function well for the people using it. Beauty, it should delight people, raise their spirits
The earliest surviving written work is De architectura, by Roman architect Vitruvius in the early 1st century CE. firmitas, utilitas, venustasDurability – it should stand up robustly and remain in good condition.Utility – it should be useful and function well for the people using it. Beauty, it should delight people, raise their spirits
The earliest surviving written work is De architectura, by Roman architect Vitruvius in the early 1st century CE. firmitas, utilitas, venustasDurability – it should stand up robustly and remain in good condition.Utility – it should be useful and function well for the people using it. Beauty, it should delight people, raise their spirits
The earliest surviving written work is De architectura, by Roman architect Vitruvius in the early 1st century CE. firmitas, utilitas, venustasDurability – it should stand up robustly and remain in good condition.Utility – it should be useful and function well for the people using it. Beauty, it should delight people, raise their spirits