-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
4.16
-
None
-
Quality / Stability / Reliability
-
False
-
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Description of problem:
SLCM latency tests fail when using the PerformanceProfile recommended for tier-1 partner in the Blueprint document. The profile is missing a required kubelet configuration for enabling certain sysctls, which are necessary for the latency tests to pass.
Version-Release number of selected component (if applicable):
OpenShift version: 4.16
How reproducible:
Always
Steps to Reproduce:
Deploy a Single Node OpenShift (SNO) using the following PerformanceProfile: yamlCopyEditkind: PerformanceProfile apiVersion: "performance.openshift.io/v2" metadata: name: sno-perf-profile spec: cpu: isolated: "2-55,58-111" reserved: "0,1,56,57" hugepages: pages: - size: "1G" count: 52 node: 0 - size: "1G" count: 52 node: 1 numa: topologyPolicy: restricted realTimeKernel: enabled: true workloadHints: highPowerConsumption: false perPodPowerManagement: false realTime: true nodeSelector: node-role.kubernetes.io/master: "" machineConfigPoolSelector: pools.operator.machineconfiguration.openshift.io/master: "" Run SLCM latency test suite as defined. Observe that the latency tests fail due to missing sysctl configuration.
Actual results:
Latency tests fail with the default profile provided in the Blueprint.
Expected results:
All latency tests should pass when using the Blueprint-recommended PerformanceProfile.
Additional info:
# Fix: Add the following annotation to the PerformanceProfile to allow TCP socket reuse for pods on nodes with isolated CPUs: annotations: kubeletconfig.experimental: | {"allowedUnsafeSysctls":["net.ipv4.tcp_tw_reuse"]}