Skip to content

Latest commit

 

History

History

failed-to-schedule-pods

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Scenario: My Application' Pods Failed to Schedule

Why Is It Important?

Pods & Nodes constraints can make the scheduling job challengin. When there is no node for a pod to run on, the pod fails with a FailedScheduling which causes a negative impact, espcially during scaling and rollout of a new version.

Real Life Example

  1. During scale up, many pods spawn to support the load, however if there are no available nodes in the cluster, the users will not be served.
  2. An applicaiton pod requests a large amount of memory, which is unavailable, causing rollout to fail.

How Komodor Helps?

Komodor detects anytime a pod is failed to schedule and creates an event with a clear explanation for why it's failed to schedule?

Komodor shows the failed deploy events on the timeline: banner

For each deploy events you have the full information about the deploy: banner

Note: This pod requires 500Gi of memory, please makes sure your autoascaler doesn't allow this size of nodes.

How To Run?

  1. Apply an healthy deployment:

    kubectl apply -f https://raw.githubusercontent.com/komodorio/komodor-tutorials/master/failure-scenarios/failed-to-schedule-pods/healthy-deploy.yaml
  2. Apply failed-scheduling.yaml

    kubectl apply -f https://raw.githubusercontent.com/komodorio/komodor-tutorials/master/failure-scenarios/failed-to-schedule-pods/failed-scheduling.yaml

    It takes at least 10 minutes for Kubernetes to mark this deploy as failed.

  3. Go to the relevant service in Komodor and click on the deploy event created.