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
Reviews during the implementation of this KEP highlightd
that current description in the KEP is too terse and too light
on description. This PR fixes this.
Signed-off-by: Francesco Romani <[email protected]>
Copy file name to clipboardExpand all lines: keps/sig-node/2043-pod-resource-concrete-assigments/README.md
+9-1Lines changed: 9 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -113,8 +113,9 @@ This gRPC service returns information about
113
113
- the devices which kubelet knows about from the device plugins.
114
114
- the kubelet's assignment of devices and cpus with NUMA id to containers.
115
115
The GRPC service obtains this information from the internal state of the kubelet's Device Manager and CPU Manager respectively.
116
-
The GRPC Service exposes two endpoints:
116
+
The GRPC Service exposes these endpoints:
117
117
-`List`, which returns a single PodResourcesResponse, enabling monitor applications to poll for resources allocated to pods and containers on the node.
118
+
-`GetAllocatableResources`, which returns AllocatableResourcesResponse, enabling monitor applications to learn about the the allocatable resources available on the node.
118
119
-`Watch`, which returns a stream of PodResourcesResponse, enabling monitor applications to be notified of new resource allocation, release or resource allocation updates, using the `action` field in the response.
119
120
120
121
This is shown in proto below:
@@ -236,6 +237,13 @@ Consider the following scenario with 10 devices, all allocated: pod A with devic
236
237
pod B starts and gets device D1 again. In this case `Watch` will guarantee that `DELETE` and `ADDED` events are delivered
237
238
in the correct order.
238
239
240
+
To properly evaluate the amount of allocatable compute resources on a node, client applications can use the `GetAlloctableResources` endpoint.
241
+
Applications can use `List` and `Watch` to learn about the current allocation of these resources, and thus the current amount of free (unallocated)
242
+
compute resources.
243
+
Applications are expected to run `GetAlloctableResources` each time they expect a change in the resources
244
+
availability (e.g. CPUs onlined/offlined, devices added/removed). We anticipate these changes to happen very rarely.
245
+
Client applications should not expect any ordering in the return value.
246
+
239
247
### Test Plan
240
248
241
249
Given that the API allows observing what device has been associated to what container, we need to be testing different configurations, such as:
0 commit comments