CRIO Containers - Performance Test

Typically, in a Kubernetes environment,multiple containerrs may be available within a single pod. By default, the containers use a certain amount of CPU and memory resources. Sometimes, a single container may end up hogging CPU and memory resources leaving the rest of the containers with no available resources. To isolate such resource hogging containers, it is necessary to periodically monitor the resource utilization of the contianers. The CRIO Containers - Performance test helps administrators in this regard!

For each container launched using the target CRIO container engine, this test reports the resource utilization and the total number of iNodes available in the container. Using this test, administrators can identify resource-intensive containers, analyze the root-cause of such high resource utilization and rectify the same at the earliest.

Target of the test : A CRIO Container Engine

Agent deploying the test : A containerized agent

Outputs of the test : One set of results for each container available in the CRIO Engine 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

The port number at which the specified host listens. The default is 2379.

Use SUDO

By default, this flag is set to No. This indicates that, by default, this test will report the metrics of this test by executing the crictl command. However, in some highly secure environments, the eG agent install user may not have the permissions to execute this command directly. In such cases, do the following:

  • Edit the SUDOERS file on the target host and append an entry of the following format to it:

    <eG_agent_install_user> ALL=(ALL) NOPASSWD:<Command>

    For instance, if the eG agent install user is eguser, then the entries in the sudoers file should be:

    eguser ALL=(ALL) NOPASSWD: crictl

  • Finally, save the file.
  • Then, when configuring the test using the eG admin interface, set this parameter to Yes. This will enable the eG agent to execute the sudo crictl command  and retrieve the relevant metrics for this test.

Detailed Diagnosis

To make diagnosis more efficient and accurate, the eG Enterprise embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option.

The option to selectively enabled/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:

  • The eG manager license should allow the detailed diagnosis capability
  • Both the normal and abnormal frequencies configured for the detailed diagnosis measures should not be 0.
Measurements made by the test
Measurement Description Measurement Unit Interpretation

CPU usage

Indicates the percentage of CPU utilized by this container.

Percent

Comparing the value of this measure across the containers will enable you to accurately identify the container on which CPU-intensive applications are executing.

The detailed diagnosis of this measure lists the Process ID, CPU utilized by each Process and the user who is using the process.

Memory usage

Indicates the amount of memory utilized by this container.

MB

A high value for this measure indicates that the memory resource of the container is depleting alarmingly.

Compare the value of this measure across containers to figure out the container that is using maximum amount of memory resources.

The detailed diagnosis of this measure lists the processes that are consuming the memory utilized by the container.

Disk usage

Indicates the amount of disk space utilized by this container.

MB

Compare the value of this measure across containers to figure out the container that is using maximum amount of disk space.

Total inodes

Indicates the total number of iNodes in this container.

Number