Skip to content

Commit

Permalink
balloons: handle built-in and user-defined balloons more similarly
Browse files Browse the repository at this point in the history
- Built-in "reserved" and "default" balloon types are no longer
  special cases. They can be configured with the same parameters as
  user-defined balloons. Before this change their configuration was
  limited to few parameters.

- The reserved balloon inflates and deflates if required by containers
  and allowed by minCPUs and maxCPUs.

- Default balloons (which can be numerous now) never share CPUs with
  the reserved balloon.

- Overcommitting reserved CPU resources is no more possible. Creating
  reserved containers will fail if there are not enough CPUs in the
  reserved balloon.

- Explicit ReservedResources cpuset no more defines exactly the CPUs
  allocated to the reserved balloon. Instead, they are strongly
  preferred for that purpose. This happens implicitly through the same
  mechanism as explicit preferCloseToDevices.

- Fixes: AllocatorPriority did not have proper effect. Now it enables
  high-priority user-defined balloons to allocate CPUs even before the
  reserved balloon.

- Fixes: AvailableResources and ReservedResources had effect only when
  the policy was started, but not on reconfiguration. Now they can be
  changed in reconfiguration.

Signed-off-by: Antti Kervinen <[email protected]>
  • Loading branch information
askervin authored and klihub committed Feb 13, 2024
1 parent 80668ba commit 0f94537
Show file tree
Hide file tree
Showing 4 changed files with 278 additions and 288 deletions.
Loading

0 comments on commit 0f94537

Please sign in to comment.