mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 21:47:07 +00:00
Add more tracing steps in generic_scheduler
This commit is contained in:
parent
5e0f48acf8
commit
d3e8f17987
@ -178,11 +178,14 @@ func (g *genericScheduler) Schedule(state *framework.CycleState, pod *v1.Pod) (r
|
|||||||
if err := podPassesBasicChecks(pod, g.pvcLister); err != nil {
|
if err := podPassesBasicChecks(pod, g.pvcLister); err != nil {
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
|
trace.Step("Basic checks done")
|
||||||
|
|
||||||
// Run "prefilter" plugins.
|
// Run "prefilter" plugins.
|
||||||
preFilterStatus := g.framework.RunPreFilterPlugins(state, pod)
|
preFilterStatus := g.framework.RunPreFilterPlugins(state, pod)
|
||||||
if !preFilterStatus.IsSuccess() {
|
if !preFilterStatus.IsSuccess() {
|
||||||
return result, preFilterStatus.AsError()
|
return result, preFilterStatus.AsError()
|
||||||
}
|
}
|
||||||
|
trace.Step("Running prefilter plugins done")
|
||||||
|
|
||||||
numNodes := g.cache.NodeTree().NumNodes()
|
numNodes := g.cache.NodeTree().NumNodes()
|
||||||
if numNodes == 0 {
|
if numNodes == 0 {
|
||||||
@ -192,13 +195,14 @@ func (g *genericScheduler) Schedule(state *framework.CycleState, pod *v1.Pod) (r
|
|||||||
if err := g.snapshot(); err != nil {
|
if err := g.snapshot(); err != nil {
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
|
trace.Step("Snapshoting scheduler cache and node infos done")
|
||||||
|
|
||||||
trace.Step("Basic checks done")
|
|
||||||
startPredicateEvalTime := time.Now()
|
startPredicateEvalTime := time.Now()
|
||||||
filteredNodes, failedPredicateMap, filteredNodesStatuses, err := g.findNodesThatFit(state, pod)
|
filteredNodes, failedPredicateMap, filteredNodesStatuses, err := g.findNodesThatFit(state, pod)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
|
trace.Step("Computing predicates done")
|
||||||
|
|
||||||
// Run "postfilter" plugins.
|
// Run "postfilter" plugins.
|
||||||
postfilterStatus := g.framework.RunPostFilterPlugins(state, pod, filteredNodes, filteredNodesStatuses)
|
postfilterStatus := g.framework.RunPostFilterPlugins(state, pod, filteredNodes, filteredNodesStatuses)
|
||||||
@ -214,7 +218,7 @@ func (g *genericScheduler) Schedule(state *framework.CycleState, pod *v1.Pod) (r
|
|||||||
FilteredNodesStatuses: filteredNodesStatuses,
|
FilteredNodesStatuses: filteredNodesStatuses,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
trace.Step("Computing predicates done")
|
trace.Step("Running postfilter plugins done")
|
||||||
metrics.SchedulingAlgorithmPredicateEvaluationDuration.Observe(metrics.SinceInSeconds(startPredicateEvalTime))
|
metrics.SchedulingAlgorithmPredicateEvaluationDuration.Observe(metrics.SinceInSeconds(startPredicateEvalTime))
|
||||||
metrics.DeprecatedSchedulingAlgorithmPredicateEvaluationDuration.Observe(metrics.SinceInMicroseconds(startPredicateEvalTime))
|
metrics.DeprecatedSchedulingAlgorithmPredicateEvaluationDuration.Observe(metrics.SinceInMicroseconds(startPredicateEvalTime))
|
||||||
metrics.SchedulingLatency.WithLabelValues(metrics.PredicateEvaluation).Observe(metrics.SinceInSeconds(startPredicateEvalTime))
|
metrics.SchedulingLatency.WithLabelValues(metrics.PredicateEvaluation).Observe(metrics.SinceInSeconds(startPredicateEvalTime))
|
||||||
@ -237,14 +241,15 @@ func (g *genericScheduler) Schedule(state *framework.CycleState, pod *v1.Pod) (r
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return result, err
|
return result, err
|
||||||
}
|
}
|
||||||
trace.Step("Prioritizing done")
|
|
||||||
metrics.SchedulingAlgorithmPriorityEvaluationDuration.Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
metrics.SchedulingAlgorithmPriorityEvaluationDuration.Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
||||||
metrics.DeprecatedSchedulingAlgorithmPriorityEvaluationDuration.Observe(metrics.SinceInMicroseconds(startPriorityEvalTime))
|
metrics.DeprecatedSchedulingAlgorithmPriorityEvaluationDuration.Observe(metrics.SinceInMicroseconds(startPriorityEvalTime))
|
||||||
metrics.SchedulingLatency.WithLabelValues(metrics.PriorityEvaluation).Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
metrics.SchedulingLatency.WithLabelValues(metrics.PriorityEvaluation).Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
||||||
metrics.DeprecatedSchedulingLatency.WithLabelValues(metrics.PriorityEvaluation).Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
metrics.DeprecatedSchedulingLatency.WithLabelValues(metrics.PriorityEvaluation).Observe(metrics.SinceInSeconds(startPriorityEvalTime))
|
||||||
|
|
||||||
host, err := g.selectHost(priorityList)
|
host, err := g.selectHost(priorityList)
|
||||||
trace.Step("Selecting host done")
|
trace.Step("Prioritizing done")
|
||||||
|
|
||||||
return ScheduleResult{
|
return ScheduleResult{
|
||||||
SuggestedHost: host,
|
SuggestedHost: host,
|
||||||
EvaluatedNodes: len(filteredNodes) + len(failedPredicateMap) + len(filteredNodesStatuses),
|
EvaluatedNodes: len(filteredNodes) + len(failedPredicateMap) + len(filteredNodesStatuses),
|
||||||
|
Loading…
Reference in New Issue
Block a user