Debug School

rijil
rijil

Posted on

K8s Architecture and Components

Kubernetes Architecture:

A k8s cluster consists of master and worker nodes.
Master nodes manages the entire cluster.
Worker nodes is where the workloads(pods) run.Each node can contain 1 or more Pods. Each pod contains one or more containers.

Master Node:

Also called control plane. Will always be a linux box.
Inorder to setup master we need 4 main softwares installed.
1) API server :
This is the front end to the k8s cluster using which users interact with the cluster. Exposes REST API. Takes input in the form of json etc.

2) Cluster Store:
Persistent storage for cluster powered by ETCD. It is like the database for the cluster always maintaining the cluster state and configs

3) Controller Manager:
Watches for changes abd helps maintain the desired state

4) kube-scheduler:
Watches apiserver for new pods. Assigns pod sceduling to nodes.

Worker Node:

Also called minions or just nodes.
Has 3 main componenets
1) kubelet:
This is the k8s agent which is an exe running on each node.
Responsible for registring node with cluster by comunicating with API server

2) Container Engine - example Docker,Rocket,containerd
Responsible for container management

3) kube-proxy:
Responsible for k8s networking. Assings IP to pods, load balances across pods

Top comments (0)