Skip to content

Commit 656d759

Browse files
authored
Merge pull request #22663 from vpickard/topology-manager-4.5
Update Topology Manager doc for 4.5
2 parents 3b92240 + 78c81b0 commit 656d759

File tree

3 files changed

+56
-36
lines changed

3 files changed

+56
-36
lines changed

modules/setting-up-topology-manager.adoc

Lines changed: 38 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,45 @@
1616
# oc edit featuregate/cluster
1717
----
1818

19-
. Add Feature Set: LatencySensitive to the spec:
19+
. Add featureSet: LatencySensitive to the spec:
2020
+
2121
----
22-
# oc describe featuregate/cluster
22+
# oc get featuregate/cluster -o yaml
23+
apiVersion: config.openshift.io/v1
24+
kind: FeatureGate
25+
metadata:
26+
annotations:
27+
release.openshift.io/create-only: "true"
28+
creationTimestamp: 2020-06-05T14:41:09Z
29+
generation: 2
30+
managedFields:
31+
- apiVersion: config.openshift.io/v1
32+
fieldsType: FieldsV1
33+
fieldsV1:
34+
f:metadata:
35+
f:annotations:
36+
.: {}
37+
f:release.openshift.io/create-only: {}
38+
f:spec: {}
39+
manager: cluster-version-operator
40+
operation: Update
41+
time: 2020-06-05T14:41:09Z
42+
- apiVersion: config.openshift.io/v1
43+
fieldsType: FieldsV1
44+
fieldsV1:
45+
f:spec:
46+
f:featureSet: {}
47+
manager: oc
48+
operation: Update
49+
time: 2020-06-05T15:21:44Z
50+
name: cluster
51+
resourceVersion: "28457"
52+
selfLink: /apis/config.openshift.io/v1/featuregates/cluster
53+
uid: e802e840-89ee-4137-a7e5-ca15fd2806f8
54+
spec:
55+
featureSet: LatencySensitive
56+
2357
24-
Name: cluster
25-
Namespace:
26-
Labels: <none>
27-
Annotations: release.openshift.io/create-only: true
28-
API Version: config.openshift.io/v1
29-
Kind: FeatureGate
30-
Metadata:
31-
Creation Timestamp: 2019-10-30T15:06:41Z
32-
Generation: 2
33-
Resource Version: 7773803
34-
Self Link: /apis/config.openshift.io/v1/featuregates/cluster
35-
UID: b00204ab-cc5e-4ca5-ad93-b9bdd738c1de
36-
Spec:
37-
Feature Set: LatencySensitive
38-
Events: <none>
3958
----
4059

4160
. Configure the Topology Manager policy with KubeletConfig.
@@ -57,7 +76,8 @@ spec:
5776
cpuManagerReconcilePeriod: 5s
5877
topologyManagerPolicy: single-numa-node <1>
5978
----
60-
<1> Specify your selected Topology Manager policy.
79+
<1> Specify your selected Topology Manager policy. Here, the policy is single-numa-node.
80+
Acceptable values are: default, best-effort, restricted, single-numa-node
6181
+
6282
----
6383
# oc create -f topologymanager-kubeletconfig.yaml

modules/topology-manager-policies.adoc

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@
55
[id="topology_manager_policies_{context}"]
66
= Topology Manager policies
77

8-
Topology Manager works on Nodes and Pods that meet the following conditions:
8+
Topology Manager currently aligns Pod resources of all QoS classes. Topology Manager
9+
collects topology hints from Hint Providers (CPU Manager, Device Manager, etc) and uses
10+
these collected hints to align the Pod resources.
911

10-
* The Node's CPU Manager Policy is configured as `static`.
11-
* The Pods are in the `Guaranteed` QoS class.
12-
13-
When the above conditions are met, Topology Manager will align CPU
14-
and device requests for the Pod.
12+
====
13+
Note: To align CPU resources with other requested resources in a Pod Spec, the CPU
14+
Manager should be enabled and the CPU Manager policy should be configured as `static`.
15+
====
1516

1617
Topology Manager supports 4 allocation policies. These policies are set via a Kubelet
1718
flag, `--topology-manager-policy`. The policies are:
@@ -30,17 +31,17 @@ This is the default policy and does not perform any topology alignment.
3031
[id="topology-manager-best-effort-policy_{context}"]
3132
== best-effort policy
3233

33-
For each container in a Guaranteed Pod with the best-effort topology
34-
management policy, kublet calls each Hint Provider to discover their resource
34+
For each container in a Pod with the best-effort topology
35+
management policy, kubelet calls each Hint Provider to discover their resource
3536
availability. Using this information, the Topology Manager stores the
3637
preferred NUMA Node affinity for that container. If the affinity is not
3738
preferred, Topology Manager will store this and admit the pod to the node anyway.
3839

3940
[id="topology-manager-restricted-policy_{context}"]
4041
== restricted policy
4142

42-
For each container in a Guaranteed Pod with the restricted topology
43-
management policy, kublet calls each Hint Provider to discover their resource
43+
For each container in a Pod with the restricted topology
44+
management policy, kubelet calls each Hint Provider to discover their resource
4445
availability. Using this information, the Topology Manager stores the
4546
preferred NUMA Node affinity for that container. If the affinity is not
4647
preferred, Topology Manager will reject this pod from the node. This will
@@ -49,8 +50,8 @@ result in a pod in a Terminated state with a pod admission failure.
4950
[id="topology-manager-single-numa-node_{context}"]
5051
== single-numa-node
5152

52-
For each container in a Guaranteed Pod with the single-numa-node topology
53-
management policy, kublet calls each Hint Provider to discover their resource availability.
53+
For each container in a Pod with the single-numa-node topology
54+
management policy, kubelet calls each Hint Provider to discover their resource availability.
5455
Using this information, the Topology Manager determines if a single NUMA Node
5556
affinity is possible. If it is, the pod will be admitted to the node.
5657
If this is not possible then the Topology Manager will reject the pod

scalability_and_performance/using-topology-manager.adoc

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,18 @@ include::modules/common-attributes.adoc[]
55

66
toc::[]
77

8-
Topology Manager is a Kubelet component that collects hints from CPU Manager
9-
and Device Manager to align pod CPU and device resources on the same non-uniform memory access (NUMA) node.
8+
Topology Manager is a Kubelet component that collects hints from CPU Manager,
9+
Device Manager, and other Hint Providers to align pod resources (such as CPU, SR-IOV VFs,
10+
and other device resources) for all QoS classes on the same non-uniform memory access
11+
(NUMA) node.
1012

1113
Topology Manager uses topology information from collected hints to decide if
12-
the pod can be accepted or rejected from the node, based on the configured Topology
14+
the pod can be accepted or rejected on the node, based on the configured Topology
1315
Manager policy and Pod resources requested.
1416

1517
Topology Manager is useful for workloads that desire to use hardware accelerators
1618
to support latency-critical execution and high throughput parallel computation.
1719

18-
[NOTE]
19-
====
20-
Topology Manager is an alpha feature in {product-title}.
2120
====
2221
2322
include::modules/setting-up-topology-manager.adoc[leveloffset=+1]

0 commit comments

Comments
 (0)