From ea6e653db1dd2327ff2d6d701fa6b92bc4e85d0e Mon Sep 17 00:00:00 2001 From: Abhijit Hoskeri Date: Tue, 5 Apr 2022 16:39:20 -0700 Subject: [PATCH 1/2] conformance-test: use kubelet healthz port. The readonly port could be disabled. Since we are only using the /healthz endpoint, we can use the healthz port. Change-Id: If004f2888ca5847b9e2d8c02d5615bed52d94b24 --- test/e2e_node/conformance/run_test.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/e2e_node/conformance/run_test.sh b/test/e2e_node/conformance/run_test.sh index 1e1c98f4787..f4037049925 100755 --- a/test/e2e_node/conformance/run_test.sh +++ b/test/e2e_node/conformance/run_test.sh @@ -126,10 +126,10 @@ start_kubelet() { fi } -# wait_kubelet retries for 10 times for kubelet to be ready by checking http://127.0.0.1:10255/healthz. +# wait_kubelet retries for 10 times for kubelet to be ready by checking http://127.0.0.1:10248/healthz. wait_kubelet() { echo "Health checking kubelet..." - healthCheckURL=http://127.0.0.1:10255/healthz + healthCheckURL=http://127.0.0.1:10248/healthz local maxRetry=10 local cur=1 while [ $cur -le $maxRetry ]; do From 49dc59873b0ab4ff3f3be4f8cfe35757fb037800 Mon Sep 17 00:00:00 2001 From: Abhijit Hoskeri Date: Thu, 7 Apr 2022 15:14:21 -0700 Subject: [PATCH 2/2] e2e_node/{service,util}: use kubelet healthz port. The readonly port could be disabled. Since we are only using the /healthz endpoint, we can use the healthz port for this. Change-Id: Ie0e05a5ab4ec6f51e4d3c63226aa23c1b3a69956 --- pkg/cluster/ports/ports.go | 3 +++ test/e2e_node/services/kubelet.go | 7 +++---- test/e2e_node/util.go | 7 ++++--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/pkg/cluster/ports/ports.go b/pkg/cluster/ports/ports.go index 8fd44e01b40..10ded2ad798 100644 --- a/pkg/cluster/ports/ports.go +++ b/pkg/cluster/ports/ports.go @@ -31,6 +31,9 @@ const ( // until heapster can transition to using the SSL endpoint. // TODO(roberthbailey): Remove this once we have a better solution for heapster. KubeletReadOnlyPort = 10255 + // KubeletHealthzPort exposes a healthz endpoint from the kubelet. + // May be overridden by a flag at startup. + KubeletHealthzPort = 10248 // ProxyHealthzPort is the default port for the proxy healthz server. // May be overridden by a flag at startup. ProxyHealthzPort = 10256 diff --git a/test/e2e_node/services/kubelet.go b/test/e2e_node/services/kubelet.go index 8bcd854748e..8b8816cec75 100644 --- a/test/e2e_node/services/kubelet.go +++ b/test/e2e_node/services/kubelet.go @@ -88,14 +88,13 @@ func RunKubelet() { } const ( - // Ports of different e2e services. - kubeletReadOnlyPort = "10255" // KubeletRootDirectory specifies the directory where the kubelet runtime information is stored. KubeletRootDirectory = "/var/lib/kubelet" - // Health check url of kubelet - kubeletHealthCheckURL = "http://127.0.0.1:" + kubeletReadOnlyPort + "/healthz" ) +// Health check url of kubelet +var kubeletHealthCheckURL = fmt.Sprintf("http://127.0.0.1:%d/healthz", ports.KubeletHealthzPort) + func baseKubeConfiguration(cfgPath string) (*kubeletconfig.KubeletConfiguration, error) { cfgPath, err := filepath.Abs(cfgPath) if err != nil { diff --git a/test/e2e_node/util.go b/test/e2e_node/util.go index 1c8b1699f74..f0afa122050 100644 --- a/test/e2e_node/util.go +++ b/test/e2e_node/util.go @@ -41,6 +41,7 @@ import ( kubeletpodresourcesv1 "k8s.io/kubelet/pkg/apis/podresources/v1" kubeletpodresourcesv1alpha1 "k8s.io/kubelet/pkg/apis/podresources/v1alpha1" stats "k8s.io/kubelet/pkg/apis/stats/v1alpha1" + "k8s.io/kubernetes/pkg/cluster/ports" kubeletconfig "k8s.io/kubernetes/pkg/kubelet/apis/config" "k8s.io/kubernetes/pkg/kubelet/apis/podresources" "k8s.io/kubernetes/pkg/kubelet/cm" @@ -70,13 +71,13 @@ const ( defaultPodResourcesPath = "/var/lib/kubelet/pod-resources" defaultPodResourcesTimeout = 10 * time.Second defaultPodResourcesMaxSize = 1024 * 1024 * 16 // 16 Mb - kubeletReadOnlyPort = "10255" - kubeletHealthCheckURL = "http://127.0.0.1:" + kubeletReadOnlyPort + "/healthz" // state files cpuManagerStateFile = "/var/lib/kubelet/cpu_manager_state" memoryManagerStateFile = "/var/lib/kubelet/memory_manager_state" ) +var kubeletHealthCheckURL = fmt.Sprintf("http://127.0.0.1:%d/healthz", ports.KubeletHealthzPort) + func getNodeSummary() (*stats.Summary, error) { kubeletConfig, err := getCurrentKubeletConfig() if err != nil { @@ -259,7 +260,7 @@ func logKubeletLatencyMetrics(metricNames ...string) { for _, key := range metricNames { metricSet.Insert(kubeletmetrics.KubeletSubsystem + "_" + key) } - metric, err := e2emetrics.GrabKubeletMetricsWithoutProxy(framework.TestContext.NodeName+":10255", "/metrics") + metric, err := e2emetrics.GrabKubeletMetricsWithoutProxy(fmt.Sprintf("%s:%d", framework.TestContext.NodeName, ports.KubeletReadOnlyPort), "/metrics") if err != nil { framework.Logf("Error getting kubelet metrics: %v", err) } else {