Multiple Scheduler : Pod CrashLoopBackOff issue

Question 1:

In Multiple Scheduler session, after creating the additional scheduler, over the time the number of restarts keeps increasing and after a while pod gets into CrashLoopBackOff.

It is a concern that the CrashLoopBackOff of additional scheduler is happening. Is it not that the scheduler should be in running state like the default scheduler.

Question 2:

In default scheduler pod Kube-Scheduler, it has the kubeconfig files configured (–kubeconfig=/etc/kubernetes/scheduler.conf), however the file scheduler.conf is not available in the location.

I just want to know how it works. Why i am not able to see the config files in /etc/kubernetes.


hi @selvakumar
The scheduler
At a high level, the scheduler watches the API server for new work tasks and assigns them to appropriate healthy nodes. Behind the scenes, it implements complex logic that filters out nodes incapable of running the task, and then ranks the nodes that are capable. The ranking system is complex, but the node with the highest-ranking score is selected to run the task.
When identifying nodes that are capable of running a task, the scheduler performs various predicate checks. These include; is the node tainted, are there any affinity or anti-affinity rules, is the required network port available on the node, does the node have sufficient free resources etc. Any node incapable of running the task is ignored, and the remaining nodes are ranked according to things such as; does the node already have the required image, how much free resource does the node have, how many tasks is the node already running. Each criterion is worth points, and the node with the most points is selected to run the task.
If the scheduler cannot find a suitable node, the task cannot be scheduled and is marked as pending.
The scheduler isn’t responsible for running tasks, just picking the nodes a task will run on.

kubeadm init

This command initializes a Kubernetes control-plane node.


Run this command in order to set up the Kubernetes control plane

The “init” command executes the following phases:

preflight                    Run pre-flight checks
certs                        Certificate generation
  /apiserver                   Generate the certificate for serving the Kubernetes API
  /scheduler                   Generate a kubeconfig file for the scheduler to use

please @selvakumar feel free to check this nice documentation about scheduler configuration .