Controller Manager Leader Election Test

In Kubernetes, the Controller Manager uses leader election to ensure high availability and prevent multiple managers from running conflicting tasks. During leader election, only one instance of the Controller Manager becomes the active leader, handling cluster tasks. Others remain in standby mode. If the leader fails, a new leader is elected, ensuring continuity in resource management and reconciliation.

Monitoring Controller Manager leader election ensures high availability and avoids task conflicts in the cluster. Failures in leader election can disrupt resource management, scaling, and failover processes. Regular monitoring helps detect issues like stalled elections or misconfigurations early, ensuring smooth leadership transitions and continuous cluster operation without interruptions.

The Controller Manager Leader Manager Test continuously monitors the API Server in the target node and reports if the current node is master. This metric is 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 Master Node

Agent deploying the test : A remote agent

Outputs of the test : One set of results for the target Kubernetes Master 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

Is Master?

Indicates the CPU time consumed by the Kubernetes Controller Manager process.

Milliseconds

Time spent executing code in user mode, such as processing requests, running algorithms, and performing operations in the application itself.