What is the future of CI & CD and why is it Containers?

What is the future of CI & CD and why is it Containers?

A talk about why containers are the future of CI and CD.

99f481c5ef312c5f3d299b5957a22a07?s=128

Andreas Mosti

April 12, 2018
Tweet

Transcript

  1. 1.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Containers? Andreas Mosti | Team Optimus What is the future of CI & CD and why is it
  2. 2.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E “The Only Thing That’s Constant Is Change“ - Heraclitus
  3. 3.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E The evolvement
  4. 4.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev/Build Runtime
  5. 5.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev/Build Runtime
  6. 6.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev/Build Runtime
  7. 7.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev/Build Runtime
  8. 8.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev/Build Runtime
  9. 9.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  10. 10.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E If you aren’t familiar, a microservice is just a fancy word that means “let’s spread our business objects all OVER the fucking place!”. - Zach Holman, ex-Github
  11. 11.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Create and deliver customer value, fast and secure
  12. 12.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Deliver smaller pieces more often
  13. 13.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E The complexity moves
  14. 14.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  15. 15.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  16. 16.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Infrastructure as code
  17. 17.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Orchestration
  18. 18.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E • The process for releasing/deploying software MUST be repeatable and reliable • Automate everything down to bare metal • If something is difficult or painful, do it more often • Keep EVERYTHING in source control • Build quality in • Everyone has responsibility for the release process • Improve Continuously The Optimus principles
  19. 19.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E • Build binaries (or any artifact that will be deployed) only once, promote many • Use precisely the same mechanism to deploy to every environment • Smoke test your deployment • Organizational policy is implemented as automated steps in the pipeline • If anything fails, stop the line The Practices are:
  20. 20.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  21. 21.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  22. 22.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  23. 23.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  24. 24.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Shipping is hard!
  25. 25.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  26. 26.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  27. 27.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E “Every large enterprise in the world is preparing to migrate their applications and infrastructure to the cloud, en masse. They need a solution to do so reliably and securely, without expensive code or process changes, and without locking themselves to a single operating system or cloud.” - Solomon Hyes, co-founder, Docker Inc.
  28. 28.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  29. 29.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  30. 30.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  31. 31.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Dev QA Stage Prod
  32. 32.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  33. 33.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  34. 34.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  35. 35.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Containers enforces simplicity
  36. 36.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  37. 37.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  38. 38.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Containers will not fix your broken culture!
  39. 39.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E People over processes over tools
  40. 40.

    E N A B L I N G E F

    F I C I E N T H E A L T H C A R E • Immutable infrastructure • Real throw-away environments • The same mechanism to deploy locally and in every environment • Different application technologies, same runtime interface • Faster and easier builds, simpler build servers, integration tests • Development speed What containers provide