(ENT211) Migrating the US Government to the Cloud | AWS re:Invent 2014
(WEB305) Migrating Your Website to AWS | AWS re:Invent 2014
-
Upload
amazon-web-services -
Category
Technology
-
view
3.389 -
download
0
Transcript of (WEB305) Migrating Your Website to AWS | AWS re:Invent 2014
© 2014 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
November 12, 2014 | Las Vegas, NV
WEB305
Migrating Your Website to AWS
Eugene Ventimiglia, Director of Technical Operations, Buzzfeed
Randall Hunt, AWS Solutions Architect
2
&
Eugene Ventimiglia
Director of Tech Operations
@eventi
BuzzFeed VS Sandy
3
That One Time BuzzFeed
Almost Broke Down
(But Didn’t)
4
Evolution of
BuzzFeed
2006
5
2007
6
2008
7
2M+
UVs
2009
8
5M+
UVs
2010
9
8M+
UVs
10
2011
20M+
UVs
11
2012
40M+
UVs
12
2013
100M+
UVs
13
2014
150M+
UVs
14
Early Hits
15
16
17
18
19
20
21
22
This is BuzzFeed:
23
This is where posts happen:
24
Here’s the network
diagram of all that:
25
This is where data is collected:
26
Here’s the network
diagram of all that:
27
The Disaster
28
6:00 AM
Hurricane Sandy Hits
RecoveryDisaster
7:00 PM
Phone call from
The President
29
RecoveryDisaster
WTF?
7:00 PM
Assessing
the damage :(
30
RecoveryDisaster
31
7:20 PM
No response from
the data center
RecoveryDisaster
32
7:40 PM
Realization that Akamai
won’t make it alone
RecoveryDisaster
33
8:00 PM
New content published
via BuzzFeed Tumblr
RecoveryDisaster
34
Database
RecoveryDisaster8:00 PM
Locating
our resources
recent snapshot at DR site@
35
Database
Codebase
RecoveryDisaster8:00 PM
Locating
our resources
recent snapshot at DR site@
@ git on CTO’s laptop
36
Database
Codebase
Web, Cache, &
Terminal Servers
RecoveryDisaster8:00 PM
Locating
our resources
recent snapshot at DR site@
@
@
git on CTO’s laptop
EC2 and Puppet
37
Database
Codebase
Web, Cache, &
Terminal Servers
Analytics Data
RecoveryDisaster8:00 PM
Locating
our resources
recent snapshot at DR site@
@
@
@
git on CTO’s laptop
25th floor of a flooded
skyscraper with no power
EC2 and Puppet
38
Database
Codebase
Web, Cache, &
Terminal Servers
Analytics Data
New Analytics
RecoveryDisaster8:00 PM
Locating
our resources
recent snapshot at DR site@
@
@
@
@
git on CTO’s laptop
25th floor of a flooded
skyscraper with no power
still being collected, but
not aggregated
EC2 and Puppet
9:00 PM
Jonah texts
datacenter’s CEO
39
RecoveryDisaster
Bro, what’s up with the server?
down for good.
40
The Recovery
9:00 PM
Data Recovery Plan
41
1. Spin up the BIGGEST RDS instance we can get
RecoveryDisaster
9:00 PM
Data Recovery Plan
42
1. Spin up the BIGGEST RDS instance we can get
2. Export (mysqldump) from DR site
RecoveryDisaster
9:00 PM
Data Recovery Plan
43
1. Spin up the BIGGEST RDS instance we can get
2. Export (mysqldump) from DR site
3. Import into RDS
RecoveryDisaster
9:00 PM
Data Recovery Plan
44
1. Spin up the BIGGEST RDS instance we can get
2. Export (mysqldump) from DR site
3. Import into RDS
4. Create read replicas
RecoveryDisaster
9:00 PM
Web/Terminal Server
Recovery Plan
45
1. Spin up a single EC2 Instance
RecoveryDisaster
9:00 PM
Web/Terminal Server
Recovery Plan
46
1. Spin up a single EC2 Instance
2. Build and configure it w/ Puppet
RecoveryDisaster
9:00 PM
Web/Terminal Server
Recovery Plan
47
1. Spin up a single EC2 Instance
2. Build and configure it w/ Puppet
3. Deploy to it w/ git
RecoveryDisaster
9:00 PM
Web/Terminal Server
Recovery Plan
48
1. Spin up a single EC2 Instance
2. Build and configure it w/ Puppet
3. Deploy to it w/ git
4. Copy it a bunch of times w/ EC2 Magic
RecoveryDisaster
9:00 PM
Web/Terminal Server
Recovery Plan
49
1. Spin up a single EC2 Instance
2. Build and configure it w/ Puppet
3. Deploy to it w/ git
4. Copy it a bunch of times w/ EC2 Magic
5. Glue it together w/ ELB
RecoveryDisaster
9:00 PM
Memcache Server
Recovery Plan
50
1. Spin up a few high memory EC2 instances
RecoveryDisaster
9:00 PM
Memcache Server
Recovery Plan
51
1. Spin up a few high memory EC2 instances
2. apt-get install memcached
RecoveryDisaster
9:00 PM
Memcache Server
Recovery Plan
52
1. Spin up a few high memory EC2 instances
2. apt-get install memcached
3. ???
RecoveryDisaster
9:00 PM
Memcache Server
Recovery Plan
53
1. Spin up a few high memory EC2 instances
2. apt-get install memcached
3. ???
4. Profit!
RecoveryDisaster
54
Here’s the network
diagram of all that:
55
9:30 PM
~Fugue State~
RecoveryDisaster
8:00 AM
**Pages Served!**
56
RecoveryDisaster
57
10:00 AM
Posts published
on site once again!
RecoveryDisaster
58
10:01 AM
Eugene gets sleep for
the first time since Sandy :)
RecoveryDisaster
59
7:00 PM
Moving database to
offsite backup in CT
RecoveryDisaster
BuzzFeed
Williamsburg
Connecticut
BuzzFeed
60
7:00 PM
Press covers itself
RecoveryDisaster
61
7:00 PM
Ashley wakes Eugene
up for press piece...
RecoveryDisaster
62
1. Live DR slave database server
in a different data center.
2. Hot spare production web
servers in multiple regions
3. FIRE DRILLS
If Hurricane Sandy Happened Today
(What We Do Differently)
63
If Hurricane Sandy Happened Today
(What I’d Do Differently)
64
If Hurricane Sandy Happened Today
(What I’d Do Differently)
65
Thanks!
Eugene Ventimiglia
Director of Tech Operations
@eventi
Migrate with phases
• Assessment• Proof of concept• Data migration• Application migration• Optimize for the cloud
Cloud assessment
Assessment phPhase
• Financial assessment
• Security and compliance
• Technical assessment
• Define success metrics!
@caarlco
ON-PREMISES
Experiment infrequently
Failure is expensive
Less innovation
Experiment often
Fail quickly at a low cost
More innovation
$ Millions Nearly $0
@caarlco
+ ELASTIC CAPACITY
+ NO CAPEX
+ PAY AS YOU GO
+ AVAILABLE ON-DEMAND
= NO RISKS
Condé Nast
+ 500+ servers
+ Petabytes
+ 100s of databases
+ Mission-critical apps
= 40% reduction in cost
Security and compliance
• Classify your data
• Identify regulatory obligations
• Identify security threats
• Know your options
• Geographic isolation / choice
• Amazon VPC
• AWS Direct Connect
• Encrypted storage
• Granular permissions
Dow Jones
• Migration in 6 weeks
• HA with AZs
• B(ring)YO licences
• 30% increase in development velocity
• 25% cost savings per year
Technical assessment
• Which apps do you move first?
• What can we reuse?
• Latency reqs?
• Bandwidth reqs?
Proof of concept
Learn the tools
• Build a non-production MVP
• Learn to use the CLI, APIs, console, etc.
• Now take it to production:
– Overcome legal, cultural, etc. problems
– Identify problems with your assessment
– Try to break it
Assessment
Proof of concept
Data migration
Amazon storage landscape
• Amazon S3
• Ephemeral storage
• Amazon EBS
• Amazon Glacier
• Amazon ElastiCache
• Amazon RDS
Import/export service
Application migration
Migration strategies
• Forklift (AKA buzzfeed/sandy):
– Move it all at once
– Best for: low latency, archival
• Hybrid
– Low risk
Optimize for the cloud
Spot instances!
Please give us your feedback on this session.
Complete session evaluations and earn re:Invent swag.
http://bit.ly/awsevals