when you are installing Kubernetes on the system you are actually installing the following components

  • Api Server: acts as the front end for Kubernetes users management devices command line interfaces all talked to the API server to interact with Kubernetes cluster Kubectl is a client for this server
  • etcd service: distributed key-value store used by Kubernetes to store all data used to manage the cluster
  • kubelet: is the agent that runs on each node in the cluster, the agent is responsible for making sure that the containers are running on the node as expected
  • container runtime: the underlying software that is used to run containers (docker)
  • controller: the brain behind or orchestration they’re responsible for noticing and responding when nodes, containers, or endpoints go down.
  • Kubernetes scheduler: is responsible for distributing work or containers across multiple nodes.