From 21cf23b4fafb769ece24dc670a8ed2cba0222ce5 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Fri, 27 Oct 2023 19:32:32 +0530 Subject: [PATCH 1/9] Added extra info about default plugins in component config --- cmd/kube-scheduler/app/options/configfile.go | 8 ++++++-- pkg/scheduler/apis/config/v1/default_plugins.go | 2 ++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/cmd/kube-scheduler/app/options/configfile.go b/cmd/kube-scheduler/app/options/configfile.go index 9b5fa9e3489..8fb6687a685 100644 --- a/cmd/kube-scheduler/app/options/configfile.go +++ b/cmd/kube-scheduler/app/options/configfile.go @@ -84,12 +84,16 @@ func LogOrWriteConfig(logger klog.Logger, fileName string, cfg *config.KubeSched return nil } cfg.Profiles = completedProfiles - buf, err := encodeConfig(cfg) if err != nil { return err } - + defaultPluginString := "Plugins Enabled By Default:" + for _, v := range configv1.GetDefaultPlugins.MultiPoint.Enabled { + name := v.Name + defaultPluginString += "\n" + "\t" + name + } + buf.WriteString(defaultPluginString) if loggerV.Enabled() { loggerV.Info("Using component config", "config", buf.String()) } diff --git a/pkg/scheduler/apis/config/v1/default_plugins.go b/pkg/scheduler/apis/config/v1/default_plugins.go index 509cb57a274..fb4650e1713 100644 --- a/pkg/scheduler/apis/config/v1/default_plugins.go +++ b/pkg/scheduler/apis/config/v1/default_plugins.go @@ -26,6 +26,8 @@ import ( "k8s.io/utils/ptr" ) +var GetDefaultPlugins = getDefaultPlugins() + // getDefaultPlugins returns the default set of plugins. func getDefaultPlugins() *v1.Plugins { plugins := &v1.Plugins{ From 32db5774a34f55e9bb7968db7d3779aac4deeb76 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Sun, 29 Oct 2023 02:28:32 +0530 Subject: [PATCH 2/9] Fixed extra lines --- cmd/kube-scheduler/app/options/configfile.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cmd/kube-scheduler/app/options/configfile.go b/cmd/kube-scheduler/app/options/configfile.go index 8fb6687a685..ee2fd7cb396 100644 --- a/cmd/kube-scheduler/app/options/configfile.go +++ b/cmd/kube-scheduler/app/options/configfile.go @@ -84,10 +84,12 @@ func LogOrWriteConfig(logger klog.Logger, fileName string, cfg *config.KubeSched return nil } cfg.Profiles = completedProfiles + buf, err := encodeConfig(cfg) if err != nil { return err } + defaultPluginString := "Plugins Enabled By Default:" for _, v := range configv1.GetDefaultPlugins.MultiPoint.Enabled { name := v.Name From 7b60e7e2a31a94f187ad90ef0908655325df2eef Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Wed, 1 Nov 2023 23:03:13 +0530 Subject: [PATCH 3/9] Added plugins enabled at each extension point --- cmd/kube-scheduler/app/options/configfile.go | 6 ---- .../apis/config/v1/default_plugins.go | 2 -- pkg/scheduler/framework/runtime/framework.go | 28 +++++++++++++++++++ 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/cmd/kube-scheduler/app/options/configfile.go b/cmd/kube-scheduler/app/options/configfile.go index ee2fd7cb396..9b5fa9e3489 100644 --- a/cmd/kube-scheduler/app/options/configfile.go +++ b/cmd/kube-scheduler/app/options/configfile.go @@ -90,12 +90,6 @@ func LogOrWriteConfig(logger klog.Logger, fileName string, cfg *config.KubeSched return err } - defaultPluginString := "Plugins Enabled By Default:" - for _, v := range configv1.GetDefaultPlugins.MultiPoint.Enabled { - name := v.Name - defaultPluginString += "\n" + "\t" + name - } - buf.WriteString(defaultPluginString) if loggerV.Enabled() { loggerV.Info("Using component config", "config", buf.String()) } diff --git a/pkg/scheduler/apis/config/v1/default_plugins.go b/pkg/scheduler/apis/config/v1/default_plugins.go index fb4650e1713..509cb57a274 100644 --- a/pkg/scheduler/apis/config/v1/default_plugins.go +++ b/pkg/scheduler/apis/config/v1/default_plugins.go @@ -26,8 +26,6 @@ import ( "k8s.io/utils/ptr" ) -var GetDefaultPlugins = getDefaultPlugins() - // getDefaultPlugins returns the default set of plugins. func getDefaultPlugins() *v1.Plugins { plugins := &v1.Plugins{ diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index 4d4588ef5b8..e5940709a6f 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,6 +355,34 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } + for _, e := range f.getExtensionPoints(profile.Plugins) { + plugins := reflect.ValueOf(e.slicePtr).Elem() + pluginType := plugins.Type().Elem() + loggerV := logger.V(2) + + enabledSet := newOrderedSet() + for _, plugin := range e.plugins.Enabled { + enabledSet.insert(plugin.Name) + } + + disabledSet := sets.New[string]() + for _, disabledPlugin := range e.plugins.Disabled { + disabledSet.Insert(disabledPlugin.Name) + } + + if disabledSet.Has("*") { + continue + } + + for _, ep := range profile.Plugins.MultiPoint.Enabled { + if !enabledSet.has(ep.Name) { + enabledSet.insert(ep.Name) + } + } + + loggerV.Info("Plugins enabled for", "extension", pluginType, "plugins", enabledSet.list) + } + f.setInstrumentedPlugins() return f, nil } From 1dca49157a5984f25ce6a810dfaf85b7cfc5a0a6 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Wed, 22 Nov 2023 02:13:55 +0530 Subject: [PATCH 4/9] Utilized ListPlugins method --- pkg/scheduler/framework/runtime/framework.go | 32 +++++--------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index e5940709a6f..76d7e010621 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,32 +355,14 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } - for _, e := range f.getExtensionPoints(profile.Plugins) { - plugins := reflect.ValueOf(e.slicePtr).Elem() - pluginType := plugins.Type().Elem() + // Logs the enabled plugins enabled for each extension point + m := f.ListPlugins() + pluginMap := reflect.ValueOf(*m) + typeOfMap := pluginMap.Type() + + for i := 0; i < pluginMap.NumField(); i++ { loggerV := logger.V(2) - - enabledSet := newOrderedSet() - for _, plugin := range e.plugins.Enabled { - enabledSet.insert(plugin.Name) - } - - disabledSet := sets.New[string]() - for _, disabledPlugin := range e.plugins.Disabled { - disabledSet.Insert(disabledPlugin.Name) - } - - if disabledSet.Has("*") { - continue - } - - for _, ep := range profile.Plugins.MultiPoint.Enabled { - if !enabledSet.has(ep.Name) { - enabledSet.insert(ep.Name) - } - } - - loggerV.Info("Plugins enabled for", "extension", pluginType, "plugins", enabledSet.list) + loggerV.Info("Plugins enabled for", "extension", typeOfMap.Field(i).Name, "plugins", pluginMap.Field(i).Interface()) } f.setInstrumentedPlugins() From 9cb2d1cf6dee6033188cafa6dfbc2d7fab00c6b1 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Wed, 22 Nov 2023 22:32:19 +0530 Subject: [PATCH 5/9] Removed Comments --- pkg/scheduler/framework/runtime/framework.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index 76d7e010621..e854c7e540e 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,9 +355,8 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } - // Logs the enabled plugins enabled for each extension point - m := f.ListPlugins() - pluginMap := reflect.ValueOf(*m) + m := *f.ListPlugins() + pluginMap := reflect.ValueOf(m) typeOfMap := pluginMap.Type() for i := 0; i < pluginMap.NumField(); i++ { From 5c99f3a24e3293769986ab1bea50a5fc3f413fe5 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Fri, 24 Nov 2023 00:19:42 +0530 Subject: [PATCH 6/9] Logged the return value of ListPlugins --- pkg/scheduler/framework/runtime/framework.go | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index e854c7e540e..a916c3964bd 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -356,13 +356,8 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler } m := *f.ListPlugins() - pluginMap := reflect.ValueOf(m) - typeOfMap := pluginMap.Type() - - for i := 0; i < pluginMap.NumField(); i++ { - loggerV := logger.V(2) - loggerV.Info("Plugins enabled for", "extension", typeOfMap.Field(i).Name, "plugins", pluginMap.Field(i).Interface()) - } + loggerV := logger.V(2) + loggerV.Info("Plugins", "config.Plugins", m) f.setInstrumentedPlugins() return f, nil From 76be319571be7b48e2c66287fca05958439e0f9e Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Fri, 24 Nov 2023 10:58:33 +0530 Subject: [PATCH 7/9] Optimzed the code --- pkg/scheduler/framework/runtime/framework.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index a916c3964bd..85274353aea 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,9 +355,7 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } - m := *f.ListPlugins() - loggerV := logger.V(2) - loggerV.Info("Plugins", "config.Plugins", m) + logger.V(2).Info("Plugins enabled and disabled at each extension point", "config.Plugins", *f.ListPlugins()) f.setInstrumentedPlugins() return f, nil From eb45a8f2f5bfc80695cf261555b08dddf91ef3e2 Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Fri, 24 Nov 2023 11:01:15 +0530 Subject: [PATCH 8/9] Added comments --- pkg/scheduler/framework/runtime/framework.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index 85274353aea..3f8aefe53da 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,8 +355,8 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } + // Logs Enabled and Disabled Plugins at each extension point logger.V(2).Info("Plugins enabled and disabled at each extension point", "config.Plugins", *f.ListPlugins()) - f.setInstrumentedPlugins() return f, nil } From a601ebd6b60c448eeca7b56d80b08a36d2a7d29f Mon Sep 17 00:00:00 2001 From: hub-Prateek Date: Sun, 26 Nov 2023 11:41:42 +0530 Subject: [PATCH 9/9] Changed the log message --- pkg/scheduler/framework/runtime/framework.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/scheduler/framework/runtime/framework.go b/pkg/scheduler/framework/runtime/framework.go index 3f8aefe53da..8fadf65ebfe 100644 --- a/pkg/scheduler/framework/runtime/framework.go +++ b/pkg/scheduler/framework/runtime/framework.go @@ -355,8 +355,8 @@ func NewFramework(ctx context.Context, r Registry, profile *config.KubeScheduler options.captureProfile(outputProfile) } - // Logs Enabled and Disabled Plugins at each extension point - logger.V(2).Info("Plugins enabled and disabled at each extension point", "config.Plugins", *f.ListPlugins()) + // Logs Enabled Plugins at each extension point, taking default plugins, given config, and multipoint into consideration + logger.V(2).Info("the scheduler starts to work with those plugins", "Plugins", *f.ListPlugins()) f.setInstrumentedPlugins() return f, nil }