From 151db5ffe63dd84b726a02216704ff1018475031 Mon Sep 17 00:00:00 2001 From: Zhongcheng Lao Date: Sat, 21 Mar 2020 19:27:38 +0800 Subject: [PATCH 1/4] Use hostname as node name for 'none' driver --- pkg/minikube/bootstrapper/bsutil/kubeadm.go | 2 +- pkg/minikube/bootstrapper/bsutil/kubelet.go | 5 +++-- pkg/minikube/driver/driver.go | 10 ++++++++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/pkg/minikube/bootstrapper/bsutil/kubeadm.go b/pkg/minikube/bootstrapper/bsutil/kubeadm.go index 8b675ae644..6fc923c855 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubeadm.go +++ b/pkg/minikube/bootstrapper/bsutil/kubeadm.go @@ -94,7 +94,7 @@ func GenerateKubeadmYAML(cc config.ClusterConfig, n config.Node, r cruntime.Mana EtcdDataDir: EtcdDataDir(), ClusterName: cc.Name, //kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine - NodeName: driver.MachineName(cc, n), + NodeName: driver.KubeNodeName(cc, n), CRISocket: r.SocketPath(), ImageRepository: k8s.ImageRepository, ComponentOptions: componentOpts, diff --git a/pkg/minikube/bootstrapper/bsutil/kubelet.go b/pkg/minikube/bootstrapper/bsutil/kubelet.go index ce161b41da..3f22f8fbc7 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubelet.go +++ b/pkg/minikube/bootstrapper/bsutil/kubelet.go @@ -60,8 +60,9 @@ func extraKubeletOpts(mc config.ClusterConfig, nc config.Node, r cruntime.Manage if _, ok := extraOpts["node-ip"]; !ok { extraOpts["node-ip"] = cp.IP } - if nc.Name != "" { - extraOpts["hostname-override"] = driver.MachineName(mc, nc) + nodeName := driver.KubeNodeName(mc, nc) + if nodeName != "" { + extraOpts["hostname-override"] = nodeName } pauseImage := images.Pause(version, k8s.ImageRepository) diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index b6106474d8..54f379439b 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -237,6 +237,16 @@ func MachineName(cc config.ClusterConfig, n config.Node) string { return fmt.Sprintf("%s---%s", cc.Name, n.Name) } +// KubeNodeName returns the node name registered in Kubernetes +func KubeNodeName(cc config.ClusterConfig, n config.Node) string { + if cc.Driver == None { + // Always use hostname for "none" driver + hostname, _ := os.Hostname() + return hostname + } + return MachineName(cc, n) +} + // ClusterNameFromMachine retrieves the cluster name embedded in the machine name func ClusterNameFromMachine(name string) (string, string) { if strings.Contains(name, "---") { From 6ff82c6246d2a7578df1fbe9425869e8fffae002 Mon Sep 17 00:00:00 2001 From: Zhongcheng Lao Date: Sun, 22 Mar 2020 14:31:37 +0800 Subject: [PATCH 2/4] Make node name registered in K8s part of Node type --- pkg/minikube/bootstrapper/bsutil/kubeadm.go | 3 +-- pkg/minikube/bootstrapper/bsutil/kubelet.go | 3 +-- pkg/minikube/config/types.go | 12 ++++++++++++ pkg/minikube/driver/driver.go | 10 ---------- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkg/minikube/bootstrapper/bsutil/kubeadm.go b/pkg/minikube/bootstrapper/bsutil/kubeadm.go index bcc363c9da..55cec06303 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubeadm.go +++ b/pkg/minikube/bootstrapper/bsutil/kubeadm.go @@ -29,7 +29,6 @@ import ( "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/constants" "k8s.io/minikube/pkg/minikube/cruntime" - "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/minikube/vmpath" "k8s.io/minikube/pkg/util" ) @@ -94,7 +93,7 @@ func GenerateKubeadmYAML(cc config.ClusterConfig, n config.Node, r cruntime.Mana EtcdDataDir: EtcdDataDir(), ClusterName: cc.Name, //kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine - NodeName: driver.KubeNodeName(cc, n), + NodeName: n.InternalName(), CRISocket: r.SocketPath(), ImageRepository: k8s.ImageRepository, ComponentOptions: componentOpts, diff --git a/pkg/minikube/bootstrapper/bsutil/kubelet.go b/pkg/minikube/bootstrapper/bsutil/kubelet.go index 3f22f8fbc7..06e52d0ed2 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubelet.go +++ b/pkg/minikube/bootstrapper/bsutil/kubelet.go @@ -26,7 +26,6 @@ import ( "k8s.io/minikube/pkg/minikube/bootstrapper/images" "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/cruntime" - "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/util" ) @@ -60,7 +59,7 @@ func extraKubeletOpts(mc config.ClusterConfig, nc config.Node, r cruntime.Manage if _, ok := extraOpts["node-ip"]; !ok { extraOpts["node-ip"] = cp.IP } - nodeName := driver.KubeNodeName(mc, nc) + nodeName := nc.InternalName() if nodeName != "" { extraOpts["hostname-override"] = nodeName } diff --git a/pkg/minikube/config/types.go b/pkg/minikube/config/types.go index 97c2a13039..af1dc66773 100644 --- a/pkg/minikube/config/types.go +++ b/pkg/minikube/config/types.go @@ -18,6 +18,7 @@ package config import ( "net" + "os" "github.com/blang/semver" ) @@ -102,6 +103,17 @@ type Node struct { Worker bool } +// returns the name to be registered kubernetes +func (n Node) InternalName() string { + if n.Name == "" { + // Always use hostname for "none" driver + hostname, _ := os.Hostname() + return hostname + } + + return n.Name +} + // VersionedExtraOption holds information on flags to apply to a specific range // of versions type VersionedExtraOption struct { diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index 54f379439b..b6106474d8 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -237,16 +237,6 @@ func MachineName(cc config.ClusterConfig, n config.Node) string { return fmt.Sprintf("%s---%s", cc.Name, n.Name) } -// KubeNodeName returns the node name registered in Kubernetes -func KubeNodeName(cc config.ClusterConfig, n config.Node) string { - if cc.Driver == None { - // Always use hostname for "none" driver - hostname, _ := os.Hostname() - return hostname - } - return MachineName(cc, n) -} - // ClusterNameFromMachine retrieves the cluster name embedded in the machine name func ClusterNameFromMachine(name string) (string, string) { if strings.Contains(name, "---") { From 15b1647b42c1bcbf8365115bd8b7bfb8f772d7d3 Mon Sep 17 00:00:00 2001 From: Zhongcheng Lao Date: Sun, 22 Mar 2020 15:06:38 +0800 Subject: [PATCH 3/4] Revert "Make node name registered in K8s part of Node type" This reverts commit 6ff82c6246d2a7578df1fbe9425869e8fffae002. --- pkg/minikube/bootstrapper/bsutil/kubeadm.go | 3 ++- pkg/minikube/bootstrapper/bsutil/kubelet.go | 3 ++- pkg/minikube/config/types.go | 12 ------------ pkg/minikube/driver/driver.go | 10 ++++++++++ 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pkg/minikube/bootstrapper/bsutil/kubeadm.go b/pkg/minikube/bootstrapper/bsutil/kubeadm.go index 55cec06303..bcc363c9da 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubeadm.go +++ b/pkg/minikube/bootstrapper/bsutil/kubeadm.go @@ -29,6 +29,7 @@ import ( "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/constants" "k8s.io/minikube/pkg/minikube/cruntime" + "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/minikube/vmpath" "k8s.io/minikube/pkg/util" ) @@ -93,7 +94,7 @@ func GenerateKubeadmYAML(cc config.ClusterConfig, n config.Node, r cruntime.Mana EtcdDataDir: EtcdDataDir(), ClusterName: cc.Name, //kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine - NodeName: n.InternalName(), + NodeName: driver.KubeNodeName(cc, n), CRISocket: r.SocketPath(), ImageRepository: k8s.ImageRepository, ComponentOptions: componentOpts, diff --git a/pkg/minikube/bootstrapper/bsutil/kubelet.go b/pkg/minikube/bootstrapper/bsutil/kubelet.go index 06e52d0ed2..3f22f8fbc7 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubelet.go +++ b/pkg/minikube/bootstrapper/bsutil/kubelet.go @@ -26,6 +26,7 @@ import ( "k8s.io/minikube/pkg/minikube/bootstrapper/images" "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/cruntime" + "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/util" ) @@ -59,7 +60,7 @@ func extraKubeletOpts(mc config.ClusterConfig, nc config.Node, r cruntime.Manage if _, ok := extraOpts["node-ip"]; !ok { extraOpts["node-ip"] = cp.IP } - nodeName := nc.InternalName() + nodeName := driver.KubeNodeName(mc, nc) if nodeName != "" { extraOpts["hostname-override"] = nodeName } diff --git a/pkg/minikube/config/types.go b/pkg/minikube/config/types.go index af1dc66773..97c2a13039 100644 --- a/pkg/minikube/config/types.go +++ b/pkg/minikube/config/types.go @@ -18,7 +18,6 @@ package config import ( "net" - "os" "github.com/blang/semver" ) @@ -103,17 +102,6 @@ type Node struct { Worker bool } -// returns the name to be registered kubernetes -func (n Node) InternalName() string { - if n.Name == "" { - // Always use hostname for "none" driver - hostname, _ := os.Hostname() - return hostname - } - - return n.Name -} - // VersionedExtraOption holds information on flags to apply to a specific range // of versions type VersionedExtraOption struct { diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index b6106474d8..54f379439b 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -237,6 +237,16 @@ func MachineName(cc config.ClusterConfig, n config.Node) string { return fmt.Sprintf("%s---%s", cc.Name, n.Name) } +// KubeNodeName returns the node name registered in Kubernetes +func KubeNodeName(cc config.ClusterConfig, n config.Node) string { + if cc.Driver == None { + // Always use hostname for "none" driver + hostname, _ := os.Hostname() + return hostname + } + return MachineName(cc, n) +} + // ClusterNameFromMachine retrieves the cluster name embedded in the machine name func ClusterNameFromMachine(name string) (string, string) { if strings.Contains(name, "---") { From 43b5f7c86d79d33b8530a104079371ebde8324da Mon Sep 17 00:00:00 2001 From: Zhongcheng Lao Date: Sun, 22 Mar 2020 15:11:03 +0800 Subject: [PATCH 4/4] Move KubeNodeName out of driver package --- pkg/minikube/bootstrapper/bsutil/kubeadm.go | 3 +-- pkg/minikube/bootstrapper/bsutil/kubelet.go | 13 ++++++++++++- pkg/minikube/driver/driver.go | 10 ---------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/pkg/minikube/bootstrapper/bsutil/kubeadm.go b/pkg/minikube/bootstrapper/bsutil/kubeadm.go index bcc363c9da..46104c1d44 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubeadm.go +++ b/pkg/minikube/bootstrapper/bsutil/kubeadm.go @@ -29,7 +29,6 @@ import ( "k8s.io/minikube/pkg/minikube/config" "k8s.io/minikube/pkg/minikube/constants" "k8s.io/minikube/pkg/minikube/cruntime" - "k8s.io/minikube/pkg/minikube/driver" "k8s.io/minikube/pkg/minikube/vmpath" "k8s.io/minikube/pkg/util" ) @@ -94,7 +93,7 @@ func GenerateKubeadmYAML(cc config.ClusterConfig, n config.Node, r cruntime.Mana EtcdDataDir: EtcdDataDir(), ClusterName: cc.Name, //kubeadm uses NodeName as the --hostname-override parameter, so this needs to be the name of the machine - NodeName: driver.KubeNodeName(cc, n), + NodeName: KubeNodeName(cc, n), CRISocket: r.SocketPath(), ImageRepository: k8s.ImageRepository, ComponentOptions: componentOpts, diff --git a/pkg/minikube/bootstrapper/bsutil/kubelet.go b/pkg/minikube/bootstrapper/bsutil/kubelet.go index 3f22f8fbc7..c2180838a3 100644 --- a/pkg/minikube/bootstrapper/bsutil/kubelet.go +++ b/pkg/minikube/bootstrapper/bsutil/kubelet.go @@ -19,6 +19,7 @@ package bsutil import ( "bytes" + "os" "path" "github.com/pkg/errors" @@ -60,7 +61,7 @@ func extraKubeletOpts(mc config.ClusterConfig, nc config.Node, r cruntime.Manage if _, ok := extraOpts["node-ip"]; !ok { extraOpts["node-ip"] = cp.IP } - nodeName := driver.KubeNodeName(mc, nc) + nodeName := KubeNodeName(mc, nc) if nodeName != "" { extraOpts["hostname-override"] = nodeName } @@ -117,3 +118,13 @@ func NewKubeletService(cfg config.KubernetesConfig) ([]byte, error) { } return b.Bytes(), nil } + +// KubeNodeName returns the node name registered in Kubernetes +func KubeNodeName(cc config.ClusterConfig, n config.Node) string { + if cc.Driver == driver.None { + // Always use hostname for "none" driver + hostname, _ := os.Hostname() + return hostname + } + return driver.MachineName(cc, n) +} diff --git a/pkg/minikube/driver/driver.go b/pkg/minikube/driver/driver.go index 54f379439b..b6106474d8 100644 --- a/pkg/minikube/driver/driver.go +++ b/pkg/minikube/driver/driver.go @@ -237,16 +237,6 @@ func MachineName(cc config.ClusterConfig, n config.Node) string { return fmt.Sprintf("%s---%s", cc.Name, n.Name) } -// KubeNodeName returns the node name registered in Kubernetes -func KubeNodeName(cc config.ClusterConfig, n config.Node) string { - if cc.Driver == None { - // Always use hostname for "none" driver - hostname, _ := os.Hostname() - return hostname - } - return MachineName(cc, n) -} - // ClusterNameFromMachine retrieves the cluster name embedded in the machine name func ClusterNameFromMachine(name string) (string, string) { if strings.Contains(name, "---") {