diff --git a/pkg/plugins/runtime/k8s/plugin.go b/pkg/plugins/runtime/k8s/plugin.go index b755a42381de..f78a71588f70 100644 --- a/pkg/plugins/runtime/k8s/plugin.go +++ b/pkg/plugins/runtime/k8s/plugin.go @@ -78,7 +78,7 @@ func addControllers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8 if err := addNamespaceReconciler(mgr, rt); err != nil { return err } - if err := addServiceReconciler(mgr); err != nil { + if err := addServiceReconciler(mgr, rt); err != nil { return err } if err := addMeshServiceReconciler(mgr, rt, converter); err != nil { @@ -102,7 +102,7 @@ func addControllers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8 nodeTaintController := rt.Config().Runtime.Kubernetes.NodeTaintController if nodeTaintController.Enabled { - if err := addCniNodeTaintReconciler(mgr, nodeTaintController.CniApp, nodeTaintController.CniNamespace); err != nil { + if err := addCniNodeTaintReconciler(mgr, rt, nodeTaintController.CniApp, nodeTaintController.CniNamespace); err != nil { return err } } @@ -110,7 +110,10 @@ func addControllers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8 return nil } -func addCniNodeTaintReconciler(mgr kube_ctrl.Manager, cniApp string, cniNamespace string) error { +func addCniNodeTaintReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime, cniApp string, cniNamespace string) error { + if rt.Config().Mode == config_core.Global { + return nil + } reconciler := &k8s_controllers.CniNodeTaintReconciler{ Client: mgr.GetClient(), Log: core.Log.WithName("controllers").WithName("NodeTaint"), @@ -122,6 +125,9 @@ func addCniNodeTaintReconciler(mgr kube_ctrl.Manager, cniApp string, cniNamespac } func addNamespaceReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime) error { + if rt.Config().Mode == config_core.Global { + return nil + } reconciler := &k8s_controllers.NamespaceReconciler{ Client: mgr.GetClient(), Log: core.Log.WithName("controllers").WithName("Namespace"), @@ -130,7 +136,10 @@ func addNamespaceReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime) erro return reconciler.SetupWithManager(mgr) } -func addServiceReconciler(mgr kube_ctrl.Manager) error { +func addServiceReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime) error { + if rt.Config().Mode == config_core.Global { + return nil + } reconciler := &k8s_controllers.ServiceReconciler{ Client: mgr.GetClient(), Log: core.Log.WithName("controllers").WithName("Service"), @@ -172,6 +181,9 @@ func addMeshReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime) error { } func addPodReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8s_common.Converter) error { + if rt.Config().Mode == config_core.Global { + return nil + } reconciler := &k8s_controllers.PodReconciler{ Client: mgr.GetClient(), EventRecorder: mgr.GetEventRecorderFor("k8s.kuma.io/dataplane-generator"), @@ -202,6 +214,9 @@ func addPodReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter } func addPodStatusReconciler(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8s_common.Converter) error { + if rt.Config().Mode == config_core.Global { + return nil + } reconciler := &k8s_controllers.PodStatusReconciler{ Client: mgr.GetClient(), EventRecorder: mgr.GetEventRecorderFor("k8s.kuma.io/dataplane-jobs-syncer"), diff --git a/pkg/plugins/runtime/k8s/plugin_gateway.go b/pkg/plugins/runtime/k8s/plugin_gateway.go index 3f9cf97c844f..d285d8fbd706 100644 --- a/pkg/plugins/runtime/k8s/plugin_gateway.go +++ b/pkg/plugins/runtime/k8s/plugin_gateway.go @@ -12,6 +12,7 @@ import ( gatewayapi "sigs.k8s.io/gateway-api/apis/v1beta1" mesh_proto "github.com/kumahq/kuma/api/mesh/v1alpha1" + config_core "github.com/kumahq/kuma/pkg/config/core" "github.com/kumahq/kuma/pkg/core" core_runtime "github.com/kumahq/kuma/pkg/core/runtime" k8s_common "github.com/kumahq/kuma/pkg/plugins/common/k8s" @@ -76,6 +77,9 @@ func meshGatewayCRDsPresent() bool { func addGatewayReconcilers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, converter k8s_common.Converter) error { cpURL := fmt.Sprintf("https://%s.%s:%d", rt.Config().Runtime.Kubernetes.ControlPlaneServiceName, rt.Config().Store.Kubernetes.SystemNamespace, rt.Config().DpServer.Port) + if rt.Config().Mode == config_core.Global { + return nil + } // TODO don't use injector config cfg := rt.Config().Runtime.Kubernetes.Injector @@ -118,14 +122,14 @@ func addGatewayReconcilers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, conve return errors.Wrap(err, "could not setup MeshGatewayInstance reconciler") } - if err := addGatewayAPIReconcillers(mgr, rt, proxyFactory); err != nil { + if err := addGatewayAPIReconcilers(mgr, rt, proxyFactory); err != nil { return err } return nil } -func addGatewayAPIReconcillers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, proxyFactory *containers.DataplaneProxyFactory) error { +func addGatewayAPIReconcilers(mgr kube_ctrl.Manager, rt core_runtime.Runtime, proxyFactory *containers.DataplaneProxyFactory) error { if ok, missingGatewayCRDs := gatewayAPICRDsPresent(mgr); !ok { if len(requiredGatewayCRDs) != len(missingGatewayCRDs) { // Logging this as error as in such case there is possibility that user is expecting