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

Bringing Habitat awesomeness to Kubernetes

Bringing Habitat awesomeness to Kubernetes

Habitat is a tool to build platform-independent artifacts. In this talk I will give an introduction to Habitat & Kubernetes and then talk about why we built the habitat operator and how it helps to deploy and manage habitat artifacts in a Kubernetes cluster.t

Indradhanush Gupta

August 05, 2018
Tweet

More Decks by Indradhanush Gupta

Other Decks in Technology

Transcript

  1. The Deep-stack Kubernetes Experts Engineering services and products for Kubernetes,

    containers, process management and Linux user-space + kernel Blog: kinvolk.io/blog Github: kinvolk Twitter: kinvolkio Email: [email protected] Kinvolk
  2. What we will talk about? 1. What is Habitat? 2.

    What is Kubernetes? 3. What is a Kubernetes operator? 4. What we did with the Habitat operator?
  3. What we will talk about? 1. What is Habitat? 2.

    What is Kubernetes? 3. What is a Kubernetes operator? 4. What we did with the Habitat operator?
  4. What we will talk about? 1. What is Habitat? 2.

    What is Kubernetes? 3. What is a Kubernetes operator? 4. What we did with the Habitat operator?
  5. What we will talk about? 1. What is Habitat? 2.

    What is Kubernetes? 3. What is a Kubernetes operator? 4. What we did with the Habitat operator?
  6. What we will talk about? 1. What is Habitat? 2.

    What is Kubernetes? 3. What is a Kubernetes operator? 4. What we did with the Habitat operator?
  7. Habitat ❏ Automation tool for building and deploying your apps

    ❏ Habitat plan file (plan.sh) ❏ Habitat artifacts (.hart)
  8. Supervisor Ring --topology leader --topology leader --peer 192.168.10.10 hab start

    origin/pkg-name 2 1 3 --topology leader --peer 192.168.10.10
  9. Supervisor Ring --topology leader --topology leader --peer 192.168.10.10 hab start

    origin/pkg-name 2 1 3 --topology leader --peer 192.168.10.10
  10. StatefulSets ❏ Similar to Deployments ❏ Persistent storage (redis) ❏

    Unique network identifiers ❏ Ordered deployment and deletion
  11. user.toml is stored as a Kubernetes Secret Habitat Operator Kubernetes

    Secret name: user-toml data: user.toml: cG9ydCA9IDQ0NDQ=
  12. The secret name is referred in Habitat CRD Habitat Operator

    Habitat CRD configSecretName: user-toml
  13. Kubernetes Secret is placed in a Kubernetes Volume Habitat Operator

    Kubernetes Secret /hab/user/pkg-name/config/user.toml
  14. Habitat Supervisor --peer-watch-file ❏ Path to a config file ❏

    Contains IP addresses of peers ❏ Created and updated by the Operator ❏ IP added when new pods are created ❏ Mounted on the pod for supervisors to access