Kubernetes

Back to Production-Engineering

Summary

Kubernetes is made up of different objects, providing abstractions and represent the state of the cluster

Architecture

Cluster Networking

Pods are the simplest unit of deployment

Services are a logical set of Pods, which allow them to be accessed by other Pods

Labels allow pods to be grouped together, tagging pods by some attributes that are useful for updating multiple pods at once (flexible update semantics for things like versions or the processes running on them)

Namespaces let you use kubernetes at scale (multiple teams)

Volumes are a storage abstraction for pods, allowing files to persist longer than the lifespan of a container, and is accessible by multiple containers in a pod

Deployment is a wrapper around the ReplicaController, which can act as a set of deployed pods, maintaining a certain replica factor.

Controllers in kubernetes are control loops that regulate state