Documentation

Overview

    e2e_node contains e2e tests specific to the node TODO: rename this package e2e-node

    Index

    Constants

    View Source
    const (
    	TimeSeriesTag = "[Result:TimeSeries]"
    	TimeSeriesEnd = "[Finish:TimeSeries]"
    )

    Variables

    View Source
    var NodeImageWhiteList = sets.NewString(
    	"google/cadvisor:latest",
    	"k8s.gcr.io/stress:v1",
    	busyboxImage,
    	"k8s.gcr.io/busybox@sha256:4bdd623e848417d96127e16037743f0cd8b528c026e9175e22a84f639eca58ff",
    	imageutils.GetE2EImage(imageutils.Nginx),
    	imageutils.GetE2EImage(imageutils.ServeHostname),
    	imageutils.GetE2EImage(imageutils.Netexec),
    	imageutils.GetE2EImage(imageutils.Nonewprivs),
    	imageutils.GetPauseImageName(),
    	framework.GetGPUDevicePluginImage(),
    	"gcr.io/kubernetes-e2e-test-images/node-perf/npb-is:1.0",
    	"gcr.io/kubernetes-e2e-test-images/node-perf/npb-ep:1.0",
    	"gcr.io/kubernetes-e2e-test-images/node-perf/tf-wide-deep-amd64:1.0",
    )

      NodeImageWhiteList is a list of images used in node e2e test. These images will be prepulled before test running so that the image pulling won't fail in actual test.

      Functions

      func PrePullAllImages

      func PrePullAllImages() error

        Pre-fetch all images tests depend on so that we don't fail in an actual test.

        func SIGDescribe

        func SIGDescribe(text string, body func()) bool

        Types

        type ResourceCollector

        type ResourceCollector struct {
        	// contains filtered or unexported fields
        }

        func NewResourceCollector

        func NewResourceCollector(interval time.Duration) *ResourceCollector

          NewResourceCollector creates a resource collector object which collects resource usage periodically from Cadvisor

          func (*ResourceCollector) GetBasicCPUStats

          func (r *ResourceCollector) GetBasicCPUStats(containerName string) map[float64]float64

            GetBasicCPUStats returns the percentiles the cpu usage in cores for containerName. This method examines all data currently in the buffer.

            func (*ResourceCollector) GetCPUSummary

              GetCPUSummary gets CPU usage in percentile.

              func (*ResourceCollector) GetLatest

                GetLatest gets the latest resource usage from stats buffer.

                func (*ResourceCollector) GetResourceTimeSeries

                func (r *ResourceCollector) GetResourceTimeSeries() map[string]*perftype.ResourceSeries

                  GetResourceSeriesWithLabels gets the time series of resource usage of each container.

                  func (*ResourceCollector) LogLatest

                  func (r *ResourceCollector) LogLatest()

                    LogLatest logs the latest resource usage.

                    func (*ResourceCollector) Reset

                    func (r *ResourceCollector) Reset()

                      Reset clears the stats buffer of resource collector.

                      func (*ResourceCollector) Start

                      func (r *ResourceCollector) Start()

                        Start starts resource collector and connects to the standalone Cadvisor pod then repeatedly runs collectStats.

                        func (*ResourceCollector) Stop

                        func (r *ResourceCollector) Stop()

                          Stop stops resource collector collecting stats. It does not clear the buffer

                          Directories

                          Path Synopsis
                          Build the binary with `go build conformance.go`, then run the conformance binary on a node candidate.
                          Build the binary with `go build conformance.go`, then run the conformance binary on a node candidate.
                          perf
                          Package remote contains implementations of the TestSuite interface, which specify how to run various node test suites remotely.
                          Package remote contains implementations of the TestSuite interface, which specify how to run various node test suites remotely.
                          runner
                          remote
                          To run the node e2e tests remotely against one or more hosts on gce: $ go run run_remote.go --logtostderr --v 2 --ssh-env gce --hosts <comma separated hosts> To run the node e2e tests remotely against one or more images on gce and provision them: $ go run run_remote.go --logtostderr --v 2 --project <project> --zone <zone> --ssh-env gce --images <comma separated images>
                          To run the node e2e tests remotely against one or more hosts on gce: $ go run run_remote.go --logtostderr --v 2 --ssh-env gce --hosts <comma separated hosts> To run the node e2e tests remotely against one or more images on gce and provision them: $ go run run_remote.go --logtostderr --v 2 --project <project> --zone <zone> --ssh-env gce --images <comma separated images>