From f0f6c6fc810e6b3f182ce2974a58da5122d84d71 Mon Sep 17 00:00:00 2001 From: Andrew Sy Kim Date: Tue, 17 Mar 2020 17:20:11 -0400 Subject: [PATCH] e2e/framework: remove imports to pkg/master/ports Signed-off-by: Andrew Sy Kim --- test/e2e/framework/BUILD | 2 +- test/e2e/framework/kubelet/BUILD | 1 - test/e2e/framework/kubelet/kubelet_pods.go | 4 +-- test/e2e/framework/kubelet/stats.go | 7 ++-- test/e2e/framework/metrics/BUILD | 1 - test/e2e/framework/metrics/metrics_grabber.go | 18 +++++++--- test/e2e/framework/ports.go | 33 +++++++++++++++++++ test/e2e/framework/resource_usage_gatherer.go | 3 +- test/e2e/framework/util.go | 5 ++- 9 files changed, 56 insertions(+), 18 deletions(-) create mode 100644 test/e2e/framework/ports.go diff --git a/test/e2e/framework/BUILD b/test/e2e/framework/BUILD index 4b18a8f9c1a..bfbb405d52c 100644 --- a/test/e2e/framework/BUILD +++ b/test/e2e/framework/BUILD @@ -13,6 +13,7 @@ go_library( "log_size_monitoring.go", "nodes_util.go", "pods.go", + "ports.go", "provider.go", "psp.go", "resource_usage_gatherer.go", @@ -30,7 +31,6 @@ go_library( "//pkg/kubelet/apis/stats/v1alpha1:go_default_library", "//pkg/kubelet/events:go_default_library", "//pkg/kubelet/sysctl:go_default_library", - "//pkg/master/ports:go_default_library", "//pkg/security/podsecuritypolicy/seccomp:go_default_library", "//pkg/util/taints:go_default_library", "//staging/src/k8s.io/api/apps/v1:go_default_library", diff --git a/test/e2e/framework/kubelet/BUILD b/test/e2e/framework/kubelet/BUILD index 183b8e630d7..720d79b6651 100644 --- a/test/e2e/framework/kubelet/BUILD +++ b/test/e2e/framework/kubelet/BUILD @@ -13,7 +13,6 @@ go_library( "//pkg/kubelet/apis/config:go_default_library", "//pkg/kubelet/apis/stats/v1alpha1:go_default_library", "//pkg/kubelet/dockershim/metrics:go_default_library", - "//pkg/master/ports:go_default_library", "//staging/src/k8s.io/api/core/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/errors:go_default_library", diff --git a/test/e2e/framework/kubelet/kubelet_pods.go b/test/e2e/framework/kubelet/kubelet_pods.go index 490a153b150..96a3fe31f37 100644 --- a/test/e2e/framework/kubelet/kubelet_pods.go +++ b/test/e2e/framework/kubelet/kubelet_pods.go @@ -19,7 +19,7 @@ package kubelet import ( v1 "k8s.io/api/core/v1" clientset "k8s.io/client-go/kubernetes" - "k8s.io/kubernetes/pkg/master/ports" + "k8s.io/kubernetes/test/e2e/framework" ) // GetKubeletPods retrieves the list of pods on the kubelet. @@ -36,7 +36,7 @@ func GetKubeletRunningPods(c clientset.Interface, node string) (*v1.PodList, err func getKubeletPods(c clientset.Interface, node, resource string) (*v1.PodList, error) { result := &v1.PodList{} - client, err := ProxyRequest(c, node, resource, ports.KubeletPort) + client, err := ProxyRequest(c, node, resource, framework.KubeletPort) if err != nil { return &v1.PodList{}, err } diff --git a/test/e2e/framework/kubelet/stats.go b/test/e2e/framework/kubelet/stats.go index e89fbdab9d9..3d9cdc28d59 100644 --- a/test/e2e/framework/kubelet/stats.go +++ b/test/e2e/framework/kubelet/stats.go @@ -35,7 +35,6 @@ import ( restclient "k8s.io/client-go/rest" kubeletstatsv1alpha1 "k8s.io/kubernetes/pkg/kubelet/apis/stats/v1alpha1" dockermetrics "k8s.io/kubernetes/pkg/kubelet/dockershim/metrics" - "k8s.io/kubernetes/pkg/master/ports" "k8s.io/kubernetes/test/e2e/framework" e2emetrics "k8s.io/kubernetes/test/e2e/framework/metrics" ) @@ -222,7 +221,7 @@ func GetStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv1alp data, err := c.CoreV1().RESTClient().Get(). Resource("nodes"). SubResource("proxy"). - Name(fmt.Sprintf("%v:%v", nodeName, ports.KubeletPort)). + Name(fmt.Sprintf("%v:%v", nodeName, framework.KubeletPort)). Suffix("stats/summary"). Do(ctx).Raw() @@ -242,7 +241,7 @@ func getNodeStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv data, err := c.CoreV1().RESTClient().Get(). Resource("nodes"). SubResource("proxy"). - Name(fmt.Sprintf("%v:%v", nodeName, ports.KubeletPort)). + Name(fmt.Sprintf("%v:%v", nodeName, framework.KubeletPort)). Suffix("stats/summary"). SetHeader("Content-Type", "application/json"). Do(context.TODO()).Raw() @@ -309,7 +308,7 @@ func formatResourceUsageStats(nodeName string, containerStats ResourceUsagePerCo // GetKubeletHeapStats returns stats of kubelet heap. func GetKubeletHeapStats(c clientset.Interface, nodeName string) (string, error) { - client, err := ProxyRequest(c, nodeName, "debug/pprof/heap", ports.KubeletPort) + client, err := ProxyRequest(c, nodeName, "debug/pprof/heap", framework.KubeletPort) if err != nil { return "", err } diff --git a/test/e2e/framework/metrics/BUILD b/test/e2e/framework/metrics/BUILD index 415fd3a0172..734054da410 100644 --- a/test/e2e/framework/metrics/BUILD +++ b/test/e2e/framework/metrics/BUILD @@ -24,7 +24,6 @@ go_library( deps = [ "//pkg/kubelet/dockershim/metrics:go_default_library", "//pkg/kubelet/metrics:go_default_library", - "//pkg/master/ports:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/fields:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", diff --git a/test/e2e/framework/metrics/metrics_grabber.go b/test/e2e/framework/metrics/metrics_grabber.go index bd8c9d4b143..906b71d02ce 100644 --- a/test/e2e/framework/metrics/metrics_grabber.go +++ b/test/e2e/framework/metrics/metrics_grabber.go @@ -26,13 +26,23 @@ import ( "k8s.io/apimachinery/pkg/fields" "k8s.io/apimachinery/pkg/util/wait" clientset "k8s.io/client-go/kubernetes" - "k8s.io/kubernetes/pkg/master/ports" e2epod "k8s.io/kubernetes/test/e2e/framework/pod" "k8s.io/kubernetes/test/e2e/system" "k8s.io/klog" ) +const ( + // insecureSchedulerPort is the default port for the scheduler status server. + // May be overridden by a flag at startup. + // Deprecated: use the secure KubeSchedulerPort instead. + insecureSchedulerPort = 10251 + // insecureKubeControllerManagerPort is the default port for the controller manager status server. + // May be overridden by a flag at startup. + // Deprecated: use the secure KubeControllerManagerPort instead. + insecureKubeControllerManagerPort = 10252 +) + // Collection is metrics collection of components type Collection struct { APIServerMetrics APIServerMetrics @@ -132,7 +142,7 @@ func (g *Grabber) GrabFromScheduler() (SchedulerMetrics, error) { if !g.registeredMaster { return SchedulerMetrics{}, fmt.Errorf("Master's Kubelet is not registered. Skipping Scheduler's metrics gathering") } - output, err := g.getMetricsFromPod(g.client, fmt.Sprintf("%v-%v", "kube-scheduler", g.masterName), metav1.NamespaceSystem, ports.InsecureSchedulerPort) + output, err := g.getMetricsFromPod(g.client, fmt.Sprintf("%v-%v", "kube-scheduler", g.masterName), metav1.NamespaceSystem, insecureSchedulerPort) if err != nil { return SchedulerMetrics{}, err } @@ -176,7 +186,7 @@ func (g *Grabber) GrabFromControllerManager() (ControllerManagerMetrics, error) var lastMetricsFetchErr error if metricsWaitErr := wait.PollImmediate(time.Second, time.Minute, func() (bool, error) { - _, lastMetricsFetchErr = g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, ports.InsecureKubeControllerManagerPort) + _, lastMetricsFetchErr = g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, insecureKubeControllerManagerPort) return lastMetricsFetchErr == nil, nil }); metricsWaitErr != nil { err = fmt.Errorf("error waiting for controller manager pod to expose metrics: %v; %v", metricsWaitErr, lastMetricsFetchErr) @@ -187,7 +197,7 @@ func (g *Grabber) GrabFromControllerManager() (ControllerManagerMetrics, error) return ControllerManagerMetrics{}, err } - output, err := g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, ports.InsecureKubeControllerManagerPort) + output, err := g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, insecureKubeControllerManagerPort) if err != nil { return ControllerManagerMetrics{}, err } diff --git a/test/e2e/framework/ports.go b/test/e2e/framework/ports.go new file mode 100644 index 00000000000..baccb837db5 --- /dev/null +++ b/test/e2e/framework/ports.go @@ -0,0 +1,33 @@ +/* +Copyright 2020 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package framework + +// NOTE: constants in this file are copied from pkg/master/ports/ports.go + +const ( + // KubeletPort is the default port for the kubelet server on each host machine. + // May be overridden by a flag at startup. + KubeletPort = 10250 + // InsecureSchedulerPort is the default port for the scheduler status server. + // May be overridden by a flag at startup. + // Deprecated: use the secure KubeSchedulerPort instead. + InsecureSchedulerPort = 10251 + // InsecureKubeControllerManagerPort is the default port for the controller manager status server. + // May be overridden by a flag at startup. + // Deprecated: use the secure KubeControllerManagerPort instead. + InsecureKubeControllerManagerPort = 10252 +) diff --git a/test/e2e/framework/resource_usage_gatherer.go b/test/e2e/framework/resource_usage_gatherer.go index f536762191e..757b7a06e58 100644 --- a/test/e2e/framework/resource_usage_gatherer.go +++ b/test/e2e/framework/resource_usage_gatherer.go @@ -35,7 +35,6 @@ import ( utilruntime "k8s.io/apimachinery/pkg/util/runtime" clientset "k8s.io/client-go/kubernetes" kubeletstatsv1alpha1 "k8s.io/kubernetes/pkg/kubelet/apis/stats/v1alpha1" - "k8s.io/kubernetes/pkg/master/ports" "k8s.io/kubernetes/test/e2e/system" // TODO: Remove the following imports (ref: https://github.com/kubernetes/kubernetes/issues/81245) @@ -296,7 +295,7 @@ func getStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv1alp data, err := c.CoreV1().RESTClient().Get(). Resource("nodes"). SubResource("proxy"). - Name(fmt.Sprintf("%v:%v", nodeName, ports.KubeletPort)). + Name(fmt.Sprintf("%v:%v", nodeName, KubeletPort)). Suffix("stats/summary"). Do(ctx).Raw() diff --git a/test/e2e/framework/util.go b/test/e2e/framework/util.go index 2ba9a595269..f670bef576f 100644 --- a/test/e2e/framework/util.go +++ b/test/e2e/framework/util.go @@ -68,7 +68,6 @@ import ( podutil "k8s.io/kubernetes/pkg/api/v1/pod" "k8s.io/kubernetes/pkg/client/conditions" "k8s.io/kubernetes/pkg/controller" - "k8s.io/kubernetes/pkg/master/ports" taintutils "k8s.io/kubernetes/pkg/util/taints" testutils "k8s.io/kubernetes/test/utils" imageutils "k8s.io/kubernetes/test/utils/image" @@ -980,7 +979,7 @@ func getKubeletPods(c clientset.Interface, node string) (*v1.PodList, error) { client = c.CoreV1().RESTClient().Get(). Resource("nodes"). SubResource("proxy"). - Name(fmt.Sprintf("%v:%v", node, ports.KubeletPort)). + Name(fmt.Sprintf("%v:%v", node, KubeletPort)). Suffix("pods"). Do(context.TODO()) @@ -1492,7 +1491,7 @@ func RestartControllerManager() error { // WaitForControllerManagerUp waits for the kube-controller-manager to be up. func WaitForControllerManagerUp() error { - cmd := "curl http://localhost:" + strconv.Itoa(ports.InsecureKubeControllerManagerPort) + "/healthz" + cmd := "curl http://localhost:" + strconv.Itoa(InsecureKubeControllerManagerPort) + "/healthz" for start := time.Now(); time.Since(start) < time.Minute; time.Sleep(5 * time.Second) { result, err := e2essh.SSH(cmd, net.JoinHostPort(GetMasterHost(), sshPort), TestContext.Provider) if err != nil || result.Code != 0 {