In this webinar, Ryan Shuttleworth, Technology Evangelist, Amazon Web Services and Adam Bidwell, eCommerce Manager, Kurt Geiger will discuss how retailers are using AWS to carry out a number of business critical functions. This complementary webinar will discuss in detail Kurt Geiger's experience of using AWS to run their Magento eCommerce engine and Ryan Shuttleworth will cover an overview of AWS along with a number case studies of how retail customers are implementing AWS to run their business.
5. Consumer Business Seller IT Infrastructure
Business Business
Tens of millions of Sell on Amazon Cloud computing
active customer websites infrastructure for
accounts hosting web-scale
Use Amazon
solutions
technology for your
own retail website
Eight countries: Hundreds of
US, UK, Germany, Leverage Amazon’s thousands of
Japan, France, Canada, massive fulfillment registered customers
China, Italy center network in over 190 countries
6. About Amazon Web
How did Amazon…
Services
Deep experience in building
and operating global web
scale systems
?
…get into cloud computing?
7. Over 10 years in the making
Enablement of sellers on Amazon
Internal need for scalable deployment environment
Early forays proved developers were hungry for more
8. AWS Mission
Enable businesses and developers to
use web services* to build scalable,
sophisticated applications.
*What people now call “the cloud”
9.
10. Each day AWS adds the equivalent server capacity
to power Amazon when it was a global, $2.76B
enterprise
(circa 2000)
11. Objects in S3
1 Trillion
1000.000
750.000
500.000
250.000
0.000
750k+ peak transactions per second
16. Utility computing
On demand Pay as you go
Compute
Scaling
Security
CDN Backup
DNS Database
Storage Load Balancing
Workflow Monitoring
Networking
Uniform Messaging Available
17. On a global footprint
Region
US-WEST (N. California) EU-WEST (Ireland)
GOV CLOUD ASIA PAC (Tokyo)
US-EAST (Virginia)
US-WEST (Oregon)
ASIA PAC (Singapore)
SOUTH AMERICA (Sao Paulo)
19. On a global footprint
Edge Locations
London(2)
Seattle South Bend New York (2) Amsterdam
Newark Stockholm
Dublin
Palo Alto
Tokyo
San Jose
Frankfurt(2)
Paris(2)
Ashburn(2) Milan
Osaka
Los Angeles (2) Jacksonville
Dallas(2) Hong Kong
St.Louis
Miami Singapore(2)
Sydney
Sao Paulo
25. Elastic capacity
On and Off Fast Growth
Variable peaks Predictable peaks
26. 503
Service Temporarily Unavailable
The server is temporarily unable to service
your request due to maintenance downtime or
capacity problems. Please try again later.
27. 503
Service Temporarily Unavailable
The server is temporarily unable to service
your request due to maintenance downtime or
capacity problems. Please try again later.
31. 40 servers to 5000 in 3 days
EC2 scaled to peak of 5000
instances
Number of EC2 Instances
“Techcrunched”
Launch of Facebook
modification
Steady state of ~40
instances
4/12/2008 4/13/2008 4/14/2008 4/15/2008 4/16/2008 4/17/2008 4/18/2008 4/19/2008 4/20/2008
33. Shared responsibility
Foundation Services
Amazon
Compute Storage Database Networking
Availability Zones
AWS Global Edge Locations
Infrastructure Regions
34. Shared responsibility
Sarbanes-Oxley (SOX) FISMA A&As
ISO 27001 Certification Multiple NIST Low Approvals to Operate (ATO)
NIST Moderate, GSA issued ATO
Payment Card Industry Data Security
FedRAMP
Standard (PCI DSS) Level 1 Compliant DIACAP MAC III Sensitive IATO
SAS70(SOC 1) Type II Audit Customers have deployed various compliant
applications such as HIPAA (healthcare)
Foundation Services
Amazon
Compute Storage Database Networking
Availability Zones
AWS Global Edge Locations
Infrastructure Regions
35. Shared responsibility
Customer Data
Platform, Applications, Identity & Access Management
You
Operating System, Network & Firewall Configuration
Client-side Data Encryption & Data Server-side Encryption Network Traffic Protection
Integrity Authentication (File System and/or Data) (Encryption/Integrity/Identity)
Foundation Services
Amazon
Compute Storage Database Networking
Availability Zones
AWS Global Edge Locations
Infrastructure Regions
38. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
DNS Application Data
39. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
Request DNS Application Data
40. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
Request DNS Application Data
41. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
Request DNS Application Data
Clients can’t resolve …then this is
you? irrelevant
42. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
Request DNS Application Data
Feature Details
Global Supported from AWS global edge locations for fast and reliable domain
name resolution
“100% Scalable Automatically scales based upon query volumes
Available” Route53
Latency based routing Supports resolution of endpoints based upon latency, enabling multi-
SLA region application delivery
Integrated Integrates with other AWS services allowing Route 53 to front load
http://aws.amazon.com/route53/sla balancers, S3 and EC2
Secure Integrates with IAM giving fine grained control over DNS record access
43. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
b) Make sure you open the door when they arrive
Request DNS Application Data
Route53
44. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
b) Make sure you open the door when they arrive
Request DNS Application Data
Region
Availability Zone
Elastic load balancing
Route53 Availability Zone Multi-availability zone
Multi-region
Availability Zone
Elastic
Load
Balancer Availability Zone
Region
45. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
b) Make sure you open the door when they arrive
c) Have the data to form a response
Request DNS Application Data
Region
Availability Zone
Route53 Availability Zone
Availability Zone
Elastic
Load
Balancer Availability Zone
Region
46. Rule 1: Service all web requests
a) Make sure requests get to your ‘front door’
b) Make sure you open the door when they arrive
c) Have the data to form a response
Request DNS Application Data
Region
Multi-AZ RDS Availability Zone
(Master-slave)
Route53 Availability Zone
Inter-region
replication
Availability Zone
Read-replicas
Elastic
Load
Balancer Availability Zone
Region
48. Rule 2: Service requests as fast as possible
a) Choose the fastest route
Request Route53
Region Region B
A
49. Rule 2: Service requests as fast as possible
a) Choose the fastest route
Request Route53
16ms 92ms
Region Region B
A
50. Rule 2: Service requests as fast as possible
a) Choose the fastest route
Request Route53
16ms 92ms
Region Region B
A
51. Rule 2: Service requests as fast as possible
a) Choose the fastest route
Request Route53
Region A DNS entry
16ms
Region Region B
A
52. Rule 2: Service requests as fast as possible
a) Choose the fastest route
b) Offload your application servers
CloudFront 3 Served from S3
World-wide content distribution network /images/*
Easily distribute content to end users with low
latency, high data transfer speeds, and no
commitments.
London 2 Served from EC2
*.php
Paris
1 Single CNAME
NY
www.mysite.com
53. Rule 2: Service requests as fast as possible
a) Choose the fastest route
b) Offload your application servers
Without CloudFront
EC2 webservers/app servers loaded by user
requests
54. Rule 2: Service requests as fast as possible
a) Choose the fastest route
b) Offload your application servers
With CloudFront
Load of user requests pushed into
CloudFront, EC2 cluster can scale
down
Offload
Scale
Down
55. Rule 2: Service requests as fast as possible
a) Choose the fastest route
b) Offload your application servers
No CDN CDN for CDN for
Static Static &
Content Dynamic
Content
Offload
Scale
Down
Response Time
Response Time
Response Time
Server Load
Server
Server
Load
Load
56. Rule 3: Handle requests at any scale
a) Scale up
Vertical Scaling
From $0.02/hr
Scale up with Elastic Compute Cloud (EC2)
Basic unit of compute capacity
Range of CPU, memory & local disk options
14 Instance types available, from micro through cluster
compute to SSD backed
57. Rule 3: Handle requests at any scale
a) Scale up
b) Scale out
as-create-auto-scaling-group MyGroup
Trigger
auto-scaling --launch-configuration MyConfig
policy --availability-zones eu-west-1a
--min-size 4
--max-size 200
Auto-scaling
Automatic re-sizing of compute clusters based upon demand
58. Rule 3: Handle requests at any scale
a) Scale up
b) Scale out
Manually By Schedule
Send an API call or use CLI to Scale up/down based on date and time
launch/terminate instances – Only need
to specify capacity change (+/-)
By Policy Auto-Rebalance
Scale in response to changing conditions, Instances are automatically
based on user configured real-time launched/terminated to ensure the
monitoring and alerts application is balanced across multiple
Azs
59. Rule 3: Handle requests at any scale
a) Scale up
b) Scale out
Manually By Schedule
Preemptive manual scaling of
Send an API call or use CLI to Regular scaling up and down of
Scale up/down based on date and time
launch/terminate instances – Only need
capacity instances
e.g. before a marketing event add(+/-)
to specify capacity change 10 more e.g. scale from 0 to 2 to process SQS
instances messages every night or double capacity
on a Friday night
By Policy Auto-Rebalance
Scale in response to changing conditions, Instances are automatically
Dynamic scale based upon
based on user configured real-time
Maintain capacity across
launched/terminated to ensure the
monitoringmetrics
custom and alerts application is balancedzones multiple
availability across
e.g. SQS queue depth, Average CPU load, e.g. Instance availability maintained in
Azs
ELB latency event of AZ becoming unavailable
60. Rule 3: Handle requests at any scale
a) Scale up
b) Scale out
c) Dial it up
Elastic Block Store DynamoDB
Provisioned IOPS up to 1000 per EBS Provisioned read/write performance per
volume table
Predictable performance for Predictable high performance scaled via
demanding workloads such as console or API
databases
61. Rule 4: Simplify architecture with services
Relational Database Service
Use RDS for databases Database-as-a-Service
No need to install or manage database instances
Scalable and fault tolerant configurations
DynamoDB Use DynamoDB for
Provisioned throughput NoSQL database high performance key-
Fast, predictable performance
value DB
Fully distributed, fault tolerant architecture
62. Rule 4: Simplify architecture with services
Amazon SQS Reliable message
Processing results Reliable, highly scalable, queue service
queuing without
for storing messages as they travel
Amazon SQS between instances
additional software
1
Processing
task/processing
trigger 2
Push inter-process Simple Workflow Task A
workflows into the Reliably coordinate processing steps
Task B 3
across applications
cloud with SWF (Auto-scaling)
Integrate AWS and non-AWS resources
Manage distributed state in complex
systems Task C
63. Rule 4: Simplify architecture with services
Document
Server
Cloud Search
Don’t install search Elastic search engine based upon
software, use Amazon A9 search engine
Fully managed service with
CloudSearch Search
sophisticated feature set
Server
Scales automatically
Results
Elastic MapReduce
Elastic Hadoop cluster
Process large volumes
Integrates with S3 & DynamoDB of data cost effectively
Leverage Hive & Pig analytics scripts with EMR
Integrates with instance types such as
spot
64.
65. “Amazon CloudSearch is a game-changing
product that has allowed us to deliver powerful
new search capabilities. Our customers can now
find what they are looking for faster and more
easily than ever before…
….We saved many months of re-architecture
and development time by going with Amazon
CloudSearch”
Don MacAskill
CEO & Chief Geek
SmugMug
66.
67.
68. 10 Million records
44 GB collection
more than 2,000 operations
per second
Order volumes increase
substantially during the
holidays necessitating
elasticity
70. Certification of SAP BusinessObjects business intelligence
solutions and SAP Rapid Deployment Solutions (RDS) on
Linux & Windows Server 2008 R2
Certification of SAP Business All-in-One on Linux & Windows
Server 2008 R2
Certified database engines for production SAP deployments:
MaxDB, DB2, MS SQL Server 2008 R2
71. Non production Backup, archive and Production
systems recovery systems
(dev, test, staging) (databases, AMIs) (Analytics, branch etc)
http://aws.amazon.com/sap/
72.
73. Relational Database Service
Database-as-a-Service
No need to install or manage database instances
Scalable and fault tolerant configurations
Feature Details
Platform support Create MySQL, SQL Server and Oracle RDBMS
Preconfigured Get started instantly with sensible default settings
Automated patching Keep your database platform up to date automatically
Backups Automatic backups and point in time recovery and full
DB backups
Backups Volumes can be snapshotted for point in time restore
Failover Automated failover to slave hosts in event of a failure
Replication Easily create read-replicas of your data and seamlessly
replicate data across availability zones
74. Pilot light architecture
Disaster recovery in AWS
Build resources around
replicated dataset
Keep ‘pilot light’ on by replicating core
databases
Build AWS resources around dataset and
leave in stopped state
75. Pilot light architecture
Disaster recovery in AWS
Build resources around Scale resources in AWS in
replicated dataset response to a DR event
Keep ‘pilot light’ on by replicating core Start up pool of resources in AWS when
databases events dictate
Build AWS resources around dataset and Match current production capacity through
leave in stopped state auto-scaling polcies
76. Pilot light architecture
Disaster recovery in AWS
Build resources around Scale resources in AWS in
replicated dataset response to a DR event
Keep ‘pilot light’ on by replicating core Start up pool of resources in AWS when
databases events dictate
Build AWS resources around dataset and Match current production capacity through
leave in stopped state auto-scaling policies
Switch-over to system in AWS
81. Storage Big Data Compute
Data has gravity
App Data App
http://blog.mccrory.me/2010/12/07/data-gravity-in-the-clouds/
82. Storage Big Data Compute
…and inertia at volume…
Data
http://blog.mccrory.me/2010/12/07/data-gravity-in-the-clouds/
83. Storage Big Data Compute
…easier to move applications to the data
Data
http://blog.mccrory.me/2010/12/07/data-gravity-in-the-clouds/
84. Lorem ipsum dolor sitStorage Big Data Compute
met, consectetur Bring compute capacity to the data
dipiscing elit. Etiam
Lorem ipsum dolor
uis ligula neque, eget
amet, consecte
enenatis sem. Personal
adipiscing elit. Etia
Suspendisse non eros
quis ligula neque, eg
ulla, at placerat nibh.
Cras id lectus mattis est
Very large dataset venenatis se
Suspendisse non er
llamcorper blandit.seeks strong & nulla, at placerat nibh
Proin ut nisi vitae enim
ulputate tempor. consistent compute for Cras id lectus mattis
Phasellus id commodo est ullamcorper
ros. Mauris necshort term relationship, blandit. Proin ut nisi
ignissim turpis. Nunc vitae enim vulputate
possibly longer. GSOH a tempor. Phasellus id
Cras id lectus mattis plus aws.amazon.com commodo eros.
Mauris nec dignissim
est ullamcorper
turpis. Nunc
103. Elastic MapReduce
Managed, elastic Hadoop cluster
Integrates with S3 & DynamoDB
Leverage Hive & Pig analytics scripts
Integrates with instance types such as spot
Feature Details
Scalable Use as many or as few compute instances running Hadoop as you
want. Modify the number of instances while your job flow is running
Integrated with other services Works seamlessly with S3 as origin and output. Integrates with
DynamoDB
Comprehensive Supports languages such as Hive and Pig for defining analytics, and
allows complex definitions in Cascading, Java, Ruby, Perl, Python,
PHP, R, or C++
Cost effective Works with Spot instance types
Monitoring Monitor job flows from with the management console
108. Lots of actions
by John Smith
Very large
click log
(e.g TBs)
109. Lots of actions
by John Smith
Very large
click log
(e.g TBs) Split the
log into
many small
pieces
110. Process in an
Lots of actions EMR cluster
by John Smith
Very large
click log
(e.g TBs) Split the
log into
many small
pieces
111. Process in an
Lots of actions EMR cluster
by John Smith
Very large
click log
(e.g TBs) Split the Aggregate
log into the results
many small from all
pieces the nodes
112. Process in an
Lots of actions EMR cluster
by John Smith
Very large What
click log John
(e.g TBs) Split the Aggregate
log into the results
Smith
many small from all did
pieces the nodes
113. Very large What
click log John
(e.g TBs) Insight in a fraction of the time Smith
did
118. Features powered by Amazon Elastic
MapReduce:
People Who Viewed this Also Viewed
Review highlights
Auto complete as you type on search
Search spelling suggestions
Top searches
Ads
200 Elastic MapReduce jobs per day
Processing 3TB of data
119. “With AWS, our developers can now do things they
couldn’t before…
…Our systems team can focus their energies on other
challenges.”
Dave Marin
Search and data-mining engineer
122. Overview of Kurt Geiger
Kurt Geiger are responsible for the operation of three
retail websites:
• Kurtgeiger.com
• Shoeaholics.com
• Ninewest.co.uk
In total serving upwards of a half-million page views a
day.
123. Our interest in Amazon, is to host:
• Frontend systems - three Magento installations
which the stores are built on.
• Administration systems – backend tasks, such
as product enrichment and reporting.
• Testing – load-testing systems, and other
‘sandpit’ tasks
• Research/Development – one-off installations for
investigation purposes.
124. Challenges faced by Kurt Geiger:
• Rapidly changing business needs – fast pace
makes it difficult to predict long-term
requirements
• Marketing activity – drives large traffic spikes
125. Why Amazon?
• Unique model – we’ve used several cloud providers
Amazon offer a wide range of network/server
infrastructure and services.
• Self-service – 24/7 help yourself approach, suits us to
take what we need when we need it
126. Future
• Larger capacity architectures
• More API based “pop-up” systems on demand
• Reserved instances - further cost savings
127. Benefits
• Hourly billing – the cost adapts with our current set
up, no tie-in
• Large capacity – Whether capacity will be there is not
a consideration, it just is
• Trusted provider – architecture still requires planning
for good reliability, but AWS has robust infrastructure
to build on