From dbcc84a9ec0575dc9a4d0569083429c2897b0fa4 Mon Sep 17 00:00:00 2001 From: Xianglin Gao Date: Thu, 16 Aug 2018 20:17:33 +0800 Subject: [PATCH] Make kubelet healthz port a constant Signed-off-by: Xianglin Gao --- cmd/kubeadm/app/apis/kubeadm/v1alpha2/defaults.go | 2 +- cmd/kubeadm/app/apis/kubeadm/v1alpha3/conversion.go | 2 +- cmd/kubeadm/app/cmd/init.go | 3 +-- cmd/kubeadm/app/componentconfigs/BUILD | 1 + cmd/kubeadm/app/componentconfigs/defaults.go | 2 +- cmd/kubeadm/app/componentconfigs/validation_test.go | 3 ++- cmd/kubeadm/app/constants/constants.go | 3 +++ 7 files changed, 10 insertions(+), 6 deletions(-) diff --git a/cmd/kubeadm/app/apis/kubeadm/v1alpha2/defaults.go b/cmd/kubeadm/app/apis/kubeadm/v1alpha2/defaults.go index f817d7e71c2..56148497892 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1alpha2/defaults.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1alpha2/defaults.go @@ -216,7 +216,7 @@ func SetDefaults_KubeletConfiguration(obj *InitConfiguration) { // Serve a /healthz webserver on localhost:10248 that kubeadm can talk to obj.KubeletConfiguration.BaseConfig.HealthzBindAddress = "127.0.0.1" - obj.KubeletConfiguration.BaseConfig.HealthzPort = utilpointer.Int32Ptr(10248) + obj.KubeletConfiguration.BaseConfig.HealthzPort = utilpointer.Int32Ptr(constants.KubeletHealthzPort) scheme, _, _ := kubeletscheme.NewSchemeAndCodecs() if scheme != nil { diff --git a/cmd/kubeadm/app/apis/kubeadm/v1alpha3/conversion.go b/cmd/kubeadm/app/apis/kubeadm/v1alpha3/conversion.go index ad7d74f3603..e1ec3eb7916 100644 --- a/cmd/kubeadm/app/apis/kubeadm/v1alpha3/conversion.go +++ b/cmd/kubeadm/app/apis/kubeadm/v1alpha3/conversion.go @@ -108,5 +108,5 @@ func defaultKubeletConfiguration(internalcfg *InitConfiguration, obj *kubeletcon // Serve a /healthz webserver on localhost:10248 that kubeadm can talk to obj.HealthzBindAddress = "127.0.0.1" - obj.HealthzPort = 10248 + obj.HealthzPort = constants.KubeletHealthzPort } diff --git a/cmd/kubeadm/app/cmd/init.go b/cmd/kubeadm/app/cmd/init.go index 895e200ed59..8af75123be3 100644 --- a/cmd/kubeadm/app/cmd/init.go +++ b/cmd/kubeadm/app/cmd/init.go @@ -609,8 +609,7 @@ func waitForKubeletAndFunc(waiter apiclient.Waiter, f func() error) error { go func(errC chan error, waiter apiclient.Waiter) { // This goroutine can only make kubeadm init fail. If this check succeeds, it won't do anything special - // TODO: Make 10248 a constant somewhere - if err := waiter.WaitForHealthyKubelet(40*time.Second, "http://localhost:10248/healthz"); err != nil { + if err := waiter.WaitForHealthyKubelet(40*time.Second, fmt.Sprintf("http://localhost:%d/healthz", kubeadmconstants.KubeletHealthzPort)); err != nil { errC <- err } }(errorChan, waiter) diff --git a/cmd/kubeadm/app/componentconfigs/BUILD b/cmd/kubeadm/app/componentconfigs/BUILD index 835ab161180..7991f1a7332 100644 --- a/cmd/kubeadm/app/componentconfigs/BUILD +++ b/cmd/kubeadm/app/componentconfigs/BUILD @@ -51,6 +51,7 @@ go_test( embed = [":go_default_library"], deps = [ "//cmd/kubeadm/app/apis/kubeadm:go_default_library", + "//cmd/kubeadm/app/constants:go_default_library", "//pkg/kubelet/apis/kubeletconfig:go_default_library", "//pkg/proxy/apis/kubeproxyconfig:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/cmd/kubeadm/app/componentconfigs/defaults.go b/cmd/kubeadm/app/componentconfigs/defaults.go index c3956eba598..63f1cd5971f 100644 --- a/cmd/kubeadm/app/componentconfigs/defaults.go +++ b/cmd/kubeadm/app/componentconfigs/defaults.go @@ -106,7 +106,7 @@ func DefaultKubeletConfiguration(internalcfg *kubeadmapi.InitConfiguration) { // Serve a /healthz webserver on localhost:10248 that kubeadm can talk to externalkubeletcfg.HealthzBindAddress = "127.0.0.1" - externalkubeletcfg.HealthzPort = utilpointer.Int32Ptr(10248) + externalkubeletcfg.HealthzPort = utilpointer.Int32Ptr(constants.KubeletHealthzPort) kubeletconfigv1beta1.SetDefaults_KubeletConfiguration(externalkubeletcfg) diff --git a/cmd/kubeadm/app/componentconfigs/validation_test.go b/cmd/kubeadm/app/componentconfigs/validation_test.go index 5b3fb8bdf5f..e57766bb567 100644 --- a/cmd/kubeadm/app/componentconfigs/validation_test.go +++ b/cmd/kubeadm/app/componentconfigs/validation_test.go @@ -23,6 +23,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm" + kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants" "k8s.io/kubernetes/pkg/kubelet/apis/kubeletconfig" "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig" utilpointer "k8s.io/utils/pointer" @@ -290,7 +291,7 @@ func TestValidateKubeletConfiguration(t *testing.T) { CgroupRoot: "", EventBurst: 10, EventRecordQPS: 5, - HealthzPort: 10248, + HealthzPort: kubeadmconstants.KubeletHealthzPort, ImageGCHighThresholdPercent: 85, ImageGCLowThresholdPercent: 80, IPTablesDropBit: 15, diff --git a/cmd/kubeadm/app/constants/constants.go b/cmd/kubeadm/app/constants/constants.go index b48cd4effd9..f3bd49a29fe 100644 --- a/cmd/kubeadm/app/constants/constants.go +++ b/cmd/kubeadm/app/constants/constants.go @@ -221,6 +221,9 @@ const ( // KubeletEnvFileVariableName specifies the shell script variable name "kubeadm init" should write a value to in KubeletEnvFile KubeletEnvFileVariableName = "KUBELET_KUBEADM_ARGS" + // KubeletHealthzPort is the port of the kubelet healthz endpoint + KubeletHealthzPort = 10248 + // MinExternalEtcdVersion indicates minimum external etcd version which kubeadm supports MinExternalEtcdVersion = "3.2.17"