Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

agent, resmgr: add support for topology hints based on Pod Resource API #417

Closed
wants to merge 7 commits into from

Conversation

klihub
Copy link
Collaborator

@klihub klihub commented Nov 30, 2024

Notes: This PR is currently marked a draft, as it is still missing updates to the documentation...

This patch series add support for generating topology hints based on pod- and container-specific resource data acquired from the kubelet's Pod Resource API. In particular this PR

  • adds a low-level Pod Resource API client to the agent
  • adds agent configuration snippets to config CRs to allow enabling/disabling Pod Resource API support
  • exposes synchronous and asynchronous Pod Resource queries via the agent to the resource manager
  • if enabled, fetches pod resource data during initial sync and pod creation
  • if enabled, generates extra topology hints based on pod resource container data

@klihub klihub marked this pull request as draft November 30, 2024 18:44
Add initial support for querying the kubelet pod resource
API for extra information about resources (and devices in
particular) assigned to pods and containers.

Signed-off-by: Krisztian Litkey <[email protected]>
Add configuration for the agent itself, with controls for
access to Pod Resource API and Node Resource Topology CRs.
The latter is on by default while the former is off.

Signed-off-by: Krisztian Litkey <[email protected]>
Hook in Pod Resource API client to agent. Add functions for
listing pod resources and querying a single pod's resources,
both synchronously and asynchronously.

Signed-off-by: Krisztian Litkey <[email protected]>
Try querying Pod Resource API and generate extra topology
hints using container device assignments listed there.

Signed-off-by: Krisztian Litkey <[email protected]>
Add functions for resolving partial, NUMA-only topology
hints to fully defined CPU-specific ones using a sysfs
instance.

Signed-off-by: Krisztian Litkey <[email protected]>
Resolve potential partial NUMA-only topology hints to full
CPU hints.

Signed-off-by: Krisztian Litkey <[email protected]>
Signed-off-by: Krisztian Litkey <[email protected]>
@klihub klihub force-pushed the devel/pod-resource-api branch from 9ee0de3 to a0717cc Compare November 30, 2024 18:58
@klihub
Copy link
Collaborator Author

klihub commented Dec 1, 2024

Closing in favor of equivalent split/stacked PR #418, #419, #420.

@klihub klihub closed this Dec 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant