Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Accelerating DevOps with Serverless

Accelerating DevOps with Serverless

ServerlessConf Paris 2018 talk

C21584e232717e771226626c0bc2f30c?s=128

Michael H. Oshita

February 15, 2018
Tweet

Transcript

  1. Accelerating DevOps with Serverless ServerlessConf Paris 2018 Michael H. Oshita

    @ijin Feb 15, 2018
  2. Bonjour!!

  3. France <-> Japan

  4. Michael H. Oshita (@ijin) • Cloud Engineer/ Architect • From

    Japan • AWS community • Serverless community • https://ijin.github.io
  5. JAWS-UG • ~2300 members (FB) • 50+ subdivisions nationwide

  6. Serverless Community • 600+ members (FB) • Monthly Serverless meetups

    • ServerlessConf Tokyo 2016 (380), 2017 (462 attendees)
  7. Story… One example of using serverless to help and accelerate

    DevOps
  8. AGENDA • Background • Issues/Demands • Solution • Architecture •

    Demo
  9. Background (simplified)

  10. Issues • Resource (CPU, memory) bound • Maintenance (disk usage,

    server failures) • Updates (ruby, jenkins, docker version) • Sequential execution • More projects, more load
  11. New demands • Faster (concurrent) deployments • Test and deploy

    multiple versions • On-demand environments • ECS
  12. Solution: Automate

  13. Branch A

  14. Branch B

  15. Branch C

  16. Create env • Create target group • Create ALB listener

    • Create ECS service • Deploy if necessary
  17. Create env (reality) • Create target group • Create ALB

    listener • Create ECS service…….wait • Deploy if necessary
  18. Destroy env • Stop tasks • Delete service • Delete

    listener • Delete target group
  19. Destroy env (reality) • Stop tasks…wait…wait…. • Delete service…..wait •

    Delete listener • Delete target group
  20. Create env w/ step fns

  21. Destroy env w/ step fns

  22. Step Functions Serverless Step Functions plugin by @horike37 https://github.com/horike37/serverless-step-functions sls

    plugin install -n serverless-step-functions
  23. Step Functions JSON =( Not something a human should touch

  24. Step Functions YAML =) Somewhat better… ..

  25. [ Demo ]

  26. Create env (youtube: http://bit.ly/ecs-deity1)

  27. Destroy env (youtube: http://bit.ly/ecs-deity2)

  28. On-Demand env!! • Devs Happy :D • Ops Happy :D

  29. Why Serverless (Framework)? • Concurrency • Scalability • Less maintenance,

    more coding • Easy deployments (w/ frameworks)
  30. Afterthoughts • Overall satisfied • Scales pretty well • Visualization

    is awesome • Complex Obervability (Logs spread across streams)
  31. ECS Deity Sample on github: https://github.com/ijin/ecs-deity

  32. Merci :D