e2e/framework: remove direct imports to /pkg/kubelet/...

This commit is contained in:
gavinfish 2020-03-30 09:32:04 +08:00 committed by drfish
parent a329e67922
commit e50afd00e9
2 changed files with 23 additions and 12 deletions

View File

@ -22,8 +22,6 @@ go_library(
], ],
importpath = "k8s.io/kubernetes/test/e2e/framework/metrics", importpath = "k8s.io/kubernetes/test/e2e/framework/metrics",
deps = [ deps = [
"//pkg/kubelet/dockershim/metrics:go_default_library",
"//pkg/kubelet/metrics:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1: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/fields:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",

View File

@ -29,13 +29,26 @@ import (
"k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/sets"
clientset "k8s.io/client-go/kubernetes" clientset "k8s.io/client-go/kubernetes"
"k8s.io/component-base/metrics/testutil" "k8s.io/component-base/metrics/testutil"
dockermetrics "k8s.io/kubernetes/pkg/kubelet/dockershim/metrics"
kubeletmetrics "k8s.io/kubernetes/pkg/kubelet/metrics"
e2elog "k8s.io/kubernetes/test/e2e/framework/log" e2elog "k8s.io/kubernetes/test/e2e/framework/log"
) )
const ( const (
proxyTimeout = 2 * time.Minute proxyTimeout = 2 * time.Minute
// dockerOperationsLatencyKey is the key for the operation latency metrics.
// Taken from k8s.io/kubernetes/pkg/kubelet/dockershim/metrics
dockerOperationsLatencyKey = "docker_operations_duration_seconds"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
kubeletSubsystem = "kubelet"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
podWorkerDurationKey = "pod_worker_duration_seconds"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
podStartDurationKey = "pod_start_duration_seconds"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
cgroupManagerOperationsKey = "cgroup_manager_duration_seconds"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
podWorkerStartDurationKey = "pod_worker_start_duration_seconds"
// Taken from k8s.io/kubernetes/pkg/kubelet/metrics
plegRelistDurationKey = "pleg_relist_duration_seconds"
) )
// KubeletMetrics is metrics for kubelet // KubeletMetrics is metrics for kubelet
@ -143,7 +156,7 @@ func GetKubeletMetrics(c clientset.Interface, nodeName string) (KubeletMetrics,
kubeletMetrics := make(KubeletMetrics) kubeletMetrics := make(KubeletMetrics)
for name, samples := range ms { for name, samples := range ms {
const prefix = kubeletmetrics.KubeletSubsystem + "_" const prefix = kubeletSubsystem + "_"
if !strings.HasPrefix(name, prefix) { if !strings.HasPrefix(name, prefix) {
// Not a kubelet metric. // Not a kubelet metric.
continue continue
@ -159,13 +172,13 @@ func GetKubeletMetrics(c clientset.Interface, nodeName string) (KubeletMetrics,
// Note that the KubeletMetrics passed in should not contain subsystem prefix. // Note that the KubeletMetrics passed in should not contain subsystem prefix.
func GetDefaultKubeletLatencyMetrics(ms KubeletMetrics) KubeletLatencyMetrics { func GetDefaultKubeletLatencyMetrics(ms KubeletMetrics) KubeletLatencyMetrics {
latencyMetricNames := sets.NewString( latencyMetricNames := sets.NewString(
kubeletmetrics.PodWorkerDurationKey, podWorkerDurationKey,
kubeletmetrics.PodWorkerStartDurationKey, podWorkerStartDurationKey,
kubeletmetrics.PodStartDurationKey, podStartDurationKey,
kubeletmetrics.CgroupManagerOperationsKey, cgroupManagerOperationsKey,
dockermetrics.DockerOperationsLatencyKey, dockerOperationsLatencyKey,
kubeletmetrics.PodWorkerStartDurationKey, podWorkerStartDurationKey,
kubeletmetrics.PLEGRelistDurationKey, plegRelistDurationKey,
) )
return GetKubeletLatencyMetrics(ms, latencyMetricNames) return GetKubeletLatencyMetrics(ms, latencyMetricNames)
} }