Amazon Web Services:
Building Highly Scalable Web Applications
Agenda
Introduction
Amazon Web Services overview
Amazon EC2
Amazon S3
Amazon VPC
Amazon EBS
Questions
Enterprise IT Challenges
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
What is Cloud Computing?
Whether you are running applications that share photos or
support the critical operations of your business, you need rapid
access to flexible and low cost IT resources. The term "Cloud
Computing" refers to the on-demand delivery of IT resources
via the Internet with pay-as-you-go pricing.
Comparable cloud services
 Amazon Web Services
 Google Cloud
 Microsoft Azure
Amazon Web Services
A set of APIs and business models which give developer-level
access to Amazon’s infrastructure and content.
Data As a Service
Amazon E-Commerce Service
Amazon Historical Pricing
Infrastructure As a Service
Amazon Simple Queue Service
Amazon Simple Storage Service
Amazon Elastic Compute Cloud
Search As a Service
Alexa Web Information Service
Alexa Top Sites
Alexa Site Thumbnail
Alexa Web Search Platform
People As a Service
Amazon Mechanical Turk
AWS Cloud Layers
Amazon Elastic Compute Cloud
EC2
Amazon Elastic Compute Cloud
(Amazon EC2)
A Distributed System you can actually use!
“Amazon Elastic Compute Cloud (Amazon
EC2) is a web service that provides resizable
compute capacity in the cloud. It is designed
to make web-scale computing easier for
developers.”
EC2 is part of Amazon’s “pay per use” web
services for software development
9
What can you do with EC2?
Develop and run web-sites & web-services.
From a personal blog all the way up to a
large services like foursquare, netflix,
reddit.com
Do large-scale data processing (Like Dr.
Stiber’s GPU calculations, or the Global
Warming simulation Prof. Fukuda mentioned
in last lecture)
Allocate & De-allocate computing resources
dynamically.
Features :
Amazon Elastic Block Store
EBS-Optimized Instances
Multiple Locations
Elastic IP Addresses
Amazon Virtual Private Cloud
Amazon CloudWatch
Auto Scaling
Elastic Load Balancing
High Performance Computing (HPC) Clusters
GPU Instances
AWS Marketplace
VM Import/Export
Enhanced Networking
Amazon Simple Storage
Service
S3
Amazon S3 (Amazon Simple Storage
Service)
Amazon S3 is storage for the Internet.
Amazon S3 provides a simple web services
interface that can be used to store and
retrieve any amount of data, at any time,
from anywhere on the web.
It gives any developer access to the same
highly scalable, reliable, secure, fast,
inexpensive infrastructure that Amazon uses
to run its own global network of web sites.
Amazon S3 Concepts
Objects:
Opaque data to be stored (1 byte … 5 Gigabytes)
Authentication and access controls
Buckets:
Object container – any number of objects
100 buckets per account / buckets are “owned”
Keys:
Unique object identifier within bucket
Up to 1024 bytes long
Flat object storage model
Standards-Based Interfaces:
REST and SOAP
URL-Addressability – every object has a URL
Functionality:
Write, read, and delete objects containing from 1 byte to 5
terabytes of data each. The number of objects you can store is
unlimited.
Each object is stored in a bucket and retrieved via a unique,
developer-assigned key.A bucket can be stored in one of
several Regions. You can choose a Region to optimize for
latency or address regulatory requirements.
Authentication mechanisms are provided to ensure that data is
kept secure from unauthorized access. Objects can be made
private or public, and rights can be granted to specific users.
Reliability backed with the Amazon S3 Service Level
Agreement.
Common Use Cases:
Amazon S3 can be used to support a wide
variety of use cases, for example:
Content Storage and Distribution
Storage for Data Analysis
Backup, Archiving and Disaster Recovery
Static Website Hosting
Amazon Elastic Block Store
(EBS)
Amazon Elastic Block Store (EBS)
Amazon Elastic Block Store (EBS) provides block
level storage volumes for use with Amazon EC2
instances.
Amazon EBS provides highly available, highly
reliable, predictable storage volumes that can be
attached to a running Amazon EC2 instance and
exposed as a device within the instance.
Amazon EBS is particularly suited for applications
that require a database, file system, or access to raw
block level storage.
Features:
Amazon EBS allows you to create storage volumes from 1 GB
to 1 TB that can be mounted as devices by Amazon EC2
instances.
Storage volumes behave like raw, unformatted block devices,
with user supplied device names and a block device interface.
Amazon EBS volumes are placed in a specific Availability Zone,
and can then be attached to instances also in that same
Availability Zone.
AWS also enables you to create new volumes from AWS
hosted public data sets.
Amazon EBS also provides the ability to create point-in-time
snapshots of volumes, which are persisted to Amazon S3.
These snapshots can be used as the starting point for new
Amazon EBS volumes, and protect data for long-term
durability.
Amazon Virtual Private Cloud
(Amazon VPC)
Amazon VPC
Amazon Virtual Private Cloud (Amazon VPC) lets you provision
a logically isolated section of the Amazon Web Services (AWS)
Cloud where you can launch AWS resources in a virtual
network that you define.
You can easily customize the network configuration for your
Amazon VPC. For example, you can create a public-facing
subnet for your webservers that has access to the Internet, and
place your backend systems such as databases or application
servers in a private-facing subnet with no Internet access.
Continue…
You have complete control over your virtual networking
environment, including selection of your own IP address range,
creation of subnets, and configuration of route tables and
network gateways.
Additionally, you can create a Hardware Virtual Private Network
(VPN) connection between your corporate datacenter and your
VPC and leverage the AWS cloud as an extension of your
corporate datacenter.
VPC…
Features and Benefits:
Multiple Connectivity Options
Secure
Simple
All the Scalability and Reliability of AWS
Use cases:
Host a simple, public-facing website
Host multi-tier web applications
Host scalable web applications in the AWS cloud that are
connected to your datacenter
Extend your corporate network into the cloud
Disaster Recovery
Aws
Aws

Aws

  • 1.
    Amazon Web Services: BuildingHighly Scalable Web Applications
  • 2.
    Agenda Introduction Amazon Web Servicesoverview Amazon EC2 Amazon S3 Amazon VPC Amazon EBS Questions
  • 3.
  • 4.
    Solution: Web-Scale Computing Scalecapacity 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
  • 5.
    What is CloudComputing? Whether you are running applications that share photos or support the critical operations of your business, you need rapid access to flexible and low cost IT resources. The term "Cloud Computing" refers to the on-demand delivery of IT resources via the Internet with pay-as-you-go pricing. Comparable cloud services  Amazon Web Services  Google Cloud  Microsoft Azure
  • 6.
    Amazon Web Services Aset of APIs and business models which give developer-level access to Amazon’s infrastructure and content. Data As a Service Amazon E-Commerce Service Amazon Historical Pricing Infrastructure As a Service Amazon Simple Queue Service Amazon Simple Storage Service Amazon Elastic Compute Cloud Search As a Service Alexa Web Information Service Alexa Top Sites Alexa Site Thumbnail Alexa Web Search Platform People As a Service Amazon Mechanical Turk
  • 7.
  • 8.
  • 9.
    Amazon Elastic ComputeCloud (Amazon EC2) A Distributed System you can actually use! “Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.” EC2 is part of Amazon’s “pay per use” web services for software development 9
  • 10.
    What can youdo with EC2? Develop and run web-sites & web-services. From a personal blog all the way up to a large services like foursquare, netflix, reddit.com Do large-scale data processing (Like Dr. Stiber’s GPU calculations, or the Global Warming simulation Prof. Fukuda mentioned in last lecture) Allocate & De-allocate computing resources dynamically.
  • 11.
    Features : Amazon ElasticBlock Store EBS-Optimized Instances Multiple Locations Elastic IP Addresses Amazon Virtual Private Cloud Amazon CloudWatch Auto Scaling Elastic Load Balancing High Performance Computing (HPC) Clusters GPU Instances AWS Marketplace VM Import/Export Enhanced Networking
  • 12.
  • 13.
    Amazon S3 (AmazonSimple Storage Service) Amazon S3 is storage for the Internet. Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, secure, fast, inexpensive infrastructure that Amazon uses to run its own global network of web sites.
  • 14.
    Amazon S3 Concepts Objects: Opaquedata to be stored (1 byte … 5 Gigabytes) Authentication and access controls Buckets: Object container – any number of objects 100 buckets per account / buckets are “owned” Keys: Unique object identifier within bucket Up to 1024 bytes long Flat object storage model Standards-Based Interfaces: REST and SOAP URL-Addressability – every object has a URL
  • 15.
    Functionality: Write, read, anddelete objects containing from 1 byte to 5 terabytes of data each. The number of objects you can store is unlimited. Each object is stored in a bucket and retrieved via a unique, developer-assigned key.A bucket can be stored in one of several Regions. You can choose a Region to optimize for latency or address regulatory requirements. Authentication mechanisms are provided to ensure that data is kept secure from unauthorized access. Objects can be made private or public, and rights can be granted to specific users. Reliability backed with the Amazon S3 Service Level Agreement.
  • 16.
    Common Use Cases: AmazonS3 can be used to support a wide variety of use cases, for example: Content Storage and Distribution Storage for Data Analysis Backup, Archiving and Disaster Recovery Static Website Hosting
  • 17.
  • 18.
    Amazon Elastic BlockStore (EBS) Amazon Elastic Block Store (EBS) provides block level storage volumes for use with Amazon EC2 instances. Amazon EBS provides highly available, highly reliable, predictable storage volumes that can be attached to a running Amazon EC2 instance and exposed as a device within the instance. Amazon EBS is particularly suited for applications that require a database, file system, or access to raw block level storage.
  • 19.
    Features: Amazon EBS allowsyou to create storage volumes from 1 GB to 1 TB that can be mounted as devices by Amazon EC2 instances. Storage volumes behave like raw, unformatted block devices, with user supplied device names and a block device interface. Amazon EBS volumes are placed in a specific Availability Zone, and can then be attached to instances also in that same Availability Zone. AWS also enables you to create new volumes from AWS hosted public data sets. Amazon EBS also provides the ability to create point-in-time snapshots of volumes, which are persisted to Amazon S3. These snapshots can be used as the starting point for new Amazon EBS volumes, and protect data for long-term durability.
  • 20.
    Amazon Virtual PrivateCloud (Amazon VPC)
  • 21.
    Amazon VPC Amazon VirtualPrivate Cloud (Amazon VPC) lets you provision a logically isolated section of the Amazon Web Services (AWS) Cloud where you can launch AWS resources in a virtual network that you define. You can easily customize the network configuration for your Amazon VPC. For example, you can create a public-facing subnet for your webservers that has access to the Internet, and place your backend systems such as databases or application servers in a private-facing subnet with no Internet access.
  • 22.
    Continue… You have completecontrol over your virtual networking environment, including selection of your own IP address range, creation of subnets, and configuration of route tables and network gateways. Additionally, you can create a Hardware Virtual Private Network (VPN) connection between your corporate datacenter and your VPC and leverage the AWS cloud as an extension of your corporate datacenter.
  • 23.
    VPC… Features and Benefits: MultipleConnectivity Options Secure Simple All the Scalability and Reliability of AWS Use cases: Host a simple, public-facing website Host multi-tier web applications Host scalable web applications in the AWS cloud that are connected to your datacenter Extend your corporate network into the cloud Disaster Recovery

Editor's Notes

  • #10 Reducing the barriers of entry to building web-friendly applications and businesses. We have looked at the investment we have made in technology over the last 10 years and Amazon Web Services strategy is to see what parts of our technology is exposed to developers outside of Amazon.com