You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/cnf-provisioning-real-time-and-low-latency-workloads.adoc
+55-16Lines changed: 55 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,36 +34,75 @@ Establishing the right performance expectations refers to the fact that the real
34
34
== Provisioning a worker with real-time capabilities
35
35
36
36
. Install Performance Addon Operator to the cluster.
37
+
37
38
. Optional: Add a node to the {product-title} cluster.
38
39
See link:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_for_real_time/8/html-single/tuning_guide/index#Setting_BIOS_parameters[Setting BIOS parameters].
39
-
. Optional: Create a new machine config pool for real-time nodes.
40
-
. Add the node to the proper machine config pool, using node role labels.
41
-
+
42
-
You must decide which nodes will be configured with real-time workloads. It could be all of the nodes in the cluster or a subset of the nodes. The Performance Addon Operator expects all of the nodes are part of a dedicated machine config pool. If you use all of the nodes, you just point the Performance Addon Operator to the worker node role label. If you use a subset, you must group the nodes into a new machine config pool.
43
40
44
-
. Create the `PerformanceProfile` with the proper set of housekeeping cores and `realTimeKernel: enabled: true`.
41
+
. Add the label `worker-rt` to the worker nodes that require the real-time capability by using the `oc` command.
45
42
46
-
. Specify a node selector in the `PerformanceProfile`, as shown here:
43
+
. Create a new machine config pool for real-time nodes:
47
44
+
48
45
[source,yaml]
49
46
----
50
-
apiVersion: performance.openshift.io/v2
51
-
kind: PerformanceProfile
47
+
apiVersion: machineconfiguration.openshift.io/v1
48
+
kind: MachineConfigPool
52
49
metadata:
53
-
name: example-performanceprofile
50
+
name: worker-rt
51
+
labels:
52
+
machineconfiguration.openshift.io/role: worker-rt
54
53
spec:
55
-
...
56
-
realTimeKernel:
57
-
enabled: true
54
+
machineConfigSelector:
55
+
matchExpressions:
56
+
- {
57
+
key: machineconfiguration.openshift.io/role,
58
+
operator: In,
59
+
values: [worker, worker-rt],
60
+
}
61
+
paused: false
58
62
nodeSelector:
59
-
node-role.kubernetes.io/worker-rt: ""
63
+
matchLabels:
64
+
node-role.kubernetes.io/worker-rt: ""
60
65
----
66
+
Note that a machine config pool worker-rt is created for group of nodes that have the label `worker-rt`.
67
+
68
+
. Add the node to the proper machine config pool by using node role labels.
69
+
+
70
+
[NOTE]
71
+
====
72
+
You must decide which nodes are configured with real-time workloads. You could configure all of the nodes in the cluster, or a subset of the nodes. The Performance Addon Operator that expects all of the nodes are part of a dedicated machine config pool. If you use all of the nodes, you must point the Performance Addon Operator to the worker node role label. If you use a subset, you must group the nodes into a new machine config pool.
73
+
====
74
+
. Create the `PerformanceProfile` with the proper set of housekeeping cores and `realTimeKernel: enabled: true`.
61
75
76
+
. You must set `machineConfigPoolSelector` in `PerformanceProfile`:
77
+
+
78
+
[source,yaml]
79
+
----
80
+
apiVersion: performance.openshift.io/v2
81
+
kind: PerformanceProfile
82
+
metadata:
83
+
name: example-performanceprofile
84
+
spec:
85
+
...
86
+
realTimeKernel:
87
+
enabled: true
88
+
nodeSelector:
89
+
node-role.kubernetes.io/worker-rt: ""
90
+
machineConfigPoolSelector:
91
+
machineconfiguration.openshift.io/role: worker-rt
92
+
----
62
93
. Verify that a matching machine config pool exists with a label:
. {product-title} will start configuring the nodes, which might involve multiple reboots. Wait for the nodes to settle. This can take a long time depending on the specific hardware you use, but 20 minutes per node is expected.
@@ -87,7 +126,7 @@ Note the worker with the role `worker-rt` that contains the string `4.18.0-211.r
0 commit comments