What is Pod in kubernetes.

A pod is the smallest execution unit in Kubernetes.

A Kubernetes pod is a collection of one or more Linux® containers, and is the smallest unit of a Kubernetes application.

A pod encapsulates one or more applications. Pods are ephemeral by nature, if a pod (or the node it executes on) fails, Kubernetes can automatically create a new replica of that pod to continue operations. 

Pods include one or more containers (such as Docker containers)

Pods represent the processes running on a cluster

Any given pod can be composed of multiple, tightly coupled containers (an advanced use case) or just a single container (a more common use case). 

Pods are tied to the Node where they are deployed and remain there until termination (according to restart policy) or deletion. In case of a Node failure, new identical Pods will be deployed on other available Nodes.

The Pod is the atomic deployment unit on the Kubernetes platform. When we trigger a Deployment on Kubernetes, it will create Pods with containers inside them, not containers directly.

Pods are created by workload resources called controllers, which manage rollout, replication, and health of pods in the cluster. For example, if a node in the cluster fails, a controller detects that the pods on that node are unresponsive and creates replacement pod(s) on other nodes.