Bug 1775826 - kubelet needs --reserved-cpus to have fine control over isolation of system resources vs static-cpu pods
Summary: kubelet needs --reserved-cpus to have fine control over isolation of system r...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Node
Version: 4.3.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: 4.3.0
Assignee: Ryan Phillips
QA Contact: Weinan Liu
URL:
Whiteboard:
Depends On:
Blocks: 1771572 1779348 1779857 1782893
TreeView+ depends on / blocked
 
Reported: 2019-11-22 21:54 UTC by Andrew Theurer
Modified: 2020-02-09 11:24 UTC (History)
15 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1779857 (view as bug list)
Environment:
Last Closed: 2020-01-23 11:13:48 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift origin pull 24224 0 'None' closed Bug 1775826: [release-4.3] UPSTREAM: drop 83592: added --reserved-cpus kubelet command option 2020-12-03 11:47:46 UTC
Red Hat Product Errata RHBA-2020:0062 0 None None None 2020-01-23 11:14:20 UTC

Description Andrew Theurer 2019-11-22 21:54:33 UTC
Description of problem:

Currently kubeReserved and systemReserved values affect how kubelet sets aside CPUs to not allocate from for static-cpu-manager pods.  These cpus are not under the direct control of the user and may not be predictable which CPUs are used.  Documentation suggests that these CPUs start with 0 and are allocated incrementally, but our observations are that they follow a pattern of 0, 2, etc.

Different systems have different CPU enumeration and may not work well with the assumptions kubelet may make for reserving these CPUs.  We would like to ensure the feature recently merged upstream, --reserved-cpus, is included in OCP as soon as possible.  This provides the administrator the ability to specify exactly which CPUs are not used for static-cpu pods, and then this can be closely coordinated with system tuning options, using those [and only those] CPUs for system tasks.

Comment 1 Maciej Szulik 2019-11-25 08:30:36 UTC
This looks like RFE against kubelet, I'm moving to node team, but I think this should rather be filled in as a RFE.

Comment 3 Martin Sivák 2019-11-25 09:11:19 UTC
The backport was already proposed in https://github.com/kubernetes/kubernetes/pull/83592

Comment 4 Martin Sivák 2019-11-25 09:15:20 UTC
Ah sorry, that was the original patch. I need to check with Vladik who played with this about where his backport PR is.

Comment 5 Vladik Romanovsky 2019-11-26 19:17:50 UTC
I've opened a PR to backport the upstream 83592 to Openshift 4.3: https://github.com/openshift/origin/pull/24224
However, I'm not sure if I'm following the right process here.
Please push me in the right direction if I'm doing something wrong.

Thanks,
Vladik

Comment 15 errata-xmlrpc 2020-01-23 11:13:48 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:0062


Note You need to log in before you can comment on or make changes to this bug.