K8s Components

  1. Cluster

A Kubernetes cluster is a set of nodes that run containerized applications. Containerizing applications packages an app with its dependencies and some necessary services.

They are more lightweight and flexible than virtual machines.

  1. Nodes

Nodes are physical or virtual machines in which kubernetes is installed.

  1. API Server

The API Server is the main management point of the entire cluster. In short, it processes REST operations, validates them, and updates the corresponding objects in etcd.

  1. Controller

The Kubernetes Controller Manager is a daemon that embeds the core control loops (also known as “controllers”) shipped with Kubernetes.

Basically, a controller watches the state of the cluster through the API Server watch feature and, when it gets notified, it makes the necessary changes attempting to move the current state towards the desired state.

  1. Scheduler

The Scheduler watches for unscheduled pods and binds them to nodes via the /binding pod subresource API, according to the availability of the requested resources, quality of service requirements, affinity and anti-affinity specifications, and other constraints.

  1. Etcd

Etcd is a distributed, consistent key-value store used for configuration management, service discovery, and coordinating distributed work.

  1. Kubelet

The kubelet is the main component of the Node which is located on each Node.

It’s purpose is to watch continuously the state of the pods and to send these information such as monitoring back to the kube-api-server.

  1. Kube-Proxy

The Kube proxy is a component which its purpose is to watch changes in the definition of the service of the pods in order to maintain the desired network configuration by querying kube-api-server.

  1. Pod

A pod is the basic component of Kubernetes. This is the component where your container is running. It’s represent as a process within the Kubernetes cluster.

  1. Container Runtime

The container runtime is the engine use for running the container pod. E.g: docker, rkt and many more.

Last updated