Successfully reported this slideshow.
Your SlideShare is downloading. ×

Müssen es denn immer gleich Docker und Kubernetes sein?!

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 30 Ad

Müssen es denn immer gleich Docker und Kubernetes sein?!

Download to read offline

Docker und Kubernetes sind in aller Munde – und das auch zu Recht. Aber muss ich wirklich beide Tools in jedem Projekt einsetzen? Kann ich nicht auch eine Microservice-Architektur entwickeln und pflegen, ohne alles in Container zu packen? Am Beispiel des Backends von waipu.tv wird gezeigt, dass leichtgewichtigere Ansätze auch im Jahr 2017 (und darüber hinaus) noch ihre Daseinsberechtigung haben und dass ein stabiles Microservice-Backend auf AWS auch ganz ohne Container Spaß macht.

Event: x-celerate, 10.10.2017
Speaker: Michael Bruns (Software-Entwickler und -Architekt bei inovex)

Weitere Tech-Vorträge: https://www.inovex.de/de/content-pool/vortraege
Weitere Tech-Artikel: https://www.inovex.de/blog/

Docker und Kubernetes sind in aller Munde – und das auch zu Recht. Aber muss ich wirklich beide Tools in jedem Projekt einsetzen? Kann ich nicht auch eine Microservice-Architektur entwickeln und pflegen, ohne alles in Container zu packen? Am Beispiel des Backends von waipu.tv wird gezeigt, dass leichtgewichtigere Ansätze auch im Jahr 2017 (und darüber hinaus) noch ihre Daseinsberechtigung haben und dass ein stabiles Microservice-Backend auf AWS auch ganz ohne Container Spaß macht.

Event: x-celerate, 10.10.2017
Speaker: Michael Bruns (Software-Entwickler und -Architekt bei inovex)

Weitere Tech-Vorträge: https://www.inovex.de/de/content-pool/vortraege
Weitere Tech-Artikel: https://www.inovex.de/blog/

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Similar to Müssen es denn immer gleich Docker und Kubernetes sein?! (20)

Advertisement

More from inovex GmbH (20)

Recently uploaded (20)

Advertisement

Müssen es denn immer gleich Docker und Kubernetes sein?!

  1. 1. Müssen es denn immer gleich Docker und Kubernetes sein?! Michael Bruns inovex GmbH
  2. 2. › I’m perfectly fine with using Docker or Kubernetes › Really! › The same goes for Docker Swarm, Rocket, Rancher, … › No kidding! › I just like to use the right tool for the job in a proper way 2Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Disclaimer
  3. 3. 3Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Use the right tool for the job... ...and use it wisely!
  4. 4. 4Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Please allow me to introduce myself: › Software developer, architect, ... › AWS fanboy › Built quite a bit of waipu.tv › http://sayat.me/mbruns Michael Bruns inovex GmbH
  5. 5. 5Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns What did we build? AuthRegistration PlayoutEPG Recording Users Streaming ...... Third Party ...
  6. 6. › Don’t build a platform, use one - in our case: AWS › Use what’s already there: EC2, RDS, S3, Elasticsearch, Kinesis, Route53, Lambda ... › Add shared stuff (e.g. JVM, nginx) to base image (AMI) › Leave the rest to the services 6Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns How did we build it?
  7. 7. › Foster DevOps, i.e. tear down all political and technological barriers › Choose the right tool for the job: Terraform, GitLab CI, Prometheus, … › Make infrastructure reproducible 7Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns How did we build it?
  8. 8. › 50+ EC2 instances, 25+ Auto-Scaling Groups, 25+ ELBs, 75+ Security Groups › ~30m objects / 3+ TB in S3 Buckets › ~60m documents stored in Elasticsearch › 50+ Git Repositories with GitLab CI 8Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns What did we use?
  9. 9. › ~10 Lambdas (growing a lot) › 5 PostgreSQL databases, 6 Redis Caches › 75+ DNS entries › Java, JS, Clojure (and some Ruby, Lua, Go, …) › ~15 people working in 5+ locations 9Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns What did we use?
  10. 10. › Declarative definition of infrastructure › Reproducible › Local vs remote states › Easily understable 10Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Terraform
  11. 11. 11Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Terraform - Examples
  12. 12. 12Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Terraform - Examples
  13. 13. › Continuous Integration & Deployment › Pipelines › Stages, Environments, Variables, Tags, … › Easy integration of runners 13Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns GitLab CI
  14. 14. 14Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns GitLab CI - Examples
  15. 15. 15Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns GitLab CI - Examples
  16. 16. 16Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns GitLab CI - Examples
  17. 17. 17Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns The whole pipeline Local Git Repo GitLab Repo GitLab CI Build (Gradle, Leiningen, …) GitLab CI Deployment (Terraform) Dev GitLab CI Deployment (Terraform) GitLab CI Deployment (Terraform) Preview Prod auto auto manually manually GitLab CI Tests auto GitLab CI Tests auto
  18. 18. 18Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns So why didn’t we use Docker and Kubernetes?
  19. 19. › Which problem are you actually trying to solve? › Will Docker and/or Kubernetes really stop you from making the same old mistakes? › Don’t you want to avoid complexity and get going? › Is it really the platform you want to start with? 19Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Don’t put the cart before the horse!
  20. 20. 20Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns The Turducken - Creation http://www.seriouseats.com/2012/11/the-food-lab-the-ulimate-turducken.html
  21. 21. 21Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns The Turducken - Result http://www.seriouseats.com/2012/11/the-food-lab-the-ulimate-turducken.html
  22. 22. › Kubernetes & Docker is a cloud in the cloud › It adds several layers of abstraction › It takes an experienced person to handle it › You should prepare the interior first, and add the outer layers when you know how the interior works 22Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns The Turducken - Analogy
  23. 23. › We know how the interior works › We have loosely coupled services › We know which load to expect, how many customers to expect, we have a working deployment pipeline, ... › Maybe we should start using Kubernetes now after all?! 23Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns The Turducken - Conclusion
  24. 24. 24Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns So everything is great without Docker and Kubernetes?
  25. 25. › Real-life conversation from another project: › Manager: “We need Microservices!” › Me: “Ok. Why?” › Manager: “Err…” › Me: “Did you at least talk to Dev and Ops?” › Manager: “Err…” 25Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns When to consider a platform right away?
  26. 26. › Real-life conversation from another project: › Me: “Can we operate the VMs with our team?” › Manager: “No, the Ops team does that.” › Me: “Can we shift people from the Ops team to our team?” › Manager: “No.” › Me: “Ok… Then I need to talk to the Ops team.” › Manager: “You can’t, they’re too busy with their roadmap.” 26Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns When to consider a platform right away?
  27. 27. › Real-life conversation from another project: › Me: “We need two small VMs, one per data center.” › Ops: “We don’t do it that way. You’ll get three per data-center, 64 GB RAM and 6 CPUs each.” › Me: “What?! Well, alright... Is it possible to get them by this afternoon?” › Ops: “Nah, average delivery time is eight weeks.” 27Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns When to consider a platform right away?
  28. 28. 28Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns Tools will not fix your people issues! Thanks to @IanDCrosby for the inspiration!
  29. 29. 29Müssen es denn immer gleich Docker und Kubernetes sein?! - Michael Bruns One final note... Both lines have the same length? Don’t believe anything just because it’s written on a slide! Thanks to @danielbryantuk for the inspiration! > > < <
  30. 30. Vielen Dank Michael Bruns inovex GmbH Ludwig-Erhard-Allee 6 76131 Karlsruhe michael.bruns@inovex.de Twitter: @der_miggel Feedback: http://sayat.me/mbruns

×