Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

DIY Heroku using Amazon ECS and Terraform

569 views

Published on

Getting a Rails app, a Java app, Ruby clients, Amazon ECS, Kinesis & Athena all to play nicely together. We'll take a look at how easy it is to get a "personal Heroku" running on AWS with Terraform. We'll look at the example of https://www.ratelim.it

Published in: Technology
  • Be the first to comment

  • Be the first to like this

DIY Heroku using Amazon ECS and Terraform

  1. 1. Boston.rb April 11, 2017 ____________________________________________________ © 2017 ezCater, Inc. 1
  2. 2. Welcome to ezCater! ++ +
  3. 3. Welcome to ezCater! ++ +
  4. 4. engineering.ezcater.com
  5. 5. Who am I? http://twitter.com/jdwyahJeff Dwyer
  6. 6. Who am I?
  7. 7. Who am I?
  8. 8. Who am I?
  9. 9. Who am I?
  10. 10. TONIGHT • Why do I think RateLimits are amazing? • The RateLim.it Architecture • DIY Heroku with Amazon ECS & Terraform • Big Data for Cheap: AWS Athena
  11. 11. RateLimits!
  12. 12. RateLimits!
  13. 13. RateLim.it Architecture
  14. 14. RateLim.it Architecture
  15. 15. RateLim.it Architecture
  16. 16. RateLim.it Architecture
  17. 17. RateLim.it Architecture
  18. 18. RateLim.it Architecture
  19. 19. Amazon EC2 Container Service (ECS)
  20. 20. Amazon EC2 Container Service (ECS)
  21. 21. RateLim.it Architecture
  22. 22. RateLim.it Architecture
  23. 23. RateLim.it Architecture
  24. 24. RateLim.it Architecture
  25. 25. RateLimits!
  26. 26. DIY Heroku with Amazon ECS & Terraform
  27. 27. So how do I actually deploy? 1) Build a Docker Image and push it to your docker repository 1) docker tag whatsize_ecr:36ba45 2) Create a new ECS “Task” that points to 36ba45 3) Tell the ECS Service to start running 36ba45 instead. 4) Sit back and watch the Magic!
  28. 28. Why ECS? • Frankly it’s easier than the alternatives • Runs anything that you can Docker • Blue/Green Deployments out of the box • Decent UI • Deep understanding of autoscaling • Very cost efficient. Bin Packing.
  29. 29. How do I start ECS?
  30. 30. API Usage Logging
  31. 31. API Usage Logging
  32. 32. API Usage Logging
  33. 33. AWS Athena
  34. 34. Wrap? – ECS is awesome!! You may really like it. – https://github.com/jdwyah/rails-docker-ecs-datadog-traceview-terraform – Need RateLimits or featureflags? Try https://www.ratelim.it • Ruby Library https://github.com/jdwyah/ratelimit-ruby • Java library https://github.com/jdwyah/ratelimit-java – Subscribe to http://engineering.ezcater.com – https://twitter.com/jdwyah – Questions?

×