AWS

advertisement
Amazon Web Services
Justin DeBrabant
CIS 570 - Advanced Systems - Fall 2013
Cloud Computing
• A “pay what you use” service for
hardware/software resources
– analogy: utilities
• Amazon Web Services (AWS) is a cloud
computing provider
– there are many others
CIS 570 - Advanced Systems - Fall 2013
Benefits of Cloud Computing
• elasticity
– scale out or scale up easily*
• *can be difficult depending on your application
– scale down if demand decreases
• no upfront capital
– IT costs can be high, prohibitively so for a startup
CIS 570 - Advanced Systems - Fall 2013
*Slide Courtesy Jeff Barr, Amazon
CIS 570 - Advanced Systems - Fall 2013
Available Services
• S3 (Simple Storage Service)
– store and retrieve data
• EC2 (Elastic Computer Cloud)
– scalable compute capacity
• EBS (Elastic Block Store)
– predictable storage volumes that can be attached
to a running EC2 instance
– highly available, highly reliable
CIS 570 - Advanced Systems - Fall 2013
Available Services (cont’d)
• Databases
– Relational: RDS (Relational Database Service)
– NoSQL: DynamoDB
– Scale-Out Caching: ElastiCache
• EMR (Elastic MapReduce)
– Hadoop-based
– uses S3 and EC2
CIS 570 - Advanced Systems - Fall 2013
Other Important Terms
•
•
•
•
vCPU (virtual CPU) – 1 hardware thread
ECU – Amazon’s compute unit
instance – EC2 virtual machine
instance storage – amount of persistent
storage for an instance
• AMI (Amazon Machine Image) – bundled
software to be deployed on an instance
CIS 570 - Advanced Systems - Fall 2013
Various Storages
• S3
– available to instances within same region
– analogy: DropBox
• Instance Storage
– available during the life of a specific instance, not shared across
instances
– analogy: local disk
• EBS
– persistent block storage that can be added to local instances,
but is preserved across instance lifetimes
• can be attached to only one running instance
– analogy: removable storage media (e.g. external hard drive)
CIS 570 - Advanced Systems - Fall 2013
AWS Regions
• Amazon maintains different clusters worldwide
– helps provide locality as well as improved geographic redundancy
• each AWS service is available in specific regions
– e.g. S3
•
•
•
•
•
•
•
•
us-east-1 (Northern Virginia)
us-west-1 (Northern California)
us-west-2 (Oregon)
eu-west-1 (Ireland)
ap-southeast-1 (Singapore)
ap-southeast-2 (Sydney)
ap-northeast-1 (Tokyo)
sa-east-1 (Sao Paolo)
• http://docs.aws.amazon.com/general/latest/gr/rande.html
CIS 570 - Advanced Systems - Fall 2013
S3
• data organized into buckets
– buckets names must be unique across S3
– data in bucket can be organized any way you wish
• direct mapping between buckets and AWS
subdomains
– e.g. bucket name: mybucket, file: myfile.txt
• http://mybucket.aws.amazon.com/myfile.txt
• must specify region of bucket
CIS 570 - Advanced Systems - Fall 2013
S3 (cont’d)
• Guarantees:
– 99.999999999% durability
– 99.99% availability
– designed to be recoverable against two
simultaneous data losses
• SLAs
– if above guarantees are not met, partial refunds
are given
CIS 570 - Advanced Systems - Fall 2013
S3 Pricing
• storage used
– pay per GB
• tiered, firstTB is most expensive
– can reduce cost by reducing redundancy
– http://aws.amazon.com/s3/pricing/
• data transfer
– all data transfer in is free
– data transfer out is not
• pay per GB
CIS 570 - Advanced Systems - Fall 2013
EC2
• machines classified as instances
• each instance is a virtual machine
• every instance type has different resources
– vCPU
– ECU
– network bandwidth
– memory
– instance storage
CIS 570 - Advanced Systems - Fall 2013
Instance Families
• General Purpose
– balanced, all-purpose machines with up to 8 vCPUs
and 30 GB of memory
• Memory Optimized
– up to 244 GB of memory
• Compute Optimized
– up to 32 vCPUs and 10GBit network perf.
• Storage Optimized
– SSD and big disk backed instance storage
CIS 570 - Advanced Systems - Fall 2013
Instance Software
• Instances are virtual machines, and can
support a wide range of operating systems
– Linux (free)
– Windows (have to pay for additional license)
• Can create or use existing AMIs
– prepackaged software bundle
• includes OS and key software
– e.g Oracle, MySQL, Apache WebServer
– for this class, we’ll use existing AMIs
CIS 570 - Advanced Systems - Fall 2013
Buying Instances
• On-Demand Instances
– request an instance, use it, terminate it
• Reserved Instances
– akin to buying a machine
– permanently own instance
• Spot Instances
– bid for unused EC2 capacity
– price can vary greatly
– can set maximum bid and wait for available machines
at or below that price
CIS 570 - Advanced Systems - Fall 2013
On-Demand Instance Pricing
• billed per instance hour
– rounded up at per instance granularity!
– e.g. 2 instance for 20 mins = 2 instance hours
• free tier
– 750 hours with micro instance
– 30 GB EBS storage
– 1 GB of data transfer
• http://aws.amazon.com/ec2/pricing/
CIS 570 - Advanced Systems - Fall 2013
EMR
• easy interface to launch Hadoop jobs using
EC2
– just upload runnable jar containing Hadoop job
• pricing
– standard instance pricing + EMR instance pricing
– e.g. 8 node cluster of m1.small for 1 hour
• (8 * .06) + (8 * .015)
CIS 570 - Advanced Systems - Fall 2013
Accessing AWS Resources
• Console
– easy interactive GUI
– can launch EC2 instances, create S3 buckets, and
start EMR jobs (among other things)
– demo!
• CLI (command line interface)
– must install tools
• http://docs.aws.amazon.com/AWSEC2/latest/UserGuid
e/SettingUp_CommandLine.html
CIS 570 - Advanced Systems - Fall 2013
Accessing a Running Instance
• use SSH
– must have private key file for key specified at
instance launch
– ssh –i <private key> ec2-user@public-dns
• once SSH’d in, can use like any other machine
• use SCP to copy in and out files
– Warning: will be stored on ephemeral instance
storage!
CIS 570 - Advanced Systems - Fall 2013
Questions?
CIS 570 - Advanced Systems - Fall 2013
Download