What is Kubernetes?

What was before containerization?

Initially, in the tech world, companies use the physical server to deploy the application, and if multiple applications are running on the same server, then a few applications take more resources to run, and others might be impacted. Also, it is really challenging for organizations to manage infrastructure at a high cost.

Traditional Development

As a solution, a virtual machine comes into the picture because it’s easy to manage and maintain. Also, VMs offer many advantages over physical servers, like the capability to run multiple applications with their own operating systems and hardware resources on the same physical machine. So, it reduces management and resource costs.

Virtual Machine

Containers are the same as VMs but have some additional properties, like the fact that the application running inside the container is lightweight and shares the host machine’s OS kernel, and due to that, it does not require additional resources like VMs.

Why Kubernetes?

Features of Kubernetes

Kubernetes concepts and architecture

Generally, Kubernetes has two different nodes running for the application.

1. Master Node

The master node is responsible for managing the complete cluster.

It has four components ETCD, API Server, Scheduler, and Controller Manager.

Following are the four components of the Master Node

a) API Server

The master can communicate with all the clusters through the API server. It is the main access point to the control plane.

b) ETCD

ETCD has the following features,

c) Scheduler

d) Control Manager

Following different components that are present in the master

  1. Route Controller: Responsible for managing the networking
  2. Node Controller: Responsible for detecting the node if it is not responding.
  3. Service Controller: Responsible for load balancing to manage the load
  4. Volume Controller: Responsible for mounting and creating volume storage.

2. Worker Node

a) Kubelet

b) Kube-proxy

c) Pods

d) Container Engine

High-level Kubernetes objects

  1. Replica set: A replica set maintains a group of instances and a number of identical running pods.
  2. Deployment: Deployment maintains the desired state and versioning.
  3. Volume: Kubernetes provides stable storage services in the form of volumes that persist data for the whole lifetime of the pods.
  4. Service: Inside the node, multiple pods are in the running mode under the selector, so in that case, the service manages DNS addresses for them.

This is all about Kubernetes.

Happy Learning!