import "k8s.io/kubernetes/test/e2e/framework/kubelet"
config.go kubelet_pods.go stats.go
func FormatRuntimeOperationErrorRate(nodesResult map[string]NodeRuntimeOperationErrorRate) string
FormatRuntimeOperationErrorRate formats the runtime operation error rate to string.
func GetCurrentKubeletConfig(nodeName, namespace string, useProxy bool) (*kubeletconfig.KubeletConfiguration, error)
GetCurrentKubeletConfig fetches the current Kubelet Config for the given node
GetKubeletHeapStats returns stats of kubelet heap.
GetKubeletPods retrieves the list of pods on the kubelet.
GetKubeletRunningPods retrieves the list of running pods on the kubelet. The pods includes necessary information (e.g., UID, name, namespace for pods/containers), but do not contain the full spec.
func GetStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv1alpha1.Summary, error)
GetStatsSummary contacts kubelet for the container information.
func ProxyRequest(c clientset.Interface, node, endpoint string, port int) (restclient.Result, error)
ProxyRequest performs a get on a node proxy endpoint given the nodename and rest client.
TargetContainers returns a list of containers for which we want to collect resource usage.
type ContainerResourceUsage struct { Name string Timestamp time.Time CPUUsageInCores float64 MemoryUsageInBytes uint64 MemoryWorkingSetInBytes uint64 MemoryRSSInBytes uint64 // The interval used to calculate CPUUsageInCores. CPUInterval time.Duration }
ContainerResourceUsage is a structure for gathering container resource usage.
ContainersCPUSummary is indexed by the container name with each entry a (percentile, value) map.
type NodeRuntimeOperationErrorRate map[string]*RuntimeOperationErrorRate
NodeRuntimeOperationErrorRate is the runtime operation error rate on one node.
type NodesCPUSummary map[string]ContainersCPUSummary
NodesCPUSummary is indexed by the node name with each entry a ContainersCPUSummary map.
type ResourceMonitor struct {
// contains filtered or unexported fields
}
ResourceMonitor manages a resourceCollector per node.
func NewResourceMonitor(c clientset.Interface, containerNames []string, pollingInterval time.Duration) *ResourceMonitor
NewResourceMonitor returns a new ResourceMonitor.
func (r *ResourceMonitor) FormatCPUSummary(summary NodesCPUSummary) string
FormatCPUSummary returns the string of human-readable CPU summary from the specified summary data.
func (r *ResourceMonitor) FormatResourceUsage(s ResourceUsagePerNode) string
FormatResourceUsage returns the formatted string for LogLatest(). TODO(oomichi): This can be made to local function after making test/e2e/node/kubelet_perf.go use LogLatest directly instead.
func (r *ResourceMonitor) GetCPUSummary() NodesCPUSummary
GetCPUSummary returns summary of CPU.
func (r *ResourceMonitor) GetLatest() (ResourceUsagePerNode, error)
GetLatest returns the latest resource usage.
func (r *ResourceMonitor) GetMasterNodeCPUSummary(summaryPerNode NodesCPUSummary) NodesCPUSummary
GetMasterNodeCPUSummary returns summary of master node CPUs.
func (r *ResourceMonitor) GetMasterNodeLatest(usagePerNode ResourceUsagePerNode) ResourceUsagePerNode
GetMasterNodeLatest returns the latest resource usage of master and node.
func (r *ResourceMonitor) LogCPUSummary()
LogCPUSummary outputs summary of CPU into log.
func (r *ResourceMonitor) LogLatest()
LogLatest outputs the latest resource usage into log.
func (r *ResourceMonitor) Reset()
Reset resets collectors.
func (r *ResourceMonitor) Start()
Start starts collectors.
func (r *ResourceMonitor) Stop()
Stop stops collectors.
type ResourceUsagePerContainer map[string]*ContainerResourceUsage
ResourceUsagePerContainer is map of ContainerResourceUsage
type ResourceUsagePerNode map[string]ResourceUsagePerContainer
ResourceUsagePerNode is map of ResourceUsagePerContainer.
type RuntimeOperationErrorRate struct { TotalNumber float64 ErrorRate float64 TimeoutRate float64 }
RuntimeOperationErrorRate is the error rate of a specified runtime operation.
type RuntimeOperationMonitor struct {
// contains filtered or unexported fields
}
RuntimeOperationMonitor is the tool getting and parsing docker operation metrics.
func NewRuntimeOperationMonitor(c clientset.Interface) *RuntimeOperationMonitor
NewRuntimeOperationMonitor returns a new RuntimeOperationMonitor.
func (m *RuntimeOperationMonitor) GetLatestRuntimeOperationErrorRate() map[string]NodeRuntimeOperationErrorRate
GetLatestRuntimeOperationErrorRate gets latest error rate and timeout rate from last observed RuntimeOperationErrorRate.
func (m *RuntimeOperationMonitor) GetRuntimeOperationErrorRate() map[string]NodeRuntimeOperationErrorRate
GetRuntimeOperationErrorRate gets runtime operation records from kubelet metrics and calculate error rates of all runtime operations.
Package kubelet imports 27 packages (graph) and is imported by 116 packages. Updated 2020-12-25. Refresh now. Tools for package owners.