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

Automating Kubernetes Cluster Operations with O...

Automating Kubernetes Cluster Operations with Operators

At Giant Swarm, we manage Kubernetes clusters for customers 24/7, both on-premises and in the cloud. That means we do not just set something up and hand it over, but we actually take care that it’s operational and up-to-date at all times. This talk explains how Giant Swarm are using Operators to codify all operational tasks of managing Kubernetes cluster and distributed applications on top. The operators manage PKI infrastructures, networks, VMs and storage both on-premises and in the cloud.

Timo Derstappen

June 20, 2017
Tweet

More Decks by Timo Derstappen

Other Decks in Technology

Transcript

  1. On-premises KaaS Current focus is to manage Kubernetes in the

    DCs or AWS accounts of the customers itself.
  2. Open Source Our tooling is open-source and we are working

    with the community to improve kubernetes operations.
  3. Multiple Clusters "Soft" multi-tenancy not enough in enterprise context PCI-compliance,

    privacy laws, etc. Different environments: separation of dev, test, prod Test new K8s versions
  4. People must come to things in their own time, in

    their own way, for their own reasons, or they never truly come at all. - Dee Hock
  5. RBAC, NetworkPolicies FTW We encourage to use the features and

    integrate. Small clusters make little sense Support while processes need to be adapted Kubernetes matures - trust over time
  6. Motivation Rather obvious. If you provide others with Kubernetes because

    you think the building blocks are right, you just have to use it too.
  7. Reproducable builds and deployments at any point in time Architect

    ( ) Draughtsman ( ) https://github.com/giantswarm/architect https://github.com/giantswarm/draughtsman
  8. Certi cates Each cluster has its own root ca Using

    PKI backends in Vault Certificates are rotated every day
  9. Why are we doing this again? Fully automate deployment of

    kubernetes Continuously manage desired state of the clusters
  10. Iterations of the platform 1. K8s clusters via systemd units

    over fleet 2. K8s manifests to create K8s clusters used as templates 3. Writing operators
  11. Operatorkit Our services are based upon microkit. We've also created

    operatorkit to reduce boilerplate in our operators and collect them in a library. https://github.com/giantswarm/operatorkit
  12. Self-hosted First step Having Giantnetes and all guest clusters running

    self-hosted will further ease the lifecycle management of the clusters.