docker_advanced_k8s_deploy_pod_deployment

This is an old revision of the document!


Finally, we managed to come to the atomic unit in Kubernetes: Pods. But what is a pod ? Well it is simple:

  • Hypervisors have VM
  • Docker have Containers
  • Kuberenets have Pods

You can think of a pod of something between container and a VM. Unlike VM they are mortal, when they die, we just bring a new one, unlike containers though, they have IPs. Generally a pod has a single container in it, but there are exceptions.

The lifecycle of a pod is the following:

  1. We present a manifest file to the API server
  2. The api server loads the containers, download, install, all that crap and puts it in “pending” state
  3. If it doesn't fail it is put in “Running state”
  4. Again if it doesn't fail it is put in “Succeeded” state
  5. If it fails in any of the previous state, it is put in: “Failed state” and we have to inspect our manifest fail or whatnot. WE DON'T WORK WITH THE FAILED PODS, WE DON'T CARE, THEY ARE DEAD, FINITO :)

Here is a picture for visual reference:

  • docker_advanced_k8s_deploy_pod_deployment.1588343847.txt.gz
  • Last modified: 2020/05/01 14:37
  • by andonovj