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.

PuppetConf 2016: Scaling Puppet on AWS ECS with Terraform and Docker – Maxime Visonneau, Trainline

511 views

Published on

Here are the slides from Maxime Visonneau's PuppetConf 2016 presentation called Scaling Puppet on AWS ECS with Terraform and Docker. Watch the videos at https://www.youtube.com/playlist?list=PLV86BgbREluVjwwt-9UL8u2Uy8xnzpIqa

Published in: Technology
  • Be the first to comment

PuppetConf 2016: Scaling Puppet on AWS ECS with Terraform and Docker – Maxime Visonneau, Trainline

  1. 1. Puppet at Scale using Terraform & ECS
  2. 2. 2 Maxime VISONNEAU Principal DevOps Engineer @mvisonneau
  3. 3. The story behind this talk.. 3
  4. 4. Agenda  Terraform and ECS?  Why?  How?  Beyond! 4Puppet at Scale using Terraform & ECS
  5. 5. 5 TERRAFORM  Infrastructure as a Code  Execution plans  Resource graph  Change automation  Open Source  Strong community  Enterprise support https://github.com/hashicorp/terraform
  6. 6. Alternatives to Terraform 6Puppet at Scale using Terraform & ECS CloudFormation Tied to AWS Not made for that
  7. 7. 7 ECS  Container management service  Highly scalable  Highly available  Managed through AWS SDK/API/CLI  Maintained by AWS
  8. 8. Alternatives to ECS 8Puppet at Scale using Terraform & ECS GO AHEAD!
  9. 9. Why? 9
  10. 10. Use case Client / Server architecture  Certificate Authority  Server workloads  PuppetDB for reporting, with a human friendly interface on top of it Lets keep it opensource for now 10Puppet at Scale using Terraform & ECS
  11. 11. Why not masterless ? 11
  12. 12. So why then ? 12
  13. 13. Because we can! 13
  14. 14. The love of the sport! 14
  15. 15. SPEED! 15
  16. 16. 16 0 100 200 300 400 500 600 ECS EC2 seconds
  17. 17. 17Puppet at Scale using Terraform & ECS Pros  Speed of scale  Scalability  Reliability / Availability  Additionnal level of abstraction  Enhanced compute resources sharing  No chicken/egg issue at Puppet is not configuring itself anymore Cons  Complexity  Operability The TCO will depend on where you currently are regarding your implementation of containers at scale.
  18. 18. How? 18
  19. 19. First things first! 19
  20. 20. The Puppet Code 20Puppet at Scale using Terraform & ECS
  21. 21. One step at a time! 21
  22. 22. The Certificate Authority 22Puppet at Scale using Terraform & ECS
  23. 23. The Puppet Server 23Puppet at Scale using Terraform & ECS
  24. 24. The Puppet DB 24Puppet at Scale using Terraform & ECS
  25. 25. The puppetboard 25Puppet at Scale using Terraform & ECS PuppetDB
  26. 26. Assembling the pieces together 26
  27. 27. 27
  28. 28. And there it is.. 28
  29. 29. SHOWTIME! (time to pray the demo gods) 29
  30. 30. 30
  31. 31. Room for improvement (a big one!) 31
  32. 32. How could we make it better ? Service discovery Move away from load balancers and enhance portability Use a unikernel Improve immutability of the base image we use Monitoring What we don’t monitor never fails Abstract data persistence Will enable the portability of the solution onto another provider 32Puppet at Scale using Terraform & ECS Change scheduler Improve operability and be cloud provider agnostic
  33. 33. How could we make it better ? 33Puppet at Scale using Terraform & ECS
  34. 34. That’s it! 34
  35. 35. Time for questions (and answers if possible..!) 35

×