Skip to content

Commit c33c4ff

Browse files
committed
Move RequestedToCapacityRatio to plugins/noderesources
1 parent e94cf58 commit c33c4ff

File tree

8 files changed

+34
-96
lines changed

8 files changed

+34
-96
lines changed

pkg/scheduler/BUILD

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ go_library(
2424
"//pkg/scheduler/framework/plugins/interpodaffinity:go_default_library",
2525
"//pkg/scheduler/framework/plugins/nodelabel:go_default_library",
2626
"//pkg/scheduler/framework/plugins/noderesources:go_default_library",
27-
"//pkg/scheduler/framework/plugins/requestedtocapacityratio:go_default_library",
2827
"//pkg/scheduler/framework/plugins/serviceaffinity:go_default_library",
2928
"//pkg/scheduler/framework/v1alpha1:go_default_library",
3029
"//pkg/scheduler/internal/cache:go_default_library",

pkg/scheduler/algorithm_factory.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ import (
3131
schedulerapi "k8s.io/kubernetes/pkg/scheduler/apis/config"
3232
"k8s.io/kubernetes/pkg/scheduler/framework/plugins"
3333
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodelabel"
34-
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/requestedtocapacityratio"
34+
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/noderesources"
3535
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/serviceaffinity"
3636
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
3737
schedulerlisters "k8s.io/kubernetes/pkg/scheduler/listers"
@@ -402,7 +402,7 @@ func RegisterCustomPriorityFunction(policy schedulerapi.PriorityPolicy, configPr
402402
}
403403
} else if policy.Argument.RequestedToCapacityRatioArguments != nil {
404404
scoringFunctionShape, resources := buildScoringFunctionShapeFromRequestedToCapacityRatioArguments(policy.Argument.RequestedToCapacityRatioArguments)
405-
configProducerArgs.RequestedToCapacityRatioArgs = &requestedtocapacityratio.Args{
405+
configProducerArgs.RequestedToCapacityRatioArgs = &noderesources.RequestedToCapacityRatioArgs{
406406
FunctionShape: scoringFunctionShape,
407407
ResourceToWeightMap: resources,
408408
}
@@ -414,7 +414,7 @@ func RegisterCustomPriorityFunction(policy schedulerapi.PriorityPolicy, configPr
414414
Weight: policy.Weight,
415415
}
416416
// We do not allow specifying the name for custom plugins, see #83472
417-
name = requestedtocapacityratio.Name
417+
name = noderesources.RequestedToCapacityRatioName
418418
}
419419
} else if existingPcf, ok := priorityFunctionMap[name]; ok {
420420
klog.V(2).Infof("Priority type %s already registered, reusing.", name)

pkg/scheduler/framework/plugins/BUILD

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ go_library(
2121
"//pkg/scheduler/framework/plugins/nodeunschedulable:go_default_library",
2222
"//pkg/scheduler/framework/plugins/nodevolumelimits:go_default_library",
2323
"//pkg/scheduler/framework/plugins/podtopologyspread:go_default_library",
24-
"//pkg/scheduler/framework/plugins/requestedtocapacityratio:go_default_library",
2524
"//pkg/scheduler/framework/plugins/serviceaffinity:go_default_library",
2625
"//pkg/scheduler/framework/plugins/tainttoleration:go_default_library",
2726
"//pkg/scheduler/framework/plugins/volumebinding:go_default_library",
@@ -59,7 +58,6 @@ filegroup(
5958
"//pkg/scheduler/framework/plugins/nodeunschedulable:all-srcs",
6059
"//pkg/scheduler/framework/plugins/nodevolumelimits:all-srcs",
6160
"//pkg/scheduler/framework/plugins/podtopologyspread:all-srcs",
62-
"//pkg/scheduler/framework/plugins/requestedtocapacityratio:all-srcs",
6361
"//pkg/scheduler/framework/plugins/serviceaffinity:all-srcs",
6462
"//pkg/scheduler/framework/plugins/tainttoleration:all-srcs",
6563
"//pkg/scheduler/framework/plugins/volumebinding:all-srcs",

pkg/scheduler/framework/plugins/noderesources/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ go_library(
77
"fit.go",
88
"least_allocated.go",
99
"most_allocated.go",
10+
"requested_to_capacity_ratio.go",
1011
"test_util.go",
1112
],
1213
importpath = "k8s.io/kubernetes/pkg/scheduler/framework/plugins/noderesources",
@@ -47,6 +48,7 @@ go_test(
4748
"fit_test.go",
4849
"least_allocated_test.go",
4950
"most_allocated_test.go",
51+
"requested_to_capacity_ratio_test.go",
5052
],
5153
embed = [":go_default_library"],
5254
deps = [
Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
1414
limitations under the License.
1515
*/
1616

17-
package requestedtocapacityratio
17+
package noderesources
1818

1919
import (
2020
"context"
@@ -27,18 +27,18 @@ import (
2727
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
2828
)
2929

30-
// Name of this plugin.
31-
const Name = "RequestedToCapacityRatio"
30+
// RequestedToCapacityRatioName is the name of this plugin.
31+
const RequestedToCapacityRatioName = "RequestedToCapacityRatio"
3232

33-
// Args holds the args that are used to configure the plugin.
34-
type Args struct {
33+
// RequestedToCapacityRatioArgs holds the args that are used to configure the plugin.
34+
type RequestedToCapacityRatioArgs struct {
3535
FunctionShape priorities.FunctionShape
3636
ResourceToWeightMap priorities.ResourceToWeightMap
3737
}
3838

39-
// New initializes a new plugin and returns it.
40-
func New(plArgs *runtime.Unknown, handle framework.FrameworkHandle) (framework.Plugin, error) {
41-
args := &Args{}
39+
// NewRequestedToCapacityRatio initializes a new plugin and returns it.
40+
func NewRequestedToCapacityRatio(plArgs *runtime.Unknown, handle framework.FrameworkHandle) (framework.Plugin, error) {
41+
args := &RequestedToCapacityRatioArgs{}
4242
if err := framework.DecodeInto(plArgs, args); err != nil {
4343
return nil, err
4444
}
@@ -60,7 +60,7 @@ var _ framework.ScorePlugin = &RequestedToCapacityRatio{}
6060

6161
// Name returns name of the plugin. It is used in logs, etc.
6262
func (pl *RequestedToCapacityRatio) Name() string {
63-
return Name
63+
return RequestedToCapacityRatioName
6464
}
6565

6666
// Score invoked at the score extension point.
Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
1414
limitations under the License.
1515
*/
1616

17-
package requestedtocapacityratio
17+
package noderesources
1818

1919
import (
2020
"context"
@@ -23,7 +23,6 @@ import (
2323

2424
v1 "k8s.io/api/core/v1"
2525
"k8s.io/apimachinery/pkg/api/resource"
26-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2726
"k8s.io/apimachinery/pkg/runtime"
2827
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
2928
nodeinfosnapshot "k8s.io/kubernetes/pkg/scheduler/nodeinfo/snapshot"
@@ -68,7 +67,7 @@ func TestRequestedToCapacityRatio(t *testing.T) {
6867
snapshot := nodeinfosnapshot.NewSnapshot(nodeinfosnapshot.CreateNodeInfoMap(test.scheduledPods, test.nodes))
6968
fh, _ := framework.NewFramework(nil, nil, nil, framework.WithSnapshotSharedLister(snapshot))
7069
args := &runtime.Unknown{Raw: []byte(`{"FunctionShape" : [{"Utilization" : 0, "Score" : 100}, {"Utilization" : 100, "Score" : 0}], "ResourceToWeightMap" : {"memory" : 1, "cpu" : 1}}`)}
71-
p, _ := New(args, fh)
70+
p, _ := NewRequestedToCapacityRatio(args, fh)
7271

7372
var gotPriorities framework.NodeScoreList
7473
for _, n := range test.nodes {
@@ -86,22 +85,6 @@ func TestRequestedToCapacityRatio(t *testing.T) {
8685
}
8786
}
8887

89-
func makeNode(name string, milliCPU, memory int64) *v1.Node {
90-
return &v1.Node{
91-
ObjectMeta: metav1.ObjectMeta{Name: name},
92-
Status: v1.NodeStatus{
93-
Capacity: v1.ResourceList{
94-
v1.ResourceCPU: *resource.NewMilliQuantity(milliCPU, resource.DecimalSI),
95-
v1.ResourceMemory: *resource.NewQuantity(memory, resource.BinarySI),
96-
},
97-
Allocatable: v1.ResourceList{
98-
v1.ResourceCPU: *resource.NewMilliQuantity(milliCPU, resource.DecimalSI),
99-
v1.ResourceMemory: *resource.NewQuantity(memory, resource.BinarySI),
100-
},
101-
},
102-
}
103-
}
104-
10588
func makePod(node string, milliCPU, memory int64) *v1.Pod {
10689
return &v1.Pod{
10790
Spec: v1.PodSpec{

pkg/scheduler/framework/plugins/registry.go

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ import (
3737
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodeunschedulable"
3838
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodevolumelimits"
3939
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/podtopologyspread"
40-
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/requestedtocapacityratio"
4140
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/serviceaffinity"
4241
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/tainttoleration"
4342
"k8s.io/kubernetes/pkg/scheduler/framework/plugins/volumebinding"
@@ -57,19 +56,20 @@ type RegistryArgs struct {
5756
// through the WithFrameworkOutOfTreeRegistry option.
5857
func NewInTreeRegistry(args *RegistryArgs) framework.Registry {
5958
return framework.Registry{
60-
defaultpodtopologyspread.Name: defaultpodtopologyspread.New,
61-
imagelocality.Name: imagelocality.New,
62-
tainttoleration.Name: tainttoleration.New,
63-
nodename.Name: nodename.New,
64-
nodeports.Name: nodeports.New,
65-
nodepreferavoidpods.Name: nodepreferavoidpods.New,
66-
nodeaffinity.Name: nodeaffinity.New,
67-
podtopologyspread.Name: podtopologyspread.New,
68-
nodeunschedulable.Name: nodeunschedulable.New,
69-
noderesources.FitName: noderesources.NewFit,
70-
noderesources.BalancedAllocationName: noderesources.NewBalancedAllocation,
71-
noderesources.MostAllocatedName: noderesources.NewMostAllocated,
72-
noderesources.LeastAllocatedName: noderesources.NewLeastAllocated,
59+
defaultpodtopologyspread.Name: defaultpodtopologyspread.New,
60+
imagelocality.Name: imagelocality.New,
61+
tainttoleration.Name: tainttoleration.New,
62+
nodename.Name: nodename.New,
63+
nodeports.Name: nodeports.New,
64+
nodepreferavoidpods.Name: nodepreferavoidpods.New,
65+
nodeaffinity.Name: nodeaffinity.New,
66+
podtopologyspread.Name: podtopologyspread.New,
67+
nodeunschedulable.Name: nodeunschedulable.New,
68+
noderesources.FitName: noderesources.NewFit,
69+
noderesources.BalancedAllocationName: noderesources.NewBalancedAllocation,
70+
noderesources.MostAllocatedName: noderesources.NewMostAllocated,
71+
noderesources.LeastAllocatedName: noderesources.NewLeastAllocated,
72+
noderesources.RequestedToCapacityRatioName: noderesources.NewRequestedToCapacityRatio,
7373
volumebinding.Name: func(_ *runtime.Unknown, _ framework.FrameworkHandle) (framework.Plugin, error) {
7474
return volumebinding.NewFromVolumeBinder(args.VolumeBinder), nil
7575
},
@@ -82,7 +82,6 @@ func NewInTreeRegistry(args *RegistryArgs) framework.Registry {
8282
nodevolumelimits.CinderName: nodevolumelimits.NewCinder,
8383
interpodaffinity.Name: interpodaffinity.New,
8484
nodelabel.Name: nodelabel.New,
85-
requestedtocapacityratio.Name: requestedtocapacityratio.New,
8685
serviceaffinity.Name: serviceaffinity.New,
8786
}
8887
}
@@ -96,7 +95,7 @@ type ConfigProducerArgs struct {
9695
// NodeLabelArgs is the args for the NodeLabel plugin.
9796
NodeLabelArgs *nodelabel.Args
9897
// RequestedToCapacityRatioArgs is the args for the RequestedToCapacityRatio plugin.
99-
RequestedToCapacityRatioArgs *requestedtocapacityratio.Args
98+
RequestedToCapacityRatioArgs *noderesources.RequestedToCapacityRatioArgs
10099
// ServiceAffinityArgs is the args for the ServiceAffinity plugin.
101100
ServiceAffinityArgs *serviceaffinity.Args
102101
// NodeResourcesFitArgs is the args for the NodeResources fit filter.
@@ -287,10 +286,10 @@ func NewConfigProducerRegistry() *ConfigProducerRegistry {
287286
plugins.Score = appendToPluginSet(plugins.Score, podtopologyspread.Name, &args.Weight)
288287
return
289288
})
290-
registry.RegisterPriority(requestedtocapacityratio.Name,
289+
registry.RegisterPriority(noderesources.RequestedToCapacityRatioName,
291290
func(args ConfigProducerArgs) (plugins config.Plugins, pluginConfig []config.PluginConfig) {
292-
plugins.Score = appendToPluginSet(plugins.Score, requestedtocapacityratio.Name, &args.Weight)
293-
pluginConfig = append(pluginConfig, makePluginConfig(requestedtocapacityratio.Name, args.RequestedToCapacityRatioArgs))
291+
plugins.Score = appendToPluginSet(plugins.Score, noderesources.RequestedToCapacityRatioName, &args.Weight)
292+
pluginConfig = append(pluginConfig, makePluginConfig(noderesources.RequestedToCapacityRatioName, args.RequestedToCapacityRatioArgs))
294293
return
295294
})
296295

pkg/scheduler/framework/plugins/requestedtocapacityratio/BUILD

Lines changed: 0 additions & 43 deletions
This file was deleted.

0 commit comments

Comments
 (0)