Kubernetes for the Ansible users

Kubernetes for the Ansible users

The agent-less nature and simplicity are without any doubt the two key features that determined the incredible popularity of Ansible as a configuration management tool.

However, exactly when many DevOps teams started working actively on the migration from existing configuration management tools to Ansible, another open-source tool started becoming very popular: Kubernetes.
The promise of Kubernetes of being able to implement autonomous and self-healing infrastructures - both in the cloud and on-premise - led some teams to question their Ansible strategy.
How is Kubernetes impacting existing efforts on the automation and consolidation of operations with Ansible?
How can Kubernetes be used effectively in existing infrastructures already fully managed via Ansible?
Can Kubernetes and Ansible co-exist?
What's the most effective way of transitioning from Ansible to Kubernetes? Will it work?

In this talk we will try to answer these and other questions on what Kubernetes means for Ansible users.

540c59627eb80644f4859bebafa5f185?s=128

Andrea Tosatto

October 03, 2019
Tweet

Transcript

  1. Kubernetes for the Ansible users Andrea Tosatto @_hilbert_ OpenInfra Days

    2019
  2. Why this talk?!

  3. $ whoami

  4. Agenda 1. Kubernetes? Why? What? 2. Ansible for Kubernetes o

    Implementing Kubernetes o Migrating existing services to Kubernetes o Managing the lifecycle of Kubernetes applications with Ansible 3. Questions
  5. Kubernetes? Why? What?

  6. Why Kubernetes? 1. Decoupling between the work of Devs and

    Ops
  7. Why Kubernetes? 1. Decoupling between the work of Devs and

    Ops 2. High level abstraction on the infrastructure
  8. Why Kubernetes? 1. Decoupling between the work of Devs and

    Ops 2. High level abstraction on the infrastructure 3. Integrated state reconciliation mechanism
  9. Why Kubernetes?

  10. Ansible for Kubernetes

  11. Implementing Kubernetes Container Engine […] Container Engine Kubernetes VM 01

    VM 0M […] VM N1 VM NM […] Host N Host 1 [...] Network Storage APP “A” APP “B” APP “C” APP “D” APP “B” APP “E”
  12. Implementing Kubernetes Container Engine […] Container Engine APP “A” APP

    “B” APP “C” APP “D” APP “B” APP “E” Kubernetes VM 01 VM 0M […] VM N1 VM NM […] Host N Host 1 [...] Network Storage
  13. Implementing Kubernetes Container Engine […] Container Engine APP “A” APP

    “B” APP “C” APP “D” APP “B” APP “E” Kubernetes VM 01 VM 0M […] VM N1 VM NM […] Host N Host 1 [...] Network Storage
  14. APP “A” VM 01 Host 1 Eureka! We finally have

    one tool to manage the whole infrastructure Migrating Existing Services to Kubernetes
  15. APP “A” VM 01 Host 1 Eureka! We finally have

    one tool to manage the whole infrastructure APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” Migrating Existing Services to Kubernetes Eureka! Let’s use Kubespray!
  16. APP “A” VM 01 Host 1 Eureka! We finally have

    one tool to manage the whole infrastructure APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” Migrating Existing Services to Kubernetes Eureka! Let’s use Kubespray! Eureka! Let’s use Ansible’s k8s modules!
  17. APP “A” VM 01 Host 1 Eureka! We finally have

    one tool to manage the whole infrastructure APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” VM 01 Host 1 K8S CONTAINERIZED APP “A” Migrating Existing Services to Kubernetes Eureka! Let’s use Kubespray! Eureka! Let’s use Ansible’s k8s modules!
  18. Lifecycle management of K8s apps with Ansible What about legacy

    applications, stateful service, database migrations, ..?
  19. Lifecycle management of K8s apps with Ansible + What about

    legacy applications, stateful service, database migrations, ..?
  20. Conclusions

  21. Ansible will still play a key role in the management

    of servers and infrastructure
  22. You don’t have to use Kubernetes…

  23. But eventually you might end up doing it!

  24. None
  25. Thanks! Andrea Tosatto @_hilbert_ OpenInfra Days 2019

  26. References • Kubespray: deploy a Production Ready Kubernetes Cluster with

    Ansible https://github.com/kubernetes-sigs/kubespray • Ansible Kubernetes Module https://docs.ansible.com/ansible/latest/modules/kubernetes_module.html • Ansible Operator https://www.ansible.com/blog/ansible-operator