Skip to content

Commit b81a2f4

Browse files
author
Padraig O'Grady
committed
TELCODOCS-1990: Docfooding feedback #1 applied
TELCODOCS-1990: Docfooding feedback #2 applied TELCODOCS-1990: Docfooding feedback #3 applied TELCODOCS-1990: Docfooding feedback #4 applied TELCODOCS-1990: Docfooding feedback #5 applied TELCODOCS-1990: Docfooding feedback #6 applied TELCODOCS-1990: Docfooding feedback #7 applied TELCODOCS-1990: Docfooding feedback #8 applied TELCODOCS-1990: Docfooding feedback #9 applied TELCODOCS-1990: Docfooding feedback #10 applied TELCODOCS-1990: Docfooding feedback #11 applied TELCODOCS-1990: Peer review feedback applied TELCODOCS-1990: Dev review feedback applied TELCODOCS-1990: Dev/Peer review feedback applied TELCODOCS-1990: Dev/Peer #2 review feedback applied TELCODOCS-1990: Dev #2 review feedback applied TELCODOCS-1990: Peer review squad feedback applied
1 parent 3f9c013 commit b81a2f4

5 files changed

+33
-44
lines changed

modules/cnf-performing-end-to-end-tests-running-cyclictest.adoc

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,12 @@ The `cyclictest` tool measures the real-time kernel scheduler latency on the spe
1515

1616
[NOTE]
1717
====
18-
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. To make the `podman` command work, append `:Z` to the volumes creation; for example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
18+
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. Depending on your local operating system and SELinux configuration, you might also experience issues running these commands from your home directory. To make the `podman` commands work, run the commands from a folder that is not your home/<username> directory, and append `:Z` to the volumes creation. For example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
1919
====
2020

2121
.Prerequisites
2222

23-
* You have logged in to `registry.redhat.io` with your Customer Portal credentials.
24-
25-
* You have installed the real-time kernel in the cluster.
26-
27-
* You have applied a cluster performance profile by using Node Tuning Operator.
23+
* You have reviewed the prerequisites for running latency tests.
2824
2925
.Procedure
3026

@@ -45,7 +41,7 @@ If the results exceed the latency threshold, the test fails.
4541
+
4642
[IMPORTANT]
4743
====
48-
For valid results, the test should run for at least 12 hours.
44+
During testing shorter time periods, as shown, can be used to run the tests. However, for final verification and valid results, the test should run for at least 12 hours (43200 seconds).
4945
====
5046
+
5147
.Example failure output

modules/cnf-performing-end-to-end-tests-running-hwlatdetect.adoc

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,12 @@ The `hwlatdetect` tool is available in the `rt-kernel` package with a regular su
1515

1616
[NOTE]
1717
====
18-
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. To make the `podman` command work, append `:Z` to the volumes creation; for example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
18+
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. Depending on your local operating system and SELinux configuration, you might also experience issues running these commands from your home directory. To make the `podman` commands work, run the commands from a folder that is not your home/<username> directory, and append `:Z` to the volumes creation. For example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
1919
====
2020

2121
.Prerequisites
2222

23-
* You have installed the real-time kernel in the cluster.
24-
25-
* You have logged in to `registry.redhat.io` with your Customer Portal credentials.
23+
* You have reviewed the prerequisites for running latency tests.
2624
2725
.Procedure
2826

@@ -43,7 +41,7 @@ If the results exceed the latency threshold, the test fails.
4341
+
4442
[IMPORTANT]
4543
====
46-
For valid results, the test should run for at least 12 hours.
44+
During testing shorter time periods, as shown, can be used to run the tests. However, for final verification and valid results, the test should run for at least 12 hours (43200 seconds).
4745
====
4846
+
4947
.Example failure output

modules/cnf-performing-end-to-end-tests-running-oslat.adoc

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,12 @@ The `oslat` test simulates a CPU-intensive DPDK application and measures all the
1515

1616
[NOTE]
1717
====
18-
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. To make the `podman` command work, append `:Z` to the volumes creation; for example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
18+
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. Depending on your local operating system and SELinux configuration, you might also experience issues running these commands from your home directory. To make the `podman` commands work, run the commands from a folder that is not your home/<username> directory, and append `:Z` to the volumes creation. For example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
1919
====
2020

2121
.Prerequisites
2222

23-
* You have logged in to `registry.redhat.io` with your Customer Portal credentials.
24-
* You have applied a cluster performance profile by using the Node Tuning Operator.
23+
* You have reviewed the prerequisites for running latency tests.
2524
2625
.Procedure
2726

@@ -44,7 +43,7 @@ If the results exceed the latency threshold, the test fails.
4443
+
4544
[IMPORTANT]
4645
====
47-
For valid results, the test should run for at least 12 hours.
46+
During testing shorter time periods, as shown, can be used to run the tests. However, for final verification and valid results, the test should run for at least 12 hours (43200 seconds).
4847
====
4948
+
5049
.Example failure output

modules/cnf-performing-end-to-end-tests-running-the-tests.adoc

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -15,46 +15,44 @@ Run the cluster latency tests to validate node tuning for your Cloud-native Netw
1515

1616
[NOTE]
1717
====
18-
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. To make the `podman` command work, append `:Z` to the volumes creation; for example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
18+
When executing `podman` commands as a non-root or non-privileged user, mounting paths can fail with `permission denied` errors. Depending on your local operating system and SELinux configuration, you might also experience issues running these commands from your home directory. To make the `podman` commands work, run the commands from a folder that is not your home/<username> directory, and append `:Z` to the volumes creation. For example, `-v $(pwd)/:/kubeconfig:Z`. This allows `podman` to do the proper SELinux relabeling.
1919
====
2020

21+
This procedure runs the three individual tests `hwlatdetect`, `cyclictest`, and `oslat`. For details on these individual tests, see their individual sections.
22+
2123
.Procedure
2224

2325
. Open a shell prompt in the directory containing the `kubeconfig` file.
2426
+
25-
You provide the test image with a `kubeconfig` file in current directory and its related `$KUBECONFIG` environment variable, mounted through a volume. This allows the running container to use the `kubeconfig` file from inside the container.
26-
27-
. Run the latency tests by entering the following command:
27+
You provide the test image with a `kubeconfig` file in current directory and its related `$KUBECONFIG` environment variable, mounted through a volume. This allows the running container to use the `kubeconfig` file from inside the container.
2828
+
29-
[source,terminal,subs="attributes+"]
30-
----
31-
$ podman run -v $(pwd)/:/kubeconfig:Z -e KUBECONFIG=/kubeconfig/kubeconfig \
32-
-e LATENCY_TEST_RUN=true -e DISCOVERY_MODE=true -e FEATURES=performance registry.redhat.io/openshift4/cnf-tests-rhel8:v{product-version} \
33-
/usr/bin/test-run.sh -ginkgo.focus="\[performance\]\ Latency\ Test" --ginkgo.timeout="24h"
34-
----
35-
36-
. Optional: Append `-ginkgo.dryRun` to run the latency tests in dry-run mode. This is useful for checking what the tests run.
37-
38-
. Optional: Append `-ginkgo.v` to run the tests with increased verbosity.
39-
40-
. Optional: To run the latency tests against a specific performance profile, run the following command, substituting appropriate values:
29+
[NOTE]
30+
====
31+
In the following command, your local `kubeconfig` is mounted to kubeconfig/kubeconfig in the cnf-tests container, which allows access to the cluster.
32+
====
33+
+
34+
. To run the latency tests, run the following command, substituting variable values as appropriate:
4135
+
4236
[source,terminal,subs="attributes+"]
4337
----
4438
$ podman run -v $(pwd)/:/kubeconfig:Z -e KUBECONFIG=/kubeconfig/kubeconfig \
45-
-e LATENCY_TEST_RUN=true -e FEATURES=performance -e LATENCY_TEST_RUNTIME=600 -e MAXIMUM_LATENCY=20 \
46-
-e PERF_TEST_PROFILE=<performance_profile> registry.redhat.io/openshift4/cnf-tests-rhel8:v{product-version} \
47-
/usr/bin/test-run.sh -ginkgo.focus="[performance]\ Latency\ Test"
39+
-e LATENCY_TEST_RUNTIME=600\
40+
-e MAXIMUM_LATENCY=20 \
41+
registry.redhat.io/openshift4/cnf-tests-rhel8:v{product-version} /usr/bin/test-run.sh \
42+
--ginkgo.v --ginkgo.timeout="24h"
4843
----
4944
+
50-
where:
45+
The LATENCY_TEST_RUNTIME is shown in seconds, in this case 600 seconds (10 minutes). The test runs successfully when the maximum observed latency is lower than MAXIMUM_LATENCY (20 μs).
46+
+
47+
If the results exceed the latency threshold, the test fails.
5148
+
52-
--
53-
<performance_profile> :: Is the name of the performance profile you want to run the latency tests against.
54-
--
49+
. Optional: Append `--ginkgo.dry-run` flag to run the latency tests in dry-run mode. This is useful for checking what commands the tests run.
50+
51+
. Optional: Append `-ginkgo.v` flag to run the tests with increased verbosity.
52+
5553
. Optional: Append `--ginkgo.timeout="24h"` flag to ensure the Ginkgo 2.0 test suite does not timeout before the latency tests complete.
5654
+
5755
[IMPORTANT]
5856
====
59-
For valid latency test results, run the tests for at least 12 hours.
57+
During testing shorter time periods, as shown, can be used to run the tests. However, for final verification and valid results, the test should run for at least 12 hours (43200 seconds).
6058
====

scalability_and_performance/low_latency_tuning/cnf-performing-platform-verification-latency-tests.adoc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,9 @@ The `cnf-tests` image also includes several tests that are not supported by Red
2020

2121
Your cluster must meet the following requirements before you can run the latency tests:
2222

23-
. You have configured a performance profile with the Node Tuning Operator.
23+
* You have applied all the required CNF configurations. This includes the `PerformanceProfile` cluster and other configuration according to the reference design specifications (RDS) or your specific requirements.
2424

25-
. You have applied all the required CNF configurations in the cluster.
26-
27-
. You have a pre-existing `MachineConfigPool` CR applied in the cluster. The default worker pool is `worker-cnf`.
25+
* You have logged in to `registry.redhat.io` with your Customer Portal credentials by using the `podman login` command.
2826

2927
[role="_additional-resources"]
3028
.Additional resources

0 commit comments

Comments
 (0)