Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use profile name as cluster/node name #6200

Merged
merged 12 commits into from
Feb 5, 2020
22 changes: 21 additions & 1 deletion cmd/minikube/cmd/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ const (
keepContext = "keep-context"
createMount = "mount"
featureGates = "feature-gates"
nodeName = "node-name"
apiServerName = "apiserver-name"
apiServerPort = "apiserver-port"
dnsDomain = "dns-domain"
Expand Down Expand Up @@ -193,6 +194,7 @@ func initKubernetesFlags() {
startCmd.Flags().String(apiServerName, constants.APIServerName, "The apiserver name which is used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine")
startCmd.Flags().StringArrayVar(&apiServerNames, "apiserver-names", nil, "A set of apiserver names which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine")
startCmd.Flags().IPSliceVar(&apiServerIPs, "apiserver-ips", nil, "A set of apiserver IP Addresses which are used in the generated certificate for kubernetes. This can be used if you want to make the apiserver available from outside the machine")
startCmd.Flags().String(nodeName, "", "The node name")
}

// initDriverFlags inits the commandline flags for vm drivers
Expand Down Expand Up @@ -886,6 +888,24 @@ func generateCfgFromFlags(cmd *cobra.Command, k8sVersion string, drvName string)
out.T(out.SuccessType, "Using image repository {{.name}}", out.V{"name": repository})
}

kubeNodeName := viper.GetString(nodeName)
if kubeNodeName == "" {
if drvName == driver.None {
// set the node name the same as host name for none driver
hostname, _ := os.Hostname()
kubeNodeName = hostname
}

if kubeNodeName == "" {
machineName := viper.GetString(cfg.MachineProfile)
if machineName != constants.DefaultMachineName {
kubeNodeName = fmt.Sprintf("%s-%s", constants.DefaultNodeName, machineName)
} else {
kubeNodeName = constants.DefaultNodeName
}
}
}

cfg := cfg.MachineConfig{
Name: viper.GetString(cfg.MachineProfile),
KeepContext: viper.GetBool(keepContext),
Expand Down Expand Up @@ -921,7 +941,7 @@ func generateCfgFromFlags(cmd *cobra.Command, k8sVersion string, drvName string)
KubernetesConfig: cfg.KubernetesConfig{
KubernetesVersion: k8sVersion,
NodePort: viper.GetInt(apiServerPort),
NodeName: constants.DefaultNodeName,
NodeName: kubeNodeName,
APIServerName: viper.GetString(apiServerName),
APIServerNames: apiServerNames,
APIServerIPs: apiServerIPs,
Expand Down
3 changes: 3 additions & 0 deletions pkg/minikube/bootstrapper/bsutil/kubelet.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ func NewKubeletConfig(k8s config.KubernetesConfig, r cruntime.Manager) ([]byte,
if _, ok := extraOpts["node-ip"]; !ok {
extraOpts["node-ip"] = k8s.NodeIP
}
if k8s.NodeName != "" {
extraOpts["hostname-override"] = k8s.NodeName
}

pauseImage := images.Pause(k8s.ImageRepository)
if _, ok := extraOpts["pod-infra-container-image"]; !ok && k8s.ImageRepository != "" && pauseImage != "" && k8s.ContainerRuntime != remoteContainerRuntime {
Expand Down