Defined k8s in Vishal’s words

what is k8s?

k8s is a platform where we orchestrate containers.
Used for automating the deployments.
Scaling and management of containerized applications
Comprises master Node and Worker Node.
Platform where you can declare your desire
Originates from Greek word–>helmsman which means pilot

why k8s?

We need k8s to:

manage the containers
Ensure the availabilty(no downtime)
helps with cluster storage
helps with self healing
load balancing

how it works?

k8s have two parts overall i.e master and Worker Node

Master comprises:
kube apiserver–>talks to worker node(request is passed through api server), its the the front end of k8s control plane
etcd–>sort of db, stores info in key and value
scheduler–>assigning the work to node worker based on inputs from api server
Controller manager–>manages the controller. Check scripts running in a loop and updates the api server for example node is up etc

Worker Nodes:

kubelet: it is an agent that runs on each node in the cluster, make sure that container is running. Also, checks the health
kube-proxy–>its nothing but a n/w proxy runs on each node of the cluster. Its allows intra and outside n/w communications to the pods.it can also forward the traffic.
pod:group of one or more containers deployed on the same host. It is ephemeral in nature.
Container runtime: responsible to run the container

The Master Nodes communicate with worker Node using kube Api server

what is POD?

Group of one or more containers deployed on the same host and are the smallest unit in k8s. Each pods has its own unique IP address. It allows to share the storage among the containers.

Network sharing can also be done.