diff --git a/cmd/minikube/cmd/node_add.go b/cmd/minikube/cmd/node_add.go index 5121fb1aff..08ec538d52 100644 --- a/cmd/minikube/cmd/node_add.go +++ b/cmd/minikube/cmd/node_add.go @@ -19,6 +19,7 @@ package cmd import ( "github.com/spf13/cobra" "github.com/spf13/viper" + "k8s.io/minikube/pkg/minikube/cni" "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/minikube/exit" @@ -64,6 +65,10 @@ var nodeAddCmd = &cobra.Command{ if viper.GetString(memory) == "" { cc.Memory = 2200 } + + if !cc.MultiNodeRequested || cni.IsDisabled(*cc) { + warnAboutMultiNodeCNI() + } } if err := node.Add(cc, n, false); err != nil { diff --git a/cmd/minikube/cmd/start.go b/cmd/minikube/cmd/start.go index 5f3062b770..f0e5e2dbf5 100644 --- a/cmd/minikube/cmd/start.go +++ b/cmd/minikube/cmd/start.go @@ -403,6 +403,10 @@ func warnAboutMultiNode() { out.Step(style.Documentation, "To track progress on multi-node clusters, see https://github.com/kubernetes/minikube/issues/7538.") } +func warnAboutMultiNodeCNI() { + out.WarningT("Cluster was created without any CNI, adding node to it might cause broken network.") +} + func updateDriver(driverName string) { v, err := version.GetSemverVersion() if err != nil { diff --git a/cmd/minikube/cmd/start_flags.go b/cmd/minikube/cmd/start_flags.go index 52d557789d..d5e7276c0c 100644 --- a/cmd/minikube/cmd/start_flags.go +++ b/cmd/minikube/cmd/start_flags.go @@ -347,6 +347,7 @@ func generateClusterConfig(cmd *cobra.Command, existing *config.ClusterConfig, k CNI: chosenCNI, NodePort: viper.GetInt(apiServerPort), }, + MultiNodeRequested: viper.GetInt(nodes) > 1, } cc.VerifyComponents = interpretWaitFlag(*cmd) if viper.GetBool(createMount) && driver.IsKIC(drvName) { diff --git a/pkg/minikube/bootstrapper/bsutil/ktmpl/v1alpha3.go b/pkg/minikube/bootstrapper/bsutil/ktmpl/v1alpha3.go index 642213eb73..20e839b49b 100644 --- a/pkg/minikube/bootstrapper/bsutil/ktmpl/v1alpha3.go +++ b/pkg/minikube/bootstrapper/bsutil/ktmpl/v1alpha3.go @@ -57,6 +57,7 @@ etcd: local: dataDir: {{.EtcdDataDir}} controllerManagerExtraArgs: + allocate-node-cidrs: "true" leader-elect: "false" schedulerExtraArgs: leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/kubeadm.go b/pkg/minikube/bootstrapper/bsutil/kubeadm.go index 48e4968e6d..04ce5dd766 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubeadm.go +++ b/pkg/minikube/bootstrapper/bsutil/kubeadm.go @@ -116,7 +116,7 @@ func GenerateKubeadmYAML(cc config.ClusterConfig, n config.Node, r cruntime.Mana EtcdDataDir: EtcdDataDir(), EtcdExtraArgs: etcdExtraArgs(k8s.ExtraOptions), ClusterName: cc.Name, - //kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine + // kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine NodeName: KubeNodeName(cc, n), CRISocket: r.SocketPath(), ImageRepository: k8s.ImageRepository, diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.12/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.12/dns.yaml index 8f5cbfe4e4..1d1912b3f2 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.12/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.12/dns.yaml @@ -29,6 +29,7 @@ etcd: local: dataDir: /var/lib/minikube/etcd controllerManagerExtraArgs: + allocate-node-cidrs: "true" leader-elect: "false" schedulerExtraArgs: leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.13/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.13/dns.yaml index ec2a152e6c..db6105a7c2 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.13/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.13/dns.yaml @@ -29,6 +29,7 @@ etcd: local: dataDir: /var/lib/minikube/etcd controllerManagerExtraArgs: + allocate-node-cidrs: "true" leader-elect: "false" schedulerExtraArgs: leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-api-port.yaml index 7e367f9763..1abfd65158 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-pod-network-cidr.yaml index 49e49992ec..34e1038b45 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd.yaml index 4d2e6ef796..612cb02daa 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio-options-gates.yaml index b300459369..df0fbe692f 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio.yaml index a447921c99..b99e83e831 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/default.yaml index 9a2be297b6..c2f3a0e56d 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/dns.yaml index 5c24065898..2b64ee7684 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/image-repository.yaml index 8e18b41e91..95b095a935 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/options.yaml index ae0e3b33bb..c4d5b22471 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.14/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-api-port.yaml index f847dc27ca..78100eb835 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-pod-network-cidr.yaml index acc7c1cc3e..085740c8c5 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd.yaml index 0fe66c2290..f16eb6a63c 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio-options-gates.yaml index 886ecc55fd..81192f67f0 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio.yaml index f797584ae6..3b59749130 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/default.yaml index a1ff88dfe0..de53b425a0 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/dns.yaml index 91132a6da2..c4d977e026 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/image-repository.yaml index 753e0f5808..585510795b 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/options.yaml index ac34fb54c9..28bb9776a1 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.15/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-api-port.yaml index 43c3a51676..8f65f20689 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-pod-network-cidr.yaml index 541fe28d7d..17560e5759 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd.yaml index c1220ac31c..8fae2108e0 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio-options-gates.yaml index 1dcc285066..8021a6243a 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio.yaml index bcbe3e1adb..b21aaba021 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/default.yaml index d3bddc93ff..bdc168dbe9 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/dns.yaml index 2167eec380..789fbbb279 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/image-repository.yaml index a5fabb7591..657430b1d8 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/options.yaml index fb7d61c5bd..1a49378f66 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.16/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-api-port.yaml index 88319aefdf..9e45ddef68 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-pod-network-cidr.yaml index 055a20bd15..cd0490858b 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd.yaml index bfb66f2e43..68ec81885f 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio-options-gates.yaml index 4451a1c2c1..5e0eb3422b 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio.yaml index fa9d43a70b..697d3ac588 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/default.yaml index bd43de8704..9327d71b9a 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/dns.yaml index 0447ecc4ee..d81012c76e 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/image-repository.yaml index 47a5f98af5..73d655547e 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/options.yaml index 210d15bf35..f5dfe03cb4 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.17/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-api-port.yaml index 499011c336..71460af024 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-pod-network-cidr.yaml index 979a943896..88230c0e06 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd.yaml index c13bc4d030..5e9d4cfe9a 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio-options-gates.yaml index 78f6655b66..18a33d5bd0 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio.yaml index 33a8a87757..d905fb6d1c 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/default.yaml index edb2737949..a16d252761 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/dns.yaml index 0ed2f3dcc3..a4f6629ff1 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/image-repository.yaml index 3d73fb78bc..822f1a7b22 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/options.yaml index c0ef89ccaa..badcff79fb 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.18/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-api-port.yaml index 617e821e6b..e27af142b3 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-pod-network-cidr.yaml index d91d3e926e..83fbdefc17 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd.yaml index 6c12857ab2..59f9336b01 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio-options-gates.yaml index 1dcff3d334..5eb7573563 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio.yaml index 751041646e..39f424a92c 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/default.yaml index da68c6fbcd..949759b9e3 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/dns.yaml index cadb2556e0..260b478b0a 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/image-repository.yaml index be593e2fd0..2c403efe7b 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/options.yaml index f9bad9233f..df5ba2ca14 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.19/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-api-port.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-api-port.yaml index af3c01cbe2..c1514049a6 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-api-port.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-api-port.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-pod-network-cidr.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-pod-network-cidr.yaml index 925a954691..55fe4a06bd 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-pod-network-cidr.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd-pod-network-cidr.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd.yaml index d1f82ada09..b6c4c740c3 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/containerd.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio-options-gates.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio-options-gates.yaml index 160d8f5aa5..9094403207 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio-options-gates.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio-options-gates.yaml @@ -27,6 +27,7 @@ apiServer: feature-gates: "a=b" controllerManager: extraArgs: + allocate-node-cidrs: "true" feature-gates: "a=b" kube-api-burst: "32" leader-elect: "false" diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio.yaml index b90f0a0c8d..478e494f5e 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/crio.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/default.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/default.yaml index 9da6e14be9..ddb43d0d20 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/default.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/default.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/dns.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/dns.yaml index 26f5cf2709..8c61c65ff3 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/dns.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/dns.yaml @@ -25,6 +25,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/image-repository.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/image-repository.yaml index 8a7fe9e602..6696aca0f4 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/image-repository.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/image-repository.yaml @@ -26,6 +26,7 @@ apiServer: enable-admission-plugins: "NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota" controllerManager: extraArgs: + allocate-node-cidrs: "true" leader-elect: "false" scheduler: extraArgs: diff --git a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/options.yaml b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/options.yaml index 374dbddd20..b0d1c99069 100644 --- a/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/options.yaml +++ b/pkg/minikube/bootstrapper/bsutil/testdata/v1.20/options.yaml @@ -26,6 +26,7 @@ apiServer: fail-no-swap: "true" controllerManager: extraArgs: + allocate-node-cidrs: "true" kube-api-burst: "32" leader-elect: "false" scheduler: diff --git a/pkg/minikube/bootstrapper/bsutil/versions.go b/pkg/minikube/bootstrapper/bsutil/versions.go index 6222380c8d..5362fb5339 100644 --- a/pkg/minikube/bootstrapper/bsutil/versions.go +++ b/pkg/minikube/bootstrapper/bsutil/versions.go @@ -39,7 +39,6 @@ func versionIsBetween(version, gte, lte semver.Version) bool { } var versionSpecificOpts = []config.VersionedExtraOption{ - config.NewUnversionedOption(Kubelet, "bootstrap-kubeconfig", "/etc/kubernetes/bootstrap-kubelet.conf"), config.NewUnversionedOption(Kubelet, "config", "/var/lib/kubelet/config.yaml"), config.NewUnversionedOption(Kubelet, "kubeconfig", "/etc/kubernetes/kubelet.conf"), @@ -97,6 +96,14 @@ var versionSpecificOpts = []config.VersionedExtraOption{ }, LessThanOrEqual: semver.MustParse("1.11.1000"), }, + { + Option: config.ExtraOption{ + Component: ControllerManager, + Key: "allocate-node-cidrs", + Value: "true", + }, + GreaterThanOrEqual: semver.MustParse("1.14.0"), + }, { Option: config.ExtraOption{ Component: ControllerManager, diff --git a/pkg/minikube/cni/cni.go b/pkg/minikube/cni/cni.go index bf7ad27cbd..c0d2a44b25 100644 --- a/pkg/minikube/cni/cni.go +++ b/pkg/minikube/cni/cni.go @@ -93,6 +93,21 @@ func New(cc config.ClusterConfig) (Manager, error) { } } +func IsDisabled(cc config.ClusterConfig) bool { + if cc.KubernetesConfig.NetworkPlugin != "" && cc.KubernetesConfig.NetworkPlugin != "cni" { + return true + } + + if cc.KubernetesConfig.CNI == "false" { + return true + } + + if chooseDefault(cc).String() == "Disabled" { + return true + } + return false +} + func chooseDefault(cc config.ClusterConfig) Manager { // For backwards compatibility with older profiles using --enable-default-cni if cc.KubernetesConfig.EnableDefaultCNI { @@ -109,13 +124,20 @@ func chooseDefault(cc config.ClusterConfig) Manager { return Bridge{cc: cc} } - if len(cc.Nodes) > 1 { + if driver.BareMetal(cc.Driver) { + klog.Infof("Driver %s used, CNI unnecessary in this configuration, recommending no CNI", cc.Driver) + return Disabled{cc: cc} + } + + if len(cc.Nodes) > 1 || cc.MultiNodeRequested { + // Enables KindNet CNI in master in multi node cluster, This solves the network problem + // inside pod for multi node clusters. See https://github.com/kubernetes/minikube/issues/9838. klog.Infof("%d nodes found, recommending kindnet", len(cc.Nodes)) return KindNet{cc: cc} } klog.Infof("CNI unnecessary in this configuration, recommending no CNI") - return Disabled{} + return Disabled{cc: cc} } // manifestPath returns the path to the CNI manifest diff --git a/pkg/minikube/cni/disabled.go b/pkg/minikube/cni/disabled.go index b7dccf60c5..0832798fce 100644 --- a/pkg/minikube/cni/disabled.go +++ b/pkg/minikube/cni/disabled.go @@ -47,5 +47,6 @@ func (c Disabled) Apply(r Runner) error { // CIDR returns the default CIDR used by this CNI func (c Disabled) CIDR() string { - return "" + // Even without any CNI we want our nodes to have spec.PodCIDR set. + return DefaultPodCIDR } diff --git a/pkg/minikube/config/types.go b/pkg/minikube/config/types.go index d95e9f7c85..8dea984967 100644 --- a/pkg/minikube/config/types.go +++ b/pkg/minikube/config/types.go @@ -73,6 +73,7 @@ type ClusterConfig struct { StartHostTimeout time.Duration ScheduledStop *ScheduledStopConfig ExposedPorts []string // Only used by the docker and podman driver + MultiNodeRequested bool } // KubernetesConfig contains the parameters used to configure the VM Kubernetes.