mirror of https://github.com/k3s-io/k3s
Merge pull request #35624 from gmarek/nodeinfo
Automatic merge from submit-queue Scheduler Reduce function can use nodeNameToNodeInfo mappull/6/head
commit
c83a924628
|
@ -78,7 +78,7 @@ func CalculateNodeAffinityPriorityMap(pod *api.Pod, meta interface{}, nodeInfo *
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func CalculateNodeAffinityPriorityReduce(pod *api.Pod, meta interface{}, result schedulerapi.HostPriorityList) error {
|
func CalculateNodeAffinityPriorityReduce(pod *api.Pod, meta interface{}, nodeNameToInfo map[string]*schedulercache.NodeInfo, result schedulerapi.HostPriorityList) error {
|
||||||
var maxCount int
|
var maxCount int
|
||||||
for i := range result {
|
for i := range result {
|
||||||
if result[i].Score > maxCount {
|
if result[i].Score > maxCount {
|
||||||
|
|
|
@ -88,7 +88,7 @@ func ComputeTaintTolerationPriorityMap(pod *api.Pod, meta interface{}, nodeInfo
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func ComputeTaintTolerationPriorityReduce(pod *api.Pod, meta interface{}, result schedulerapi.HostPriorityList) error {
|
func ComputeTaintTolerationPriorityReduce(pod *api.Pod, meta interface{}, nodeNameToInfo map[string]*schedulercache.NodeInfo, result schedulerapi.HostPriorityList) error {
|
||||||
var maxCount int
|
var maxCount int
|
||||||
for i := range result {
|
for i := range result {
|
||||||
if result[i].Score > maxCount {
|
if result[i].Score > maxCount {
|
||||||
|
|
|
@ -51,7 +51,7 @@ func priorityFunction(mapFn algorithm.PriorityMapFunction, reduceFn algorithm.Pr
|
||||||
result = append(result, hostResult)
|
result = append(result, hostResult)
|
||||||
}
|
}
|
||||||
if reduceFn != nil {
|
if reduceFn != nil {
|
||||||
if err := reduceFn(pod, nil, result); err != nil {
|
if err := reduceFn(pod, nil, nodeNameToInfo, result); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ type PriorityMapFunction func(pod *api.Pod, meta interface{}, nodeInfo *schedule
|
||||||
// final scores for all nodes.
|
// final scores for all nodes.
|
||||||
// TODO: Figure out the exact API of this method.
|
// TODO: Figure out the exact API of this method.
|
||||||
// TODO: Change interface{} to a specific type.
|
// TODO: Change interface{} to a specific type.
|
||||||
type PriorityReduceFunction func(pod *api.Pod, meta interface{}, result schedulerapi.HostPriorityList) error
|
type PriorityReduceFunction func(pod *api.Pod, meta interface{}, nodeNameToInfo map[string]*schedulercache.NodeInfo, result schedulerapi.HostPriorityList) error
|
||||||
|
|
||||||
// MetdataProducer is a function that computes metadata for a given pod.
|
// MetdataProducer is a function that computes metadata for a given pod.
|
||||||
type MetadataProducer func(pod *api.Pod, nodeNameToInfo map[string]*schedulercache.NodeInfo) interface{}
|
type MetadataProducer func(pod *api.Pod, nodeNameToInfo map[string]*schedulercache.NodeInfo) interface{}
|
||||||
|
|
|
@ -315,7 +315,7 @@ func PrioritizeNodes(
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
go func(index int, config algorithm.PriorityConfig) {
|
go func(index int, config algorithm.PriorityConfig) {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
if err := config.Reduce(pod, meta, results[index]); err != nil {
|
if err := config.Reduce(pod, meta, nodeNameToInfo, results[index]); err != nil {
|
||||||
appendError(err)
|
appendError(err)
|
||||||
}
|
}
|
||||||
}(i, priorityConfig)
|
}(i, priorityConfig)
|
||||||
|
|
Loading…
Reference in New Issue