Kubernetes →part -2 (The Architecture Part)

Aakib
3 min readMar 10, 2023

--

In Part 1 we understand the basics of K8s click here to read part 1 of k8s

Master — Slave Architecture of kubernetes →

This image showing the Architecture of kubernetes having different components discussed below

This image showing the Architecture of kubernetes cluster having different components discussed below

The architecture of kubernetes is based upon master and worker concept means there is master server which is connected to worker nodes through API’s gateway whatever masters want to do they communicate with the worker nodes through API

  1. There is one master and multiple nodes
  2. There is one master and One node
  3. There is multiple master connected to different nodes.

Different Components of kubernetes cluster →

  1. API Server → Everyone contact API server first then process.
  2. etcd-user → Having the information of what work to be done in nodes
  3. Control Manager → Make the work to be done by kube scheduler.
  4. Manifest → It is the script or the lines of code Defining what work to be done in the worker nodes
  5. Kubelet → Control the pod and give the info to ETCD-user via API
  6. Kube-proxy → Assign IP address to pod( Container does not have any IP.)

Pod → It is a smallest unit of Kubernetes cluster Containing different Number of containers

  1. Pod directly does not communicate with each other It communicate via kube proxy.
  2. Pod generally have one container because they are tightly coupled If one container get damaged or failed, other container also failed to work.
  3. If Pod failed, then a new pod is created with a new IP, but the old pod is not reborn

Working with kubernetes →

  1. 1st we create manifest(.yml)
  2. apply this to cluster(to master)to bring into desired state.
  3. Pod runs on node which is controlled by master.

Work done by Master Node→

Kubernetes cluster contain containers running on bare metal/VM instances/cloud instances /all mix.

  1. kubernetes choses one of these as master and all other as workers
  2. The master is now going to run set of kubernetes process. These process will insure smooth functioning of cluster. These processes are control panel
  3. Can be the multimaster for high availability
  4. Master runs control panel to run cluster smoothly

components of control panel →

1. kube api-server

  1. This API server interact directly with user(here we apply manifest file (.yml or json) to kube api-server This kube API server is meant to scale automatically as per load. It is front end of control panel.

2. ETCD

  1. It's stores metadata and status of cluster ETCD is consistent and high available store( key value store)

features of ETCD →

Fully replicated → The entire state is available on every node in the cluster.

Fast → Benchmarked at 10000 writes per second.

3. Kube -Scheduler →

  1. When user make request for the creation and management of Pod, kube scheduler is going to take action on these requests.
  2. Handle pods creation and management.
  3. Kube scheduler assign any node to create and run pod
  4. Scheduler gets the information for hardware configuration from configuration file and schedule the pods on nodes accordingly.

4. Control Manager →

1. Make sure actual state of cluster matches to desired state

Two choices for control Manager →

  1. If kubernetes on cloud then it will be cloud control manager.
  2. If kubernetes on non cloud then it will be kube control manager.

--

--

Aakib

Cloud computing and DevOps Engineer and to be as a fresher I am learning and gaining experiance by doing some hands on projects on DevOps and in AWS OR GCP