Your SlideShare is downloading. ×
  • Like
  • Save
Reliability & Scale in AWS while letting you sleep through the night
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Reliability & Scale in AWS while letting you sleep through the night


More and more startups/companies are deploying their infrastructure directly and exclusively in EC2 or similar cloud provider. With that comes a whole new set of challenges and paradigms around …

More and more startups/companies are deploying their infrastructure directly and exclusively in EC2 or similar cloud provider. With that comes a whole new set of challenges and paradigms around scalability, reliability and availability.

This talk will focus on how to leverage all the infrastructure parts of AWS, augment them with great (affordable) third party services and solid Open Source Software to create an operations environment that will scale with you, be as reliable as it can be, providing you and your peers with all the data you need to make good decisions to support (rapid) changes while letting you sleep through the night. And all that using a tiny operations team.

It may make you coffee in the morning too.

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. ONE MAN OPS Reliability & Scale in AWS while letting you sleep through the night Jos Boumans - @jiboumans
  • 2. ONE OF A KIND My own category
  • 3. RIPE NCCEngineering manager for RIPE Database
  • 4. CANONICAL Engineering manager for Ubuntu Server 10.04 & 10.10
  • 5. KRUXVP of Operations & Infrastructure
  • 8. 0 2,500 5,000 7,500 10,000 AVERAGE REQUESTS* / SEC *Twitter: New tweets Wikipedia: Articles read Krux: New data points
  • 9. 0 125,000,000 250,000,000 375,000,000 500,000,000 MONTHLY UNIQUE USERS
  • 12. FOCUS ON AWS
  • 13. APRIL 21, 2011…-the-review/
  • 15. JUNE 14, 2012
  • 16. JUNE 29, 2012
  • 18. THE RULES HAVE CHANGED Youre not in Kansas anymore
  • 19. NETWORK WILL PARTITION And it will happen often
  • 20. DISK IO WILL FLUCTUATE On a good day, its mediocre
  • 21. IP ADDRESSES WILL CHANGE IP lease is 8 hours DNS TTL is 60
  • 22. INSTANCES WILL DIE And it will always be your Database Master
  • 23. HUMANS MAKE MISTAKES Including your humans
  • 24. EMBRACE FAILURE Hardware will fail. Humans will make errors. Nature will produce thunderstorms.
  • 25. ADJUST YOUR STRATEGY Dont bring a knife to a gun fight
  • 26. DATA STORES Some work better than others
  • 27. RDBMS CouchDB BigTable BasedDynamo Based Master / Slave based CAP THEOREM Your choice: sacrifice availability or consistency. Orange is a lie.
  • 28. MYSQL / ORACLE VS RDS See: Network partitioning & instances dying
  • 29. BIGTABLE BASED STORES HBase, Accumulo, Hypertable Still suffer when network partitioning happens
  • 30. DYNAMO BASED STORES Cassandra, Riak, DynamoDB
  • 31. GO HOSTED? CouchDB, MongoDB, Riak, Cassandra, HBase Your Latency May Vary
  • 32. CLIENT SIDE STORAGE Keep a copy of your users data locally
  • 33. FILE STORES EBS vs Instance Store
  • 34. SIMPLE STORAGE SERVICE S3: Arguably AWS best feature
  • 35. TRAFFIC SHAPING Control every part of the request
  • 36. STAY LOCAL IF YOU CAN Going off box exposes you to risks you need to mitigate
  • 37. CACHE WHAT YOU CAN HTTP Responses, DB Queries, User content Browsers have caches too!
  • 38. USE ELASTIC LOAD BALANCERS They will save you more than once
  • 39. USE GLOBAL LOAD BALANCING Fail over to the closest data center on region failure
  • 40. SHOUT OUT: DYNDNS for, Quora, Twitter, Wikia, etc
  • 41. USE A CDN Critical items should always be available
  • 42. MEASURE EVERYTHING Find outliers, deviants & trends before they cause trouble
  • 43. GRAPHITE, STATSD & COLLECTD Use Statsd & Collectd for application/system metrics Use graphite to store, aggregate & visualize
  • 44. GRAPH EVENTS Deployments, outages, CDN reconfigurations, failed builds, etc Anything thats important to the health of your eco system
  • 45. COMPARE WEEK TO WEEK Overlay week to week graphs using timeShift() Quickly identifies trends and deviations from trends
  • 46. FORECASTING Use Holt-Winters confidence bands Verify that your metrics are within normal tolerance
  • 47. FIND INDIVIDUAL OUTLIERS Absolute numbers mean very little Use mean & standard deviation
  • 48. ALERT ON TRENDS Once you go over a threshold, its too late Alert on unwanted trends and preemptively fix
  • 49. MEASURE WITHOUT RETROFIT LogFormat "http.beacon:%D|ms" stats CustomLog "|nc -u localhost 8125" stats
  • 50. SHOUT OUT: NEW RELIC Python, Ruby, .NET, Java, PHP supportIn depth profiling of your app for performance & errors.
  • 51. CONFIGURATION MANAGEMENT Unique snowflakes are bad
  • 52. PUPPET VS CHEF Yes.
  • 53. INFRASTRUCTURE AS CODE Use different environments Measure and report on it
  • 54. SHOUT OUT: UBUNTU Ubuntu + cloud-init + boto = awesome* *I am biased
  • 55. DEV = PRODUCTION "I dunno, it worked on my laptop" Instead, use vagrant
  • 56. ROLL YOUR OWN AMIS Instantly boot up new deployments Reduce Time to Respond
  • 57. CONFIDENT DEPLOYS That human error could be yours
  • 58. CONTINUOUS INTEGRATION Ours: Github + Jenkins + FPM + apt::s3 From commit to deployable in one command
  • 59. ONE CLICK DEPLOYMENTS Deployments should not be exciting. Dont create a checklist; automate & track
  • 60. DARK LAUNCHES Exercise the code without impacting the user experience
  • 61. SHADOW TRAFFIC Test new code against live traffic
  • 62. SLEEP TIGHT Slides at: Were hiring: www.krux.com