• Save
AWS Customer Presentation - Reddit.com
Upcoming SlideShare
Loading in...5
×
 

AWS Customer Presentation - Reddit.com

on

  • 1,204 views

Customer Presentation by Reddit.com at the AWS Cloud for the Enterprise Event in LA on October 15, 2009

Customer Presentation by Reddit.com at the AWS Cloud for the Enterprise Event in LA on October 15, 2009

Statistics

Views

Total Views
1,204
Views on SlideShare
1,198
Embed Views
6

Actions

Likes
5
Downloads
0
Comments
0

1 Embed 6

http://www.slideshare.net 6

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • community where people come together <br /> share and discuss interesting things on the internet <br /> such as links to other stuff or their own content.
  • reddit is a subsidiary of Conde Nast. <br /> They are a multi-billion doallar media conglomorate that owns <br /> TV, newspapers, and <br /> some of the biggest brand names in publishing, <br /> such as Vogue, GQ, etc
  • They also have a lot of webistes (other than reddit). <br /> currently doing an EC2 proof of concept with <br /> Vogue UK <br /> and wired.com is also using EC2 for some of their site functionality. <br /> <br /> <br /> <br /> But reddit is by far the biggest user of EC2 in Conde Nast.
  • Been AWS user since almost the begining
  • When we started, we had a custom logo almost every day.
  • Unfortunately, allowing the designer SVN access was untenable. <br /> <br /> <br /> <br /> So we signed up for S3, and everything was great!
  • Now have over 20 million items in a single s3 bucket.
  • This is a graph of actual costs vs. what we could have spent on EC2. <br /> <br /> <br /> <br /> you can see the spike every time we had to get <br /> a new cabinet full of servers
  • So we had to make a decision
  • This was before Amazon offered the Virtual Private Cloud service. <br /> <br /> <br /> <br /> Ran like this for about 7 months, slowing adding new machines as necessary. <br /> <br /> <br /> <br /> This went so well we decided to move our whole site to EC2
  • started by migrating all the data that could be done ahead of time <br /> <br /> <br /> <br /> set up replication to keep the data up to date
  • multiple zones <br /> beta/staging is elastic <br /> app servers are elastic
  • What our datacenter would have cost <br /> vs. <br /> what we pay now <br /> <br /> <br /> <br /> 29% cheaper!
  • Time to market is faster <br /> because I no longer have to wait for servers <br /> or set them up. <br /> <br /> <br /> <br /> i can get capacity when i need it
  • As Amazon upgrades their hardware, I can move up to better stuff.
  • Don&#x2019;t have to pay for capacity we don&#x2019;t need. <br /> <br /> <br /> <br /> I can shut down servers at night, or if a product doesn&#x2019;t take off
  • But moving to EC2 wasn&#x2019;t all roses
  • Virtualized hardware just doesn&#x2019;t get sub-millisecond response times. <br /> <br /> <br /> <br /> We had to rethink how we used memcached, <br /> making less calls for more data at a time
  • Due to the redundant and network based nature, <br /> sometimes the underlying drive has to remirror <br /> or the network may be momentarily unavailable. <br /> <br /> <br /> <br /> This can be avoided by having read slaves and caching <br /> It forced me to add read slaves I should have had anyway
  • It is a new paradigm you have to get used to. <br /> <br /> <br /> <br /> Ideally the machine can be told to boot and <br /> then be ready with no user intervention.
  • I can&#x2019;t stress this enough.
  • Eric Hammond&#x2019;s runurl to trigger a push <br /> of the keys to only authorized hosts.
  • get a whole application stack in at least 2 zones
  • aka. nosql. <br /> <br /> <br /> <br /> We&#x2019;re mostly there, just a few more bits
  • A more functional style of programming <br /> is generally more reliable in exchange for <br /> eventual consistancy
  • We are open source, so go to <br /> code.reddit.com to see our source.
  • This the website of our book <br /> which we hope to start filling with lots <br /> of useful stuff soon. <br /> <br /> <br /> <br /> stay tuned. <br /> <br /> <br /> <br /> thank you.

AWS Customer Presentation - Reddit.com AWS Customer Presentation - Reddit.com Presentation Transcript

  • Jeremy Edberg Text Operations Manager reddit.com http://www.revolutioncloud.com
  • What is reddit? • reddit is an online community http://www.revolutioncloud.com
  • Conde Nast owns reddit http://www.revolutioncloud.com
  • Conde Nast websites http://www.revolutioncloud.com
  • Timeline April 2006 -- S3 for logos September 2007 -- S3 for thumbnails November 2008 -- EC2 for batch processing May 2009 -- EC2 for entire site http://www.revolutioncloud.com
  • What led us to AWS (part 1) • Needed an easy way to distribute and upload our logo http://www.revolutioncloud.com
  • http://www.revolutioncloud.com
  • What led us to AWS (part 2) • Thumbnails! http://www.revolutioncloud.com
  • What led us to AWS (part 3) • Didn’t want to rent another cabinet http://www.revolutioncloud.com
  • What led us to AWS (part 3) • Didn’t want to rent another cabinet • Didn’t want to buy more servers http://www.revolutioncloud.com
  • What led us to AWS (part 3) • Didn’t want to rent another cabinet • Didn’t want to buy more servers New Servers New Servers http://www.revolutioncloud.com
  • Imaging and Racking Servers Is A (Sometimes Fun) Chore http://www.revolutioncloud.com
  • EC2 for Overflow • Used openvpn to create a secure link to our datacenter for batch processing http://www.revolutioncloud.com
  • Moving to EC2 • Started by migrating all data http://www.revolutioncloud.com
  • Moving to EC2 • Started by migrating all data • Got a complete stack running on EC2 http://www.revolutioncloud.com
  • Moving to EC2 • Started by migrating all data • Got a complete stack running on EC2 • Long Saturday night finishing the migration and “forklifting” the last bits of data http://www.revolutioncloud.com
  • Architecture http://www.revolutioncloud.com
  • Stats • 190 Virtual CPUs • 338GB of RAM • 9TB of Elastic Block Storage • 2TB of S3 Storage • 6.5 TB of Data Out / mo • 2TB of Data In / mo • 150M+ Pageviews and just one sysadmin! http://www.revolutioncloud.com
  • Benefits Data Center (per month) EC2 (per month) Servers: $6K Servers: $13K Cabinet (x3): $15K Storage: $1.5K Bandwidth: $2.5K Bandwidth: $1.1K Support: N/A Support: $1.2K Total: $23.5K Total: $16.8K 29% Cheaper! Based on Amazon public pricing, reddit open source Estimated Pricing code, and public configuration information http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore • No racking or imaging servers anymore http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore • No racking or imaging servers anymore • Time to market is faster http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore • No racking or imaging servers anymore • Time to market is faster • Multiple physical locations with AZs http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore • No racking or imaging servers anymore • Time to market is faster • Multiple physical locations with AZs • Get “free” upgrades http://www.revolutioncloud.com
  • Benefits • Don’t have to procure servers anymore • No racking or imaging servers anymore • Time to market is faster • Multiple physical locations with AZs • Get “free” upgrades • Elasticity! http://www.revolutioncloud.com
  • Pain Points http://www.revolutioncloud.com
  • Pain Points http://www.revolutioncloud.com
  • Pain Points Higher Latency Workaround: Fewer network calls, ask for more data at a time. http://www.revolutioncloud.com
  • Pain Points EBS sometimes slows down a bit Workaround: Use caching and replication with read slaves to avoid relying on a single disk. http://www.revolutioncloud.com
  • Pain Points Instances go away sometimes Workaround: Avoid single points of failure and make sure your servers have automated configuration. http://www.revolutioncloud.com
  • Pain Points Fixing these issues made our app more reliable and highly available. We are better off than when we started. http://www.revolutioncloud.com
  • Best Practices • Keep data in multiple Availability Zones http://www.revolutioncloud.com
  • Best Practices • Keep data in multiple Availability Zones • EBS for all persistent data http://www.revolutioncloud.com
  • Best Practices • Keep data in multiple Availability Zones • EBS for all persistent data • Snapshots http://www.revolutioncloud.com
  • Best Practices • Keep data in multiple Availability Zones • EBS for all persistent data • Snapshots • No secret keys on the instance http://www.revolutioncloud.com
  • Best Practices • Keep data in multiple Availability Zones • EBS for all persistent data • Snapshots • No secret keys on the instance • Different functions in different Security Groups http://www.revolutioncloud.com
  • Best Practices • A full stack in each zone http://www.revolutioncloud.com
  • Best Practices • A full stack in each zone • All data stored as key-value pairs http://www.revolutioncloud.com
  • Best Practices • A full stack in each zone • All data stored as key-value pairs • More use of queues http://www.revolutioncloud.com
  • Conclusion • AWS saves us a lot of money http://www.revolutioncloud.com
  • Conclusion • AWS saves us a lot of money • AWS gives us a lot of flexibility http://www.revolutioncloud.com
  • Conclusion • AWS saves us a lot of money • AWS gives us a lot of flexibility • Moving to AWS has forced us to build better applications and follow better IT practices. http://www.revolutioncloud.com
  • Conclusion • AWS saves us a lot of money • AWS gives us a lot of flexibility • Moving to AWS has forced us to build better applications and follow better IT practices. • http://code.reddit.com http://www.revolutioncloud.com
  • Revolution: Cloud To learn more, visit http://www.revolutioncloud.com http://www.revolutioncloud.com