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

Navigating the Sea of Local Kubernetes Clusters

96af4f8a8f4d2fdf5827030da8848ca1?s=47 Ara
November 24, 2020

Navigating the Sea of Local Kubernetes Clusters

Your company has decided to migrate to Kubernetes. Exciting! Time to set up your development environment so you can quickly test your application changes in a real cluster. But, what should your development environment look like? Should you use minikube? kind? Something completely different?

In this demo-led session we’ll have a look at some of the tools that help you locally deploy your Kubernetes application as part of your development process. We’ll show the differences between each tool from a technical and UX point of view, so you can choose the ones that better fit your use case.

96af4f8a8f4d2fdf5827030da8848ca1?s=128

Ara

November 24, 2020
Tweet

Transcript

  1. Navigating the Sea of Local Kubernetes Clusters Ara Pulido, Technical

    Evangelist at Datadog
  2. Datadog is a monitoring and analytics platform that helps companies

    improve observability of their infrastructure and applications
  3. None
  4. None
  5. Large community Extensible and API driven Multi-cloud strategy Companies are

    choosing K8s
  6. Developer experience

  7. Photo by Pero Kalimero on Unsplash

  8. None
  9. None
  10. No :(

  11. Yes!

  12. Quick Feedback Loop Great Learning Tool Useful for CI/CD Workflows

    Why local clusters are useful?
  13. Containers

  14. Linux Containers

  15. The sea of local Kubernetes clusters

  16. None
  17. KIND MINIKUBE K3S / K3D The sea of local Kubernetes

    clusters MICROK8S
  18. minikube

  19. Cross platform (Linux, MacOS, Windows) Started in 2016, a year

    after the first Kubernetes release Follows Kubernetes stable releases minikube LoadBalancer, NodePort, Ingress, Container Runtimes Add-ons based Single node cluster
  20. minikube

  21. minikube

  22. None
  23. None
  24. None
  25. None
  26. None
  27. None
  28. kind

  29. Designed for automated testing of Kubernetes itself (CI/CD) Started in

    2019 Uses ”container nodes” with systemd, a CRI, Kubernetes kind Multi-node cluster Works anywhere Docker works Very lightweight; very fast
  30. kind

  31. kind

  32. None
  33. None
  34. None
  35. None
  36. None
  37. None
  38. k3s / k3d

  39. flanneld CNI by default Lightweight K8s distribution for developers &

    IoT Multi-node cluster k3s Packaged as a single binary Originally created by Rancher; now CNCF Sandbox project
  40. k3s

  41. k3s

  42. None
  43. None
  44. None
  45. None
  46. None
  47. None
  48. None
  49. Installation script detects your OS and install the binary Wrapper

    to launch K3s clusters in Docker Multi-node cluster k3d Nodes are containers
  50. None
  51. None
  52. None
  53. None
  54. None
  55. None
  56. microK8s

  57. Flanneld by default K8s distribution for developers & IoT Multi-node

    cluster microK8s Add-on based Packaged as a snap (Ubuntu packaging system)
  58. microK8s

  59. microK8s

  60. None
  61. None
  62. None
  63. None
  64. None
  65. None
  66. Takeaways

  67. Know how your local cluster works Local clusters are not

    production Docker in Docker is a good compromise Takeaways
  68. Thank you! Ara Pulido @arapulido datadoghq.com