Uploaded image for project: 'OpenShift Container Platform (OCP) Strategy'
  1. OpenShift Container Platform (OCP) Strategy
  2. OCPSTRAT-1145

Extend workload partitioning to support cpu limits

XMLWordPrintable

    • BU Product Work
    • False
    • Hide

      None

      Show
      None
    • False
    • 50% To Do, 0% In Progress, 50% Done
    • M
    • 0
    • Program Call

      Feature Overview (aka. Goal Summary)  

      An elevator pitch (value statement) that describes the Feature in a clear, concise way.  Complete during New status.

      Workload partitioning currently does not support mutating containers that have cpu limits.  That  can cause platform/control plane components  use the wrong core budget (application instead of platform). 

      Goals (aka. expected user outcomes)

      Apply the workload paritioning also for containers that have cpu limits.

      Requirements (aka. Acceptance Criteria):

      1) Add another annotation to the crio drop in to represent the limit, "cpuquota"

      [crio.runtime.workloads.management]
      activation_annotation = "target.workload.openshift.io/management"
      annotation_prefix = "resources.workload.openshift.io"
      resources = { "cpushares" = 0,  "cpuquota"=0, "cpuset" = "0-1,52-53" }

      2) Modify the admission plugin to take cpu limits and add a cpuquota annotation. The cpu limits would be stripped. A new annotation or extend the existing one i.e.

      annotations:

          resources.workload.openshift.io/foo: {"cpushares": 20, "cpuquota": 50}

      3) Modify crio to set cfs.quota for the contatiner to the value of cpuquota

       

      Questions to Answer (Optional):

      1. Any consideration needed for upgrades from previous versions?

      Out of Scope

      High-level list of items that are out of scope.  Initial completion during Refinement status.

      n/a

      Background

      The original premise was that all ocp pods did not set limits, however it has been found that at least one klusteret containers does set limits. This will be worked around in 4.8 but in 4.9 a proper solution is required to deal with these exceptions. In addition, the desire in the future is to support different workload types which would require limit support. 

      Customer Considerations

      Requested by telco customers

       

      Documentation Considerations

      No docs changed expected

      Interoperability Considerations

      No impact on other projects expected

              dfroehli42rh Daniel Fröhlich
              dfroehli42rh Daniel Fröhlich
              Chad Scribner
              Egli Hila Egli Hila
              Sunil Choudhary Sunil Choudhary
              Donagh Brennan Donagh Brennan
              Jeremy Peterson Jeremy Peterson
              Egli Hila Egli Hila
              Daniel Fröhlich Daniel Fröhlich
              Eric Rich Eric Rich
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: