Transcript Amazon EC2
Amazon Web Services:
Amazon Elastic Compute Cloud (Amazon EC2)
陳雪菁 [95C 資管組 P95747009]
2008.03.27
Agenda
•
•
•
•
•
•
Introduction
Amazon Web Services overview
Amazon EC2 is ….
Amazon EC2 Benefits
Typical Examples
Q&A
Amazon?
•
Consumers (Buy)
•
Associates, Sellers & Merchants (Sell)
•
Developers (Innovate)
Issues Facing Developers
• 70% of Web Development Effort is “Muck”:
– Data Centers
– Bandwidth / Power / Cooling
– Operations
– Staffing
• Scaling is Difficult and Expensive:
– Large Up-Front Investment
– Invest Ahead of Demand
– Load is Unpredictable
Solution: Web-Scale Computing
• Scale capacity on demand
• Turn fixed costs into variable costs
• Always available
• Rock-solid reliability
• Simple APIs and conceptual models
• Cost-effective
• Reduced time to market
• Focus on product & core competencies
Amazon Web Services Are...
A set of APIs and business models which give developers
access to Amazon technology and content
Data As a Service
Amazon E-Commerce Service
Amazon Historical Pricing
Search As a Service
Alexa Web Information Service
Alexa Top Sites
Alexa Site Thumbnail
Alexa Web Search Platform
Infrastructure As a Service
Amazon Simple Queue Service
Amazon Simple Storage Service
Amazon Elastic Compute Cloud
Amazon SimpleDB
People As a Service
Amazon Mechanical Turk
6
The Commercial Side
•
•
•
•
•
Standard licensing terms
Commercially usable
Aggressive pricing
Monthly credit card billing
Self-serve model:
– Sign up as developer
– Choose services
– Agree to service licenses
– Enter payment info
– Start coding
Amazon EC2 Is…
• Amazon Elastic Compute Cloud (EC2)
• Hardware As A Service
– A Web service that provides resizable compute
capacity in the cloud.
• Designed to make Web-scale computing easier for
developers.
– really Xen virtual machine instances running on AMD
x86; each instance has 2GB RAM and 150GB disk
• A simple Web service interface that provides complete
control of your computing resources
– create/destroy from the command line
Amazon EC2 Concepts
• Amazon Machine Image (AMI):
–
–
–
–
Bootable root disk
Pre-defined or user-built
Catalog of user-built AMIs
OS: Fedora, Centos, Gentoo, Debian,
Ubuntu, Windows Server
– App Stack: LAMP, mpiBLAST, Hadoop
• Instance:
– Running copy of an AMI
– Launch in less than 2 minutes
– Start/stop programmatically
• Network Security Model:
– Explicit access control
– Security groups
• Inter-service bandwidth is free
Simply to Use Amazon EC2
•
•
•
•
•
Create an Amazon Machine Image (AMI).
Upload the AMI into Amazon S3.
Configure security and network access.
Choose the type(s) of instance you want to run.
Start, terminate, and monitor as many instances of your
AMI as needed, using the web service APIs.
• Pay for the instance-hours and bandwidth that you
actually consume.
EC2 SOAP/Query API
•
Images:
•
– RegisterImage
– DescribeImages
– DeregisterImage
•
Instances:
–
–
–
–
–
•
RunInstances
DescribeInstances
TerminateInstances
GetConsoleOutput
RebootInstances
Keypairs:
– CreateKeyPair
– DescribeKeyPairs
– DeleteKeyPair
Image Attributes:
– ModifyImageAttribute
– DescribeImageAttribute
– ResetImageAttribute
•
Security Groups:
–
–
–
–
–
CreateSecurityGroup
DescribeSecurityGroups
DeleteSecurityGroup
AuthorizeSecurityGroupIngress
RevokeSecurityGroupIngress
Service Highlights
•
•
•
•
•
•
•
Elastic
Completely Controlled
Flexible
Designed for use with Amazon S3
Reliable
Secure
Inexpensive
Pricing
• Pay only for what you use and there is no minimun fee.
• Pricing is per instance-hour consumed for each instance type.
• Partial instance-hours consumed are billed as full hours.
•
•
•
$0.10 - Small Instance (Default)
– 1.7 GB of memory, 1 EC2 Compute Unit (1 virtual core with 1 EC2
Compute Unit), 160 GB of instance storage, 32-bit platform
$0.40 - Large Instance
– 7.5 GB of memory, 4 EC2 Compute Units (2 virtual cores with 2 EC2
Compute Units each), 850 GB of instance storage, 64-bit platform
$0.80 - Extra Large Instance
– 15 GB of memory, 8 EC2 Compute Units (4 virtual cores with 2 EC2
Compute Units each), 1690 GB of instance storage, 64-bit platform
Amazon EC2 Benefits You
Because It
• Reduces the time required to obtain and boot new
server instances to minutes
• Quickly scales capacity, both up and down, as your
computing requirements change
• Changes the economics of computing:
– Pay only for capacity that you actually use
– a + bc becomes just bc
EC2 Gotchas
• Local storage is non-persistent
– When you shut down, your data is lost
– Need to write it elsewhere; but S3 is free!
– You can "freeze" a running instance's "disks" to S3, as
an "AMI" (Amazon Machine Instance), then duplicate
that to as many servers as you like
• DHCP IP address assignment
– So IP changes when instance reboots
– Hard to use as a public server
– HTTP is still usable with a reverse proxy, such as
Pound or Apache's mod_proxy
Typical Examples
• Photo Share Web Site
• Online Backup
• Email Services
• Search experience
• Podcast
JamLoop
GIGAVOX
Web-Scale Architecture
GigaVox is the leading podcast technology company.
GigaVox Implemented Amazon S3, Amazon EC2 and Amazon SQS in November 2006
Summary
•
•
•
•
•
Cheap
Scalable
Beefy
Fault tolerant
Experiment!
Questions?
• http://www.amazonaws.com/
• http://del.icio.us/jm/aws
• Technical Report TR-08-07
– An Evaluation of Amazon’s Grid Computing Services: EC2, S3 and SQS
• 勞虎跑得快
– 亞馬遜 Bezos 的豪賭 — Web 2.0 基礎設施租賃業