Greek for Helmsman or Pilot
Takes care of the complete logic, give it a declarative manifest and it takes care of everything
Leading cluster manager or orchestrator for microserviced app
Cluster essentially a bunch of masters and nodes
Gives api manifest files to tell it how we want it to look and feel, describe what you want, kubernetees takes care of everything
manifest file - desired state of cluster
Post, replication controllers, deployments and services are all REST objects in the kubernetes API
Never run a container outside of a pod or have it not being managed by the kubelet
Keep the master free of workloads, leave it to look after the cluster
kube-apiserver - front end to control the plane, only component we really deal with a.k.a master, no other components expose an endpoint for us, come usually by the kubectl via JSON
cluster store - persistent storage, cluster state and config, uses etcd, no sql database, source of truth for the cluster
kube-controller-manager - node controller, endpoint controller, namespace controller, watches for changes
kube-schedules - watches for new pods and assigned it to server
usually just one master but multi-master configs are possible