Kubelet Process Test

The Kubelet is a critical Kubernetes component that runs on each node in a cluster. It manages and ensures that Pods and their containers are running as specified by the Kubernetes API server. The Kubelet performs several key tasks: it registers the node with the API server, pulls container images, starts and stops containers, monitors their health, and reports their status. It also handles resource management and performs health checks to ensure Pods are operating correctly. The Kubelet uses cgroups for resource allocation and isolation, and it communicates with the API server to stay updated on Pod specifications and state. Its role is crucial for maintaining the desired state and health of the node’s workloads.

Monitoring the Kubelet process ensures node stability and performance by tracking health, resource usage, and error states. It helps detect issues early, optimize resource allocation, and maintain operational awareness, crucial for a stable Kubernetes cluster.

The Kubelet process Test continuously monitors the kubelet process in the target node and reports key metrics like CPU time, memory size etc. These metrics are invaluable for the administrators to ensure that service is up and prevent any issues in case service has problems.

Target of the test : A Kubernetes Worker Node

Agent deploying the test : A remote agent

Outputs of the test : One set of results for the target Kubernetes Worker node being monitored

Configurable parameters for the test

Parameter

Description

Test Period

How often should the test be executed.

Host

The IP address of the host for which this test is to be configured.

Port

Specify the port at which the specified Host listens. By default, this is 6443.

Timeout

Specify the duration (in seconds) beyond which the test will timeout in the Timeout text box. The default value is 10 seconds.

Metric URL

Each of the Kubernetes system components expose monitoring metrics through /metrics endpoint of the HTTP server. For components that don't expose endpoint by default, refer official Kubernetes distribution documentation site. Specify the metric URL textbox.

Measurements made by the test

Measurement

Description

Measurement Unit

Interpretation

Total user and system CPU time spent

Indicates the total CPU time taken by user and system operations.

Milliseconds

 

Resident memory size

Indicates the total process memory that is held in RAM.

MB

Unlike virtual memory size, which includes all memory the process can address, RSS reflects the actual amount of memory being used and actively resident in physical RAM

Total CGroup manager operations duration

Indicates the time taken for all CGroup operations.

Milliseconds

Cgroup manager operations involve managing and manipulating control groups (cgroups) to allocate and limit resources for processes or sets of processes

Number of CGroup manager operation

Indicates the total number of CGroup operations perfromed.

Number

 

Total volumes in Volume Manager

Indicates the number of storage volumes currently maintained by Volume manager.

Number

 

Average CGroup manager operations duration

Indicates the average time taken for all CGroup operations.

Milliseconds