From f3d4db330af75082a9a64c3fc75776146bb918cf Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Fri, 24 Apr 2020 12:07:49 -0700 Subject: [PATCH 1/7] adding ability to detect multinode clusters --- pkg/minikube/cluster/cluster.go | 21 ++++++++++++++++++++- pkg/minikube/config/config.go | 15 +++++++++++++++ pkg/minikube/driver/driver.go | 2 +- pkg/minikube/node/start.go | 15 +-------------- 4 files changed, 37 insertions(+), 16 deletions(-) diff --git a/pkg/minikube/cluster/cluster.go b/pkg/minikube/cluster/cluster.go index 9e385686f2..7d63f050f0 100644 --- a/pkg/minikube/cluster/cluster.go +++ b/pkg/minikube/cluster/cluster.go @@ -28,7 +28,9 @@ import ( "k8s.io/minikube/pkg/minikube/bootstrapper/kubeadm" "k8s.io/minikube/pkg/minikube/command" "k8s.io/minikube/pkg/minikube/config" + "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/minikube/exit" + "k8s.io/minikube/pkg/minikube/machine" ) // This init function is used to set the logtostderr variable to false so that INFO level log info does not clutter the CLI @@ -44,7 +46,6 @@ func init() { } // Bootstrapper returns a new bootstrapper for the cluster -// TODO(#6891): Remove node as an argument func Bootstrapper(api libmachine.API, bootstrapperName string, cc config.ClusterConfig, r command.Runner) (bootstrapper.Bootstrapper, error) { var b bootstrapper.Bootstrapper var err error @@ -59,3 +60,21 @@ func Bootstrapper(api libmachine.API, bootstrapperName string, cc config.Cluster } return b, nil } + +// ControlPlaneBootstrapper returns the bootstrapper for the cluster's control plane +func ControlPlaneBootstrapper(mAPI libmachine.API, cc *config.ClusterConfig, bootstrapperName string) (bootstrapper.Bootstrapper, error) { + cp, err := config.PrimaryControlPlane(cc) + if err != nil { + return nil, errors.Wrap(err, "getting primary control plane") + } + h, err := machine.LoadHost(mAPI, driver.MachineName(*cc, cp)) + if err != nil { + return nil, errors.Wrap(err, "getting control plane host") + } + cpr, err := machine.CommandRunner(h) + if err != nil { + return nil, errors.Wrap(err, "getting control plane command runner") + } + + return Bootstrapper(mAPI, bootstrapperName, *cc, cpr) +} diff --git a/pkg/minikube/config/config.go b/pkg/minikube/config/config.go index 4db4af8dc5..4fe3f79f08 100644 --- a/pkg/minikube/config/config.go +++ b/pkg/minikube/config/config.go @@ -25,6 +25,7 @@ import ( "github.com/pkg/errors" + "k8s.io/minikube/pkg/drivers/kic" "k8s.io/minikube/pkg/minikube/localpath" ) @@ -200,3 +201,17 @@ func (c *simpleConfigLoader) WriteConfigToFile(profileName string, cc *ClusterCo } return ioutil.WriteFile(path, contents, 0644) } + +// MultiNodeCNIConfig add default CNI config needed for multinode clusters and saves off the config +func MultiNodeCNIConfig(cc *ClusterConfig) { + cc.KubernetesConfig.NetworkPlugin = "cni" + cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", kic.DefaultPodCIDR)) + SaveProfile(cc.Name, cc) +} + +// MultiNode returns true if the cluster +func MultiNode(cc ClusterConfig) bool { + if len(cc.Nodes) > 1 { + return true + } +} diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index a55f7de441..fe9efd580e 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -163,7 +163,7 @@ func FlagDefaults(name string) FlagHints { fh := FlagHints{} if name != None { fh.CacheImages = true - // only for kic, till other run-times are available we auto-set containerd. + // only for kic, until other runtimes are available we auto-set containerd. if name == Docker { fh.ExtraOptions = append(fh.ExtraOptions, fmt.Sprintf("kubeadm.pod-network-cidr=%s", kic.DefaultPodCIDR)) } diff --git a/pkg/minikube/node/start.go b/pkg/minikube/node/start.go index 5f2aecb0d9..19ddf2ef9b 100644 --- a/pkg/minikube/node/start.go +++ b/pkg/minikube/node/start.go @@ -156,20 +156,7 @@ func Start(starter Starter, apiServer bool) (*kubeconfig.Settings, error) { } // Make sure to use the command runner for the control plane to generate the join token - cp, err := config.PrimaryControlPlane(starter.Cfg) - if err != nil { - return nil, errors.Wrap(err, "getting primary control plane") - } - h, err := machine.LoadHost(starter.MachineAPI, driver.MachineName(*starter.Cfg, cp)) - if err != nil { - return nil, errors.Wrap(err, "getting control plane host") - } - cpr, err := machine.CommandRunner(h) - if err != nil { - return nil, errors.Wrap(err, "getting control plane command runner") - } - - cpBs, err := cluster.Bootstrapper(starter.MachineAPI, viper.GetString(cmdcfg.Bootstrapper), *starter.Cfg, cpr) + cpBs, err := cluster.ControlPlaneBootstrapper(starter.MachineAPI, starter.Cfg, viper.GetString(cmdcfg.Bootstrapper)) if err != nil { return nil, errors.Wrap(err, "getting control plane bootstrapper") } From 228c1b092cb6b1975aa2dbb66cce8134a7b5a3fb Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Mon, 27 Apr 2020 14:15:12 -0700 Subject: [PATCH 2/7] automatically apply kic overlay when detecting multinode clusters --- cmd/minikube/cmd/node_add.go | 4 ++++ pkg/drivers/kic/types.go | 6 ------ pkg/minikube/bootstrapper/bootstrapper.go | 1 + pkg/minikube/bootstrapper/kubeadm/kubeadm.go | 7 ++++++- pkg/minikube/config/config.go | 17 +++++++++++++---- pkg/minikube/config/profile.go | 5 +++++ pkg/minikube/config/types.go | 8 ++++++++ pkg/minikube/driver/driver.go | 3 +-- pkg/minikube/node/start.go | 6 +++++- 9 files changed, 43 insertions(+), 14 deletions(-) diff --git a/cmd/minikube/cmd/node_add.go b/cmd/minikube/cmd/node_add.go index 3344065794..5d668f7531 100644 --- a/cmd/minikube/cmd/node_add.go +++ b/cmd/minikube/cmd/node_add.go @@ -61,6 +61,10 @@ var nodeAddCmd = &cobra.Command{ } } + // Add CNI config if it's not already there + // We need to run kubeadm.init here as well + config.MultiNodeCNIConfig(cc) + out.T(out.Ready, "Successfully added {{.name}} to {{.cluster}}!", out.V{"name": name, "cluster": cc.Name}) }, } diff --git a/pkg/drivers/kic/types.go b/pkg/drivers/kic/types.go index 2b01019b2e..c8602c9000 100644 --- a/pkg/drivers/kic/types.go +++ b/pkg/drivers/kic/types.go @@ -23,12 +23,6 @@ import ( ) const ( - // DefaultNetwork is the Docker default bridge network named "bridge" - // (https://docs.docker.com/network/bridge/#use-the-default-bridge-network) - DefaultNetwork = "bridge" - // DefaultPodCIDR is The CIDR to be used for pods inside the node. - DefaultPodCIDR = "10.244.0.0/16" - // Version is the current version of kic Version = "v0.0.9" // SHA of the kic base image diff --git a/pkg/minikube/bootstrapper/bootstrapper.go b/pkg/minikube/bootstrapper/bootstrapper.go index 0019b1750d..e7ae9ba385 100644 --- a/pkg/minikube/bootstrapper/bootstrapper.go +++ b/pkg/minikube/bootstrapper/bootstrapper.go @@ -46,6 +46,7 @@ type Bootstrapper interface { LogCommands(config.ClusterConfig, LogOptions) map[string]string SetupCerts(config.KubernetesConfig, config.Node) error GetAPIServerStatus(string, int) (string, error) + ApplyCNI(config.ClusterConfig) error } const ( diff --git a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go index d41ba6d248..2c1b57aaaf 100644 --- a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go +++ b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go @@ -226,7 +226,7 @@ func (k *Bootstrapper) init(cfg config.ClusterConfig) error { glog.Errorf("unable to create cluster role binding, some addons might not work: %v", err) } // the overlay is required for containerd and cri-o runtime: see #7428 - if driver.IsKIC(cfg.Driver) && cfg.KubernetesConfig.ContainerRuntime != "docker" { + if config.MultiNode(cfg) || (driver.IsKIC(cfg.Driver) && cfg.KubernetesConfig.ContainerRuntime != "docker") { if err := k.applyKICOverlay(cfg); err != nil { glog.Errorf("failed to apply kic overlay: %v", err) } @@ -809,8 +809,13 @@ func kubectlPath(cfg config.ClusterConfig) string { return path.Join(vmpath.GuestPersistentDir, "binaries", cfg.KubernetesConfig.KubernetesVersion, "kubectl") } +func (k *Bootstrapper) ApplyCNI(cfg config.ClusterConfig) error { + return k.applyKICOverlay(cfg) +} + // applyKICOverlay applies the CNI plugin needed to make kic work func (k *Bootstrapper) applyKICOverlay(cfg config.ClusterConfig) error { + fmt.Println("APPLYING KIC OVERLAY") b := bytes.Buffer{} if err := kicCNIConfig.Execute(&b, struct{ ImageName string }{ImageName: kic.OverlayImage}); err != nil { return err diff --git a/pkg/minikube/config/config.go b/pkg/minikube/config/config.go index 4fe3f79f08..facedad5a6 100644 --- a/pkg/minikube/config/config.go +++ b/pkg/minikube/config/config.go @@ -24,8 +24,8 @@ import ( "os" "github.com/pkg/errors" + "github.com/spf13/viper" - "k8s.io/minikube/pkg/drivers/kic" "k8s.io/minikube/pkg/minikube/localpath" ) @@ -204,9 +204,12 @@ func (c *simpleConfigLoader) WriteConfigToFile(profileName string, cc *ClusterCo // MultiNodeCNIConfig add default CNI config needed for multinode clusters and saves off the config func MultiNodeCNIConfig(cc *ClusterConfig) { - cc.KubernetesConfig.NetworkPlugin = "cni" - cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", kic.DefaultPodCIDR)) - SaveProfile(cc.Name, cc) + if cc.KubernetesConfig.ExtraOptions.Get("pod-network-cidr", "kubeadm") == "" { + fmt.Println("SETTING CNI CONFIG") + cc.KubernetesConfig.NetworkPlugin = "cni" + cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", DefaultPodCIDR)) + SaveProfile(cc.Name, cc) + } } // MultiNode returns true if the cluster @@ -214,4 +217,10 @@ func MultiNode(cc ClusterConfig) bool { if len(cc.Nodes) > 1 { return true } + + if viper.GetInt("nodes") > 1 { + return true + } + + return false } diff --git a/pkg/minikube/config/profile.go b/pkg/minikube/config/profile.go index 8345341c51..6a476eaf00 100644 --- a/pkg/minikube/config/profile.go +++ b/pkg/minikube/config/profile.go @@ -136,6 +136,11 @@ func SaveNode(cfg *ClusterConfig, node *Node) error { if !update { cfg.Nodes = append(cfg.Nodes, *node) } + + if MultiNode(*cfg) { + MultiNodeCNIConfig(cfg) + } + return SaveProfile(viper.GetString(ProfileName), cfg) } diff --git a/pkg/minikube/config/types.go b/pkg/minikube/config/types.go index 95991d5f33..4ce0470953 100644 --- a/pkg/minikube/config/types.go +++ b/pkg/minikube/config/types.go @@ -22,6 +22,14 @@ import ( "github.com/blang/semver" ) +const ( + // DefaultNetwork is the Docker default bridge network named "bridge" + // (https://docs.docker.com/network/bridge/#use-the-default-bridge-network) + DefaultNetwork = "bridge" + // DefaultPodCIDR is The CIDR to be used for pods inside the node. + DefaultPodCIDR = "10.244.0.0/16" +) + // Profile represents a minikube profile type Profile struct { Name string diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index fe9efd580e..4fcd44c059 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -24,7 +24,6 @@ import ( "strings" "github.com/golang/glog" - "k8s.io/minikube/pkg/drivers/kic" "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/registry" ) @@ -165,7 +164,7 @@ func FlagDefaults(name string) FlagHints { fh.CacheImages = true // only for kic, until other runtimes are available we auto-set containerd. if name == Docker { - fh.ExtraOptions = append(fh.ExtraOptions, fmt.Sprintf("kubeadm.pod-network-cidr=%s", kic.DefaultPodCIDR)) + fh.ExtraOptions = append(fh.ExtraOptions, fmt.Sprintf("kubeadm.pod-network-cidr=%s", config.DefaultPodCIDR)) } return fh } diff --git a/pkg/minikube/node/start.go b/pkg/minikube/node/start.go index 19ddf2ef9b..92458dbc74 100644 --- a/pkg/minikube/node/start.go +++ b/pkg/minikube/node/start.go @@ -169,6 +169,10 @@ func Start(starter Starter, apiServer bool) (*kubeconfig.Settings, error) { if err = bs.JoinCluster(*starter.Cfg, *starter.Node, joinCmd); err != nil { return nil, errors.Wrap(err, "joining cluster") } + + if err = cpBs.ApplyCNI(*starter.Cfg); err != nil { + return nil, errors.Wrap(err, "applying CNI") + } } wg.Wait() @@ -196,7 +200,7 @@ func Provision(cc *config.ClusterConfig, n *config.Node, apiServer bool) (comman } // Abstraction leakage alert: startHost requires the config to be saved, to satistfy pkg/provision/buildroot. - // Hence, saveConfig must be called before startHost, and again afterwards when we know the IP. + // Hence, SaveProfile must be called before startHost, and again afterwards when we know the IP. if err := config.SaveProfile(viper.GetString(config.ProfileName), cc); err != nil { return nil, false, nil, nil, errors.Wrap(err, "Failed to save config") } From e2467b2081e5aac5d83fab11d2492c706f57b19b Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Mon, 27 Apr 2020 17:53:55 -0700 Subject: [PATCH 3/7] just always apply overlay --- pkg/minikube/bootstrapper/bootstrapper.go | 1 - pkg/minikube/bootstrapper/kubeadm/kubeadm.go | 11 +++-------- pkg/minikube/node/start.go | 4 ---- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/pkg/minikube/bootstrapper/bootstrapper.go b/pkg/minikube/bootstrapper/bootstrapper.go index e7ae9ba385..0019b1750d 100644 --- a/pkg/minikube/bootstrapper/bootstrapper.go +++ b/pkg/minikube/bootstrapper/bootstrapper.go @@ -46,7 +46,6 @@ type Bootstrapper interface { LogCommands(config.ClusterConfig, LogOptions) map[string]string SetupCerts(config.KubernetesConfig, config.Node) error GetAPIServerStatus(string, int) (string, error) - ApplyCNI(config.ClusterConfig) error } const ( diff --git a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go index 2c1b57aaaf..7111d0e567 100644 --- a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go +++ b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go @@ -226,11 +226,10 @@ func (k *Bootstrapper) init(cfg config.ClusterConfig) error { glog.Errorf("unable to create cluster role binding, some addons might not work: %v", err) } // the overlay is required for containerd and cri-o runtime: see #7428 - if config.MultiNode(cfg) || (driver.IsKIC(cfg.Driver) && cfg.KubernetesConfig.ContainerRuntime != "docker") { - if err := k.applyKICOverlay(cfg); err != nil { - glog.Errorf("failed to apply kic overlay: %v", err) - } + if err := k.applyKICOverlay(cfg); err != nil { + glog.Errorf("failed to apply kic overlay: %v", err) } + wg.Done() }() @@ -809,10 +808,6 @@ func kubectlPath(cfg config.ClusterConfig) string { return path.Join(vmpath.GuestPersistentDir, "binaries", cfg.KubernetesConfig.KubernetesVersion, "kubectl") } -func (k *Bootstrapper) ApplyCNI(cfg config.ClusterConfig) error { - return k.applyKICOverlay(cfg) -} - // applyKICOverlay applies the CNI plugin needed to make kic work func (k *Bootstrapper) applyKICOverlay(cfg config.ClusterConfig) error { fmt.Println("APPLYING KIC OVERLAY") diff --git a/pkg/minikube/node/start.go b/pkg/minikube/node/start.go index 92458dbc74..aeb825965c 100644 --- a/pkg/minikube/node/start.go +++ b/pkg/minikube/node/start.go @@ -169,10 +169,6 @@ func Start(starter Starter, apiServer bool) (*kubeconfig.Settings, error) { if err = bs.JoinCluster(*starter.Cfg, *starter.Node, joinCmd); err != nil { return nil, errors.Wrap(err, "joining cluster") } - - if err = cpBs.ApplyCNI(*starter.Cfg); err != nil { - return nil, errors.Wrap(err, "applying CNI") - } } wg.Wait() From 2d95ec92220a6647065127b7d8c015904e5a75a3 Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Tue, 28 Apr 2020 11:42:51 -0700 Subject: [PATCH 4/7] check for multinode --- pkg/minikube/bootstrapper/kubeadm/kubeadm.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go index 7111d0e567..e8956b9140 100644 --- a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go +++ b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go @@ -226,10 +226,11 @@ func (k *Bootstrapper) init(cfg config.ClusterConfig) error { glog.Errorf("unable to create cluster role binding, some addons might not work: %v", err) } // the overlay is required for containerd and cri-o runtime: see #7428 - if err := k.applyKICOverlay(cfg); err != nil { - glog.Errorf("failed to apply kic overlay: %v", err) + if config.MultiNode(cfg) || (driver.IsKIC(cfg.Driver) && cfg.KubernetesConfig.ContainerRuntime != "docker") { + if err := k.applyKICOverlay(cfg); err != nil { + glog.Errorf("failed to apply kic overlay: %v", err) + } } - wg.Done() }() @@ -810,7 +811,7 @@ func kubectlPath(cfg config.ClusterConfig) string { // applyKICOverlay applies the CNI plugin needed to make kic work func (k *Bootstrapper) applyKICOverlay(cfg config.ClusterConfig) error { - fmt.Println("APPLYING KIC OVERLAY") + fmt.Println("APPLY KIC OVERLAY") b := bytes.Buffer{} if err := kicCNIConfig.Execute(&b, struct{ ImageName string }{ImageName: kic.OverlayImage}); err != nil { return err From 747b18a955307efbe548e949c06ee99b471d1053 Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Tue, 28 Apr 2020 12:10:27 -0700 Subject: [PATCH 5/7] lint --- cmd/minikube/cmd/node_add.go | 4 +++- pkg/minikube/config/config.go | 9 ++++++--- pkg/minikube/config/profile.go | 4 +++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/cmd/minikube/cmd/node_add.go b/cmd/minikube/cmd/node_add.go index 5d668f7531..a2a243b3e9 100644 --- a/cmd/minikube/cmd/node_add.go +++ b/cmd/minikube/cmd/node_add.go @@ -63,7 +63,9 @@ var nodeAddCmd = &cobra.Command{ // Add CNI config if it's not already there // We need to run kubeadm.init here as well - config.MultiNodeCNIConfig(cc) + if err := config.MultiNodeCNIConfig(cc); err != nil { + exit.WithError("failed to save config", err) + } out.T(out.Ready, "Successfully added {{.name}} to {{.cluster}}!", out.V{"name": name, "cluster": cc.Name}) }, diff --git a/pkg/minikube/config/config.go b/pkg/minikube/config/config.go index facedad5a6..ccd0c7240d 100644 --- a/pkg/minikube/config/config.go +++ b/pkg/minikube/config/config.go @@ -203,13 +203,16 @@ func (c *simpleConfigLoader) WriteConfigToFile(profileName string, cc *ClusterCo } // MultiNodeCNIConfig add default CNI config needed for multinode clusters and saves off the config -func MultiNodeCNIConfig(cc *ClusterConfig) { +func MultiNodeCNIConfig(cc *ClusterConfig) error { if cc.KubernetesConfig.ExtraOptions.Get("pod-network-cidr", "kubeadm") == "" { fmt.Println("SETTING CNI CONFIG") cc.KubernetesConfig.NetworkPlugin = "cni" - cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", DefaultPodCIDR)) - SaveProfile(cc.Name, cc) + if err := cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", DefaultPodCIDR)); err != nil { + return err + } + return SaveProfile(cc.Name, cc) } + return nil } // MultiNode returns true if the cluster diff --git a/pkg/minikube/config/profile.go b/pkg/minikube/config/profile.go index 6a476eaf00..1b6b759f52 100644 --- a/pkg/minikube/config/profile.go +++ b/pkg/minikube/config/profile.go @@ -138,7 +138,9 @@ func SaveNode(cfg *ClusterConfig, node *Node) error { } if MultiNode(*cfg) { - MultiNodeCNIConfig(cfg) + if err := MultiNodeCNIConfig(cfg); err != nil { + return err + } } return SaveProfile(viper.GetString(ProfileName), cfg) From 19705a481e392ab7eca8f27b4b34142438c99703 Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Tue, 28 Apr 2020 12:40:42 -0700 Subject: [PATCH 6/7] remove debugging --- pkg/minikube/bootstrapper/kubeadm/kubeadm.go | 1 - pkg/minikube/config/config.go | 1 - pkg/minikube/driver/driver.go | 1 - 3 files changed, 3 deletions(-) diff --git a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go index e8956b9140..d50fbc50fc 100644 --- a/pkg/minikube/bootstrapper/kubeadm/kubeadm.go +++ b/pkg/minikube/bootstrapper/kubeadm/kubeadm.go @@ -811,7 +811,6 @@ func kubectlPath(cfg config.ClusterConfig) string { // applyKICOverlay applies the CNI plugin needed to make kic work func (k *Bootstrapper) applyKICOverlay(cfg config.ClusterConfig) error { - fmt.Println("APPLY KIC OVERLAY") b := bytes.Buffer{} if err := kicCNIConfig.Execute(&b, struct{ ImageName string }{ImageName: kic.OverlayImage}); err != nil { return err diff --git a/pkg/minikube/config/config.go b/pkg/minikube/config/config.go index ccd0c7240d..82cf57431d 100644 --- a/pkg/minikube/config/config.go +++ b/pkg/minikube/config/config.go @@ -205,7 +205,6 @@ func (c *simpleConfigLoader) WriteConfigToFile(profileName string, cc *ClusterCo // MultiNodeCNIConfig add default CNI config needed for multinode clusters and saves off the config func MultiNodeCNIConfig(cc *ClusterConfig) error { if cc.KubernetesConfig.ExtraOptions.Get("pod-network-cidr", "kubeadm") == "" { - fmt.Println("SETTING CNI CONFIG") cc.KubernetesConfig.NetworkPlugin = "cni" if err := cc.KubernetesConfig.ExtraOptions.Set(fmt.Sprintf("kubeadm.pod-network-cidr=%s", DefaultPodCIDR)); err != nil { return err diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index 4fcd44c059..074267c48c 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -162,7 +162,6 @@ func FlagDefaults(name string) FlagHints { fh := FlagHints{} if name != None { fh.CacheImages = true - // only for kic, until other runtimes are available we auto-set containerd. if name == Docker { fh.ExtraOptions = append(fh.ExtraOptions, fmt.Sprintf("kubeadm.pod-network-cidr=%s", config.DefaultPodCIDR)) } From 17d7c2a0f8778dd8d4c00d4fea4cf1f39d02e7ca Mon Sep 17 00:00:00 2001 From: Sharif Elgamal Date: Tue, 28 Apr 2020 12:45:01 -0700 Subject: [PATCH 7/7] finish comment --- pkg/minikube/config/config.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/minikube/config/config.go b/pkg/minikube/config/config.go index 82cf57431d..9e2e11a467 100644 --- a/pkg/minikube/config/config.go +++ b/pkg/minikube/config/config.go @@ -214,7 +214,7 @@ func MultiNodeCNIConfig(cc *ClusterConfig) error { return nil } -// MultiNode returns true if the cluster +// MultiNode returns true if the cluster has multiple nodes or if the request is asking for multinode func MultiNode(cc ClusterConfig) bool { if len(cc.Nodes) > 1 { return true