How does Kubernetes create a Pod?

Поделиться
HTML-код
  • Опубликовано: 22 ноя 2024

Комментарии • 74

  • @insoucyant
    @insoucyant Месяц назад +1

    This is the best video (that I have seen) on Kubernetes. Thank you!

  • @ftate
    @ftate 3 года назад +19

    Great description. I really like that you chose a specific, isolated use case (pod creation), and then you describe exactly what's involved.

  • @Jake26572t
    @Jake26572t Год назад +1

    This is the greatest video of all time for beginners in Kubernetes.

  • @ReflectionOcean
    @ReflectionOcean 2 года назад +13

    Steps in creating a new pod:
    1. A user submits a new configuration with kubectl to kube-API Server
    2. Kube-API Server writes the configuration to etcd
    3. Scheduler compares the configuration to actual state
    4. Scheduler informs kube-API Server of which compute node(s) to schedule the workload
    5. Kube-API Server requests corresponding Kubelets to create the new pod
    6. Kubelet creates a new pod
    7. Kubelets report latest status to kube-API Server
    8. Kube-API Server updates the actual state in etcd

    • @AminSoftwareEngineer
      @AminSoftwareEngineer 11 месяцев назад

      Nice summary! I also listed the pod state during the process, in a comment below: ruclips.net/video/BgrQ16r84pM/видео.html&lc=UgwWzlBMj4ka5IJsxE54AaABAg

  • @rakeshsrinivasa1808
    @rakeshsrinivasa1808 3 года назад +8

    The Best video which explained the Pod creation

  • @ashok110180
    @ashok110180 2 года назад +3

    I have been learning about Kubernetes for past one week and came across your video and it gave me an deep understanding about various stages of pod creation. Thanks much.

  • @AminSoftwareEngineer
    @AminSoftwareEngineer 11 месяцев назад +3

    I noticed you didn't mention the Pod state during this process.
    Here it is:
    1. After Kube-API server returned "created" response to user, the pod's state will be "pending"
    2. After scheduler set the node for that pod, Pod's state will be "creating"
    3. After Kubelet created the pod, state will be "running"
    4. If the pod is failing and restarting, state will be "Crash loop back off"

  • @seiyace8001
    @seiyace8001 Год назад +3

    i was looking for a simple explanation and it was soo difficult to find out. Thank you soo much for this video and the quality of your explanations!!

  • @aeytube3967
    @aeytube3967 2 года назад +2

    honestly the best explanation over web!!

  • @nishantgupta2510
    @nishantgupta2510 3 года назад +1

    Surely one of the coolest way to explain k8s pod creation 👍👍

  • @aasthamohania2173
    @aasthamohania2173 2 года назад +1

    Best and simple way how pod is created
    Thanks a lot

  • @ReflectionOcean
    @ReflectionOcean 2 года назад +1

    kubelet does a few things:
    1. register compute nodes
    2. report status
    3. start/stop workload

  • @ManhNguyen-ik8kl
    @ManhNguyen-ik8kl 7 месяцев назад

    thanks for your explanation. But i am still confused about pod and container. can you explain?

  • @gouravsalla
    @gouravsalla Год назад

    I think one more thing needs to addressed here ,that is CNI for communication between pods , we have several of them like weave ,calico, flannel etc

  • @dewaynebranch776
    @dewaynebranch776 Год назад +1

    Great explanation

  • @vaishnavixx
    @vaishnavixx Год назад +1

    excellent presentation !

  • @b4shman
    @b4shman Год назад +1

    A great explanation, good didatic. Thanks for your contribution 👏

  • @sebastienpiller4061
    @sebastienpiller4061 3 года назад +2

    Great introduction to the architecture of k8s. Well explained and clear.

  • @KloudEnrich_RameshkumarB
    @KloudEnrich_RameshkumarB 3 года назад +1

    very good explanation....

  • @SumitSharma-hd1cl
    @SumitSharma-hd1cl 2 года назад

    Is the actual state also stored in etcd ? How are the components aware of the actual state ?

  • @kemibrianolimba682
    @kemibrianolimba682 Год назад

    Great explanation...thanks. this video. Would it be a bad idea if this video can be used in the IBM Cognitive Class Course called Introduction to Containers, Kubernetes, and OpenShift V2? (it's easier to conceptualize)

  • @VijaykumarBisalahalli
    @VijaykumarBisalahalli 2 года назад

    I was prepared for the question explain K8s architecture. But this question came in interview🙂

  • @DooMonTouR
    @DooMonTouR 2 года назад +1

    Perfect, all i needed !

  • @muertaqueen
    @muertaqueen Год назад +1

    5:12 CRI = Container Runtime Interface
    I think you are confusing it with OCI: Open Container Initiative.

    • @movingelite
      @movingelite 10 месяцев назад

      may be she just want to say container runtime -containerD

  • @somesekhar
    @somesekhar 10 месяцев назад

    The Scheduler & Control Manager relies entirely on the information supplied by the API server to execute their functions. In the event of the API server being unavailable, these components would also cease to function. The question arises: in a loosely coupled microservices environment, why do we have separate components that are dependent on others? Why can't the API server itself handle the tasks of both Control and Scheduler, eliminating the need for additional components with interdependencies?

  • @sSP1878
    @sSP1878 2 года назад

    Great overview. Is it same flow while creating a deployment or any differences?

  • @ReflectionOcean
    @ReflectionOcean 2 года назад

    kube-proxy is for communication between compute nodes

  • @TheSoulCrisis
    @TheSoulCrisis 2 года назад

    I love the logical processes you showcase.......damn cool!

  • @PSCS_RakshithM
    @PSCS_RakshithM Год назад

    Can anyone tell me in detail how the scheduler will know when to assign the pod to a node

  • @pratrips
    @pratrips 3 года назад

    Wonderful description

  • @MoMadNU
    @MoMadNU 2 года назад

    Can we just take a moment to appreciate how well Whitney can effortlessly write in mirror image 🙂

  • @call_of_duty1327
    @call_of_duty1327 3 года назад

    Then what is the role for istio service mesh..... And also provide full video on kubernetes security of nodes

    • @livn.686
      @livn.686 3 года назад +1

      You should browse the channel for Sai Vennam's videos (among others). He's made plenty about k8s-related technologies.

  • @zindagiekhasinlamha9643
    @zindagiekhasinlamha9643 3 года назад

    How we restore back any pod that went to crashloopback off? This process is auto or manual?

  • @bafanabennet6490
    @bafanabennet6490 3 года назад +1

    How can a single container (host) be run using this method and also run multiple pods with containers in them ?

    • @livn.686
      @livn.686 3 года назад +1

      With k8s the atomic unit is the pod. If you just want to run a single instance of a container image you'd just have to create a pod referencing that image.

    • @juanitoMint
      @juanitoMint 3 года назад

      To run multiple container in a single pod you have to define them usually on a deployment

  • @DonPandon
    @DonPandon 3 года назад +6

    How do they make these videos? Do they have to learn how to write backwards? I don't think so... Do they?

    • @sohailselky8128
      @sohailselky8128 3 года назад +1

      I imagine they just flip the image

    • @DanielDybing
      @DanielDybing 6 месяцев назад

      They write on a transparent wall, and then just flip the video horizontally so that the text is presented the correct way for the viewer.

  • @hiteshsuthar1097
    @hiteshsuthar1097 3 года назад

    Nicely explained

  • @diegososa1367
    @diegososa1367 Год назад

    ty

  • @SyangjaliThitoMagar
    @SyangjaliThitoMagar 3 года назад

    Nicely explained 👌

  • @rakesh271284
    @rakesh271284 3 года назад +1

    So I am a data scientist and hence mostly an end user of the pods.. thanks for the explanation. So when we create a pod it assigns a random generated (available) ip that I should use for the compute. In my case I was using a jupyter notebook. Since pods are ephemeral like you mentioned, we need to attach a disk to the vm/pod which is always available to me. One time while running some python commands, my pod crashed and I got assigned another vm ip but the person who got assigned the vm ip I was using until then got my jupyter notebook saved on his disk. What could have happened? I am intrigued.

    • @juanitoMint
      @juanitoMint 3 года назад +1

      Seems like a race condition... your pod got killed but respawned just fine due to restartPolicy = always (by default) the that same pod got assigned to someone else
      To avoid that I suggest set the restartPolicy to never or create a control plane that control the lifecycle of your pod so you always get the same pod until you dont need it anymore
      makes sense?

  • @junseo1213
    @junseo1213 3 года назад

    doesn't ETCD store dns / ip for pod communication? and one more question is that which component generate full DNS name for pod?

    • @techno-geek6116
      @techno-geek6116 Год назад +1

      coreDNS is another plugin which does this job. it stores the FQDN for services created within same k8 cluster.

  • @pavelgalagan1124
    @pavelgalagan1124 3 года назад +1

    it`s cool !!! thanks!

  • @addy2602
    @addy2602 2 года назад

    Can replication controller recreate the pod by itself or does it talk to kubelet to restart the pod?

    • @techno-geek6116
      @techno-geek6116 2 года назад

      i think replication controller will talk to kube-api and kube-api to kubelet , to recreate the new pod with same config. it will not restart the same pod as pods are ephemeral. Also there will be small role of scheduler as well, as it will tell on which node that new pod will be recreated, either same node or new node, depending on node availability.

    • @movingelite
      @movingelite 10 месяцев назад

      ETCD contain the desired state of the pod. as control manager has the health status of the node, when the pod dies , control manager -> write to api-> api will checks and write to ETCD and back to API-> when scheduler gets to know pod need to be created from API -> it starts the process.

  • @nullentrophy
    @nullentrophy 2 года назад

    Labs wont work for me. Error: Service is currently restricted and is available only to certain users

  • @supun_sandaruwan
    @supun_sandaruwan 3 года назад

    great content. awesome video..

  • @akshayhiremath4584
    @akshayhiremath4584 3 года назад

    When the pod dies who lets API server know the pod is dead? Is it kubelet?
    The video moves to controller manager and says that controller manager goes to Kube API server and gets to know the pod is down.
    But the state of the pod on the Compute node need to be conveyed back to the API server, isn't it?

    • @angelbythewings
      @angelbythewings 3 года назад

      yeah ofcourse, not only does the kubelet convey the state of pods in the node, but also informs the controller about the CPU and memory resources of the node

  • @priyanshushekhar8736
    @priyanshushekhar8736 3 года назад

    what happens after the controller manager identifies that there is pod which has to be reschedule? i mean what exactly happens after that.

    • @rohitsolutions
      @rohitsolutions 3 года назад

      Then Controlller will communicate to kubectl through KubeAPI to create that pod to ensure replica set is satisfied. To ensure desired no# of pods == actual no# of pods.

  • @pavankumarkamarthin272
    @pavankumarkamarthin272 3 года назад

    Doesn’t Kubernetes need a load balancer in front of compute nodes?

    • @IBMTechnology
      @IBMTechnology  3 года назад +1

      Hi there! Depending upon where Kubernetes is deployed, you can integrate with different load balancers that the infrastructure provides to expose pods as Services running on k8s. Different Service types take advantage of different networking patterns to access the pods running on the underlying infrastructure. NodePort-based Services leverage existing IP addresses of compute nodes and are accessed via a Node-level proxy. LoadBalancer-based Services create new Load Balancer instances and handle traffic directly through the infrastructure-based LoadBalancer.
      So the answer to the question is “it depends on how you want to access it”. 🙂

  • @rayr268
    @rayr268 3 года назад +1

    How do you write backwards like that? Good video too!

    • @sshovelyjoe
      @sshovelyjoe 2 года назад

      I just couldn't concentrate coz of it lol thats freaky

    • @quesder
      @quesder 2 года назад

      it is from the back of the glass, and the video is mirrored. Do you notice that most instructors use their left hands to write? That's because the video is left-right mirrored.

  • @suresh198611
    @suresh198611 2 года назад

    Awesome

  • @ttylbodydark
    @ttylbodydark 3 года назад

    …I’m not supposed to be In this class.
    What are nodes? API server? Clusters?

    • @tourdesource
      @tourdesource Год назад

      A Kubernetes Node is a unit of computation (i.e. a physical or virtual machine)

  • @ReflectionOcean
    @ReflectionOcean 2 года назад

    Controller managers takes care of runtime failures of pods

  • @vivekkaushik9508
    @vivekkaushik9508 3 года назад +2

    To this day I could not understand how do they write backwards?

    • @Al-nc2ys
      @Al-nc2ys 3 года назад

      Bro, WTF. Now that you pointed that out, I can't unsee.

    • @juanitoMint
      @juanitoMint 3 года назад

      basically they shoot and mirror invert
      ruclips.net/video/wCOuu0-o5YI/видео.html

    • @quesder
      @quesder 2 года назад

      The camera is at the back of the glass, and the video is mirrored. Do you notice that most instructors use their left hands to write? That's because the video is left-right mirrored.

  • @vitaminc68
    @vitaminc68 3 года назад

    🥰❤️

  • @dylanngo4454
    @dylanngo4454 Год назад

    Thank a lot!